[613] | 1 | SD5360PT ;ALB/REW - SD*5.3*60 Post-installation ; 10-DEC-1996
|
---|
| 2 | ;;5.3;Scheduling;**60,132**;SEP 25, 1993
|
---|
| 3 | ;
|
---|
| 4 | EN ;entry point
|
---|
| 5 | ;search TRANSMITTED OUTPATIENT ENCOUNTER ERROR file (#409.75) to find
|
---|
| 6 | ;rejected encounters of type #510 -'Diagnosis Priority is not 1 or null
|
---|
| 7 | ;if there is only one diagnosis associated with the encounter, the
|
---|
| 8 | ;diagnosis will be marked as 'primary' in the V POV file
|
---|
| 9 | ; (#9000010.07) and the encounter will be re-transmitted
|
---|
| 10 | ;
|
---|
| 11 | D INTRO
|
---|
| 12 | D SEARCH
|
---|
| 13 | D EXIT
|
---|
| 14 | Q
|
---|
| 15 | ;
|
---|
| 16 | INTRO ;header info for output
|
---|
| 17 | D MES^XPDUTL(">>>Searching TRANSMITTED OUTPATIENT ENCOUNTER ERROR File (#409.75)")
|
---|
| 18 | D MES^XPDUTL(" for error code=510 (Diagnosis Priority is not '1' or null.)")
|
---|
| 19 | D MES^XPDUTL(" All such encounters will be displayed.")
|
---|
| 20 | D BMES^XPDUTL(" If there is exactly one DX for an encounter, it will be marked as primary")
|
---|
| 21 | D MES^XPDUTL(" and the encounter marked for nightly transmission to Austin (NPCDB).")
|
---|
| 22 | D MES^XPDUTL("")
|
---|
| 23 | Q
|
---|
| 24 | SEARCH ;look for TRANSMITTED OUTPATIENT ENCOUNTER ENTRIES with error code 510
|
---|
| 25 | ; SC40975 = ien of TRANSMITTED OUTPATIENT ENCOUNTER ERROR (#409.75)
|
---|
| 26 | ; SC40943 = ien of OUTPATIENT DIAGNOSIS (#409.43)
|
---|
| 27 | ; SCNODE = zero node of #409.75
|
---|
| 28 | ; SCENODE = zero node of #409.68
|
---|
| 29 | ; SCPTR = ptr value for error code for value of '510'
|
---|
| 30 | N SCE,SCNONE,SC40975,SCNODE,SCPTR,SC40973
|
---|
| 31 | S SCNONE=1
|
---|
| 32 | S SCPTR=$O(^SD(409.76,"B","510",0))
|
---|
| 33 | IF 'SCPTR D Q
|
---|
| 34 | .D BMES^XPDUTL(">>> Missing Cross-Reference for code 510 in file 409.76. Aborting")
|
---|
| 35 | S SC40975=0
|
---|
| 36 | F S SC40975=$O(^SD(409.75,SC40975)) Q:'SC40975 S SCNODE=$G(^(SC40975,0)) D
|
---|
| 37 | .N SCDXDX,SC40943,SCENODE,SCDATE,Y
|
---|
| 38 | .Q:$P(SCNODE,U,2)'=SCPTR ;must be #510 error
|
---|
| 39 | .S SCE=$P($G(^SD(409.73,+$P(SCNODE,U,1),0)),U,2) ;null or 409.68 ptr
|
---|
| 40 | .;quit if a deleted encounter
|
---|
| 41 | .Q:'SCE
|
---|
| 42 | .S SCENODE=$G(^SCE(SCE,0))
|
---|
| 43 | .IF ('$P(SCENODE,U,1))!('$P(SCENODE,U,2)) D Q
|
---|
| 44 | ..D BMES^XPDUTL(" File #409.68 ien: "_SCE_" Corrupt/Missing")
|
---|
| 45 | ..D MES^XPDUTL(" File #409.68 zero node: "_SCENODE)
|
---|
| 46 | .S Y=+SCENODE D DD^%DT S SCDATE=Y
|
---|
| 47 | .S SCNONE=0
|
---|
| 48 | .D MES^XPDUTL(" File #409.68 ien: "_SCE_" "_$P(^DPT($P(SCENODE,U,2),0),U,1)_" "_SCDATE)
|
---|
| 49 | .D DIAG^SCDXUTL1(SCE,"SCDXDX")
|
---|
| 50 | .S SC40943=0
|
---|
| 51 | .S SC40943=$O(SCDXDX(0))
|
---|
| 52 | .IF $$PRIMPDX^SCDXUTL1(SCE)>0 D Q
|
---|
| 53 | ..D MES^XPDUTL(" ..Encounter has already been changed to have a primary dx")
|
---|
| 54 | .IF 'SC40943 D Q
|
---|
| 55 | ..D MES^XPDUTL(" ..No diagnosis for this encounter")
|
---|
| 56 | .IF $O(SCDXDX(SC40943)) D Q
|
---|
| 57 | ..D MES^XPDUTL(" ..Multiple diagnoses - can't know which is primary dx")
|
---|
| 58 | .D MES^XPDUTL(" ..Making DX Primary DX & Resetting Transmission Flag")
|
---|
| 59 | .Q:$G(SCTEST) ;put in to allow test sites to first run as diagnostic
|
---|
| 60 | .D PDX^PXAPIOE(SC40943,"P") ;update outpatient diagnosis to be primary for enc
|
---|
| 61 | .S SC40973=$$FINDXMIT^SCDXFU01(SCE) ;ptr to 409.73
|
---|
| 62 | .D XMITFLAG^SCDXFU01(SC40973,0) ;resets transmission flag to yes
|
---|
| 63 | D:SCNONE BMES^XPDUTL(" ...No errors of this type found")
|
---|
| 64 | Q
|
---|
| 65 | ;
|
---|
| 66 | EXIT ;final cleanup
|
---|
| 67 | IF $L($G(XPDNM)) D
|
---|
| 68 | .D BMES^XPDUTL("This post-install output is saved in the INSTALL File (#9.7)")
|
---|
| 69 | .D MES^XPDUTL("under 'SD*5.3*60'.")
|
---|
| 70 | D BMES^XPDUTL("This post-install routine may be re-run by calling EN^SD5360PT.")
|
---|
| 71 | Q
|
---|