- ACHSDNDP ; IHS/ITSC/TPF/PMF - DENIAL DISPLAY/EDIT ;
- ;;3.1;CONTRACT HEALTH MGMT SYSTEM;**23**;JUN 11, 2001;Build 43
- ;
- TOF ;
- Q:'$D(ACHSA)
- Q:'$D(^ACHSDEN(DUZ(2),"D",ACHSA,0))
- W @IOF
- DSP ; --- Display
- D VIDEO^ACHS
- S:'$D(IORVON) IORVON=""
- S:'$D(IORVOFF) IORVOFF=""
- D HDR,P1
- G:'$D(DUOUT) TOF
- END ;
- Q
- ;
- HDR ;
- S ACHDPAT=$S($$DN^ACHS(0,7):$P($G(^DPT($$DN^ACHS(0,7),0)),U),1:$$DN^ACHS(10,1))
- W IORVON,!?79,!,"CHS DENIAL DISPLAY",?25,"PATIENT: ",$E(ACHDPAT,1,25),?62,"CHART#: "
- I $$DN^ACHS(0,6)="Y",$$DN^ACHS(0,7),$G(^AUPNPAT($$DN^ACHS(0,7),41,DUZ(2),0)) W $P($G(^AUPNPAT($$DN^ACHS(0,7),41,DUZ(2),0)),U,2)
- E W "NONE"
- W !?79,IORVOFF,!,$$REPEAT^XLFSTR("=",79),!
- Q
- ;
- P1 ; --- Display Page 1
- W "DATE ISSUED: ",$$FMTE^XLFDT($$DN^ACHS(0,2))
- W ?45,"ISSUED BY: ",$E($P($G(^VA(200,$$DN^ACHS(0,3),0)),U),1,25)
- W !!,"1. DATE MED SVC: ",IORVON,$$FMTE^XLFDT($$DN^ACHS(0,4)),IORVOFF
- W ?43,"2. DATE OF REQUEST: ",IORVON,$$FMTE^XLFDT($$DN^ACHS(0,5)),IORVOFF
- W !!,"3. MEDICAL PRIORITY: ",IORVON,$P($G(^ACHSMPRI($$DN^ACHS(400,2),0)),U),IORVOFF
- S %=$$DN^ACHS(100,10)
- ;
- W ?43,"4. VISIT TYPE: ",IORVON,$S(%="O":"OUTPATIENT",%="I":"INPATIENT",%="A":"AMBULANCE",%="P":"PATIENT ESCORT",%="D":"DENTAL",1:"UNKNOWN"),IORVOFF
- ;
- W !!,"5.*PRIMARY PROVIDER: ",IORVON,$S($$DN^ACHS(100,1)="Y":$P($G(^AUTTVNDR($$DN^ACHS(100,2),0)),U),1:$$DN^ACHS(100,3)),IORVOFF
- ;ACHS*3.1*23 CHG "ICD 9" TO "ICD" IN NXT LINE AND FIX DISPLAY IF BOTH
- ;W !!,"6.*DIAGNOSIS: ",IORVON,$S($D(^ACHSDEN(DUZ(2),"D",ACHSA,500,0)):"ICD",$D(^ACHSDEN(DUZ(2),"D",ACHSA,700,0)):"CPT",1:"NONE"),IORVOFF
- W !!,"6.*DIAGNOSIS: "
- W IORVON,$S(($D(^ACHSDEN(DUZ(2),"D",ACHSA,500,0))&$D(^ACHSDEN(DUZ(2),"D",ACHSA,700,0))):"ICD/CPT",$D(^ACHSDEN(DUZ(2),"D",ACHSA,500,0)):"ICD",$D(^ACHSDEN(DUZ(2),"D",ACHSA,700,0)):"CPT",1:"NONE"),IORVOFF
- ;
- W !!,"7.*PRIMARY DENIAL REASON: " S %=$$DN^ACHS(250,1) I % W IORVON,$P($G(^ACHSDENS(%,0)),U),IORVOFF
- ;
- W !!,"8.*OTHER RESOURCES: ",IORVON,$S($P($G(^ACHSDEN(DUZ(2),"D",ACHSA,800,0)),U,4):"YES",1:"NONE"),IORVOFF
- ;
- W !!,"9. OTHER IHS RESOURCES: ",IORVON,$S($P($G(^ACHSDEN(DUZ(2),"D",ACHSA,825,0)),U,4):"YES",1:"NONE"),IORVOFF
- ;
- W !!!?15,IORVON,"*",IORVOFF," - CHOOSE THESE FIELDS TO SEE FURTHER INFORMATION",!!,IORVON
- ;
- S %=$$DIR^ACHS("LO^1:9","Enter Number Of Field To Edit or <RETURN> To Accept","","","","")
- ;
- W IORVOFF
- I %="" S DUOUT=""
- Q:$D(DUOUT)!$D(DTOUT)!'%
- D @(+%)
- Q
- ;
- 1 ; --- Date of Service
- I '$$DIE(4) S DUOUT=""
- Q
- ;
- 2 ; --- Date of Request
- I '$$DIE(5) S DUOUT=""
- Q
- ;
- 3 ; --- Medical priority
- I '$$DIE(420) S DUOUT=""
- Q
- ;
- 4 ; --- Service Type
- I '$$DIE(110) S DUOUT=""
- Q
- ;
- 5 ; --- Primary Provider
- D ^ACHSDN3
- Q
- ;
- 6 ; --- Diagnosis
- ;ACHS*3.1*23 DID NOT ALLOW EDIT IF BOTH CPT AND ICD WERE SET
- ;S X=$S($D(^ACHSDEN(DUZ(2),"D",ACHSA,700,0)):700,1:500)
- ;I '$$DIE(X) S DUOUT=""
- F X=500,700 D
- .I $D(^ACHSDEN(DUZ(2),"D",ACHSA,X,0)) I '$$DIE(X) S DUOUT=""
- Q
- ;
- 7 ; --- Denial Reasons
- W !!
- D ^ACHSDN4
- Q
- ;
- 8 ; --- Other Resources
- W !!
- I '$$DIE(800) S DUOUT=""
- Q
- ;
- ;'OTHER IHS RESOURCES'
- 9 ;
- W !!
- I '$$DIE(825) S DUOUT=""
- Q
- ;
- DIE(DR) ; --- Edit appropriate fields in Denial
- W !!
- S DA=ACHSA
- S DA(1)=DUZ(2)
- S DIE="^ACHSDEN("_DUZ(2)_",""D"","
- I '$$LOCK^ACHS("^ACHSDEN(DUZ(2),""D"",ACHSA)","+") Q 0
- D ^DIE
- I '$$LOCK^ACHS("^ACHSDEN(DUZ(2),""D"",ACHSA)","-") Q 0
- Q 1
- ;
- ACHSDNDP ; IHS/ITSC/TPF/PMF - DENIAL DISPLAY/EDIT ;
- +1 ;;3.1;CONTRACT HEALTH MGMT SYSTEM;**23**;JUN 11, 2001;Build 43
- +2 ;
- TOF ;
- +1 IF '$DATA(ACHSA)
- QUIT
- +2 IF '$DATA(^ACHSDEN(DUZ(2),"D",ACHSA,0))
- QUIT
- +3 WRITE @IOF
- DSP ; --- Display
- +1 DO VIDEO^ACHS
- +2 IF '$DATA(IORVON)
- SET IORVON=""
- +3 IF '$DATA(IORVOFF)
- SET IORVOFF=""
- +4 DO HDR
- DO P1
- +5 IF '$DATA(DUOUT)
- GOTO TOF
- END ;
- +1 QUIT
- +2 ;
- HDR ;
- +1 SET ACHDPAT=$SELECT($$DN^ACHS(0,7):$PIECE($GET(^DPT($$DN^ACHS(0,7),0)),U),1:$$DN^ACHS(10,1))
- +2 WRITE IORVON,!?79,!,"CHS DENIAL DISPLAY",?25,"PATIENT: ",$EXTRACT(ACHDPAT,1,25),?62,"CHART#: "
- +3 IF $$DN^ACHS(0,6)="Y"
- IF $$DN^ACHS(0,7)
- IF $GET(^AUPNPAT($$DN^ACHS(0,7),41,DUZ(2),0))
- WRITE $PIECE($GET(^AUPNPAT($$DN^ACHS(0,7),41,DUZ(2),0)),U,2)
- +4 IF '$TEST
- WRITE "NONE"
- +5 WRITE !?79,IORVOFF,!,$$REPEAT^XLFSTR("=",79),!
- +6 QUIT
- +7 ;
- P1 ; --- Display Page 1
- +1 WRITE "DATE ISSUED: ",$$FMTE^XLFDT($$DN^ACHS(0,2))
- +2 WRITE ?45,"ISSUED BY: ",$EXTRACT($PIECE($GET(^VA(200,$$DN^ACHS(0,3),0)),U),1,25)
- +3 WRITE !!,"1. DATE MED SVC: ",IORVON,$$FMTE^XLFDT($$DN^ACHS(0,4)),IORVOFF
- +4 WRITE ?43,"2. DATE OF REQUEST: ",IORVON,$$FMTE^XLFDT($$DN^ACHS(0,5)),IORVOFF
- +5 WRITE !!,"3. MEDICAL PRIORITY: ",IORVON,$PIECE($GET(^ACHSMPRI($$DN^ACHS(400,2),0)),U),IORVOFF
- +6 SET %=$$DN^ACHS(100,10)
- +7 ;
- +8 WRITE ?43,"4. VISIT TYPE: ",IORVON,$SELECT(%="O":"OUTPATIENT",%="I":"INPATIENT",%="A":"AMBULANCE",%="P":"PATIENT ESCORT",%="D":"DENTAL",1:"UNKNOWN"),IORVOFF
- +9 ;
- +10 WRITE !!,"5.*PRIMARY PROVIDER: ",IORVON,$SELECT($$DN^ACHS(100,1)="Y":$PIECE($GET(^AUTTVNDR($$DN^ACHS(100,2),0)),U),1:$$DN^ACHS(100,3)),IORVOFF
- +11 ;ACHS*3.1*23 CHG "ICD 9" TO "ICD" IN NXT LINE AND FIX DISPLAY IF BOTH
- +12 ;W !!,"6.*DIAGNOSIS: ",IORVON,$S($D(^ACHSDEN(DUZ(2),"D",ACHSA,500,0)):"ICD",$D(^ACHSDEN(DUZ(2),"D",ACHSA,700,0)):"CPT",1:"NONE"),IORVOFF
- +13 WRITE !!,"6.*DIAGNOSIS: "
- +14 WRITE IORVON,$SELECT(($DATA(^ACHSDEN(DUZ(2),"D",ACHSA,500,0))&$DATA(^ACHSDEN(DUZ(2),"D",ACHSA,700,0))):"ICD/CPT",$DATA(^ACHSDEN(DUZ(2),"D",ACHSA,500,0)):"ICD",$DATA(^ACHSDEN(DUZ(2),"D",ACHSA,700,0)):"CPT",1:"NONE"),IORVOFF
- +15 ;
- +16 WRITE !!,"7.*PRIMARY DENIAL REASON: "
- SET %=$$DN^ACHS(250,1)
- IF %
- WRITE IORVON,$PIECE($GET(^ACHSDENS(%,0)),U),IORVOFF
- +17 ;
- +18 WRITE !!,"8.*OTHER RESOURCES: ",IORVON,$SELECT($PIECE($GET(^ACHSDEN(DUZ(2),"D",ACHSA,800,0)),U,4):"YES",1:"NONE"),IORVOFF
- +19 ;
- +20 WRITE !!,"9. OTHER IHS RESOURCES: ",IORVON,$SELECT($PIECE($GET(^ACHSDEN(DUZ(2),"D",ACHSA,825,0)),U,4):"YES",1:"NONE"),IORVOFF
- +21 ;
- +22 WRITE !!!?15,IORVON,"*",IORVOFF," - CHOOSE THESE FIELDS TO SEE FURTHER INFORMATION",!!,IORVON
- +23 ;
- +24 SET %=$$DIR^ACHS("LO^1:9","Enter Number Of Field To Edit or <RETURN> To Accept","","","","")
- +25 ;
- +26 WRITE IORVOFF
- +27 IF %=""
- SET DUOUT=""
- +28 IF $DATA(DUOUT)!$DATA(DTOUT)!'%
- QUIT
- +29 DO @(+%)
- +30 QUIT
- +31 ;
- 1 ; --- Date of Service
- +1 IF '$$DIE(4)
- SET DUOUT=""
- +2 QUIT
- +3 ;
- 2 ; --- Date of Request
- +1 IF '$$DIE(5)
- SET DUOUT=""
- +2 QUIT
- +3 ;
- 3 ; --- Medical priority
- +1 IF '$$DIE(420)
- SET DUOUT=""
- +2 QUIT
- +3 ;
- 4 ; --- Service Type
- +1 IF '$$DIE(110)
- SET DUOUT=""
- +2 QUIT
- +3 ;
- 5 ; --- Primary Provider
- +1 DO ^ACHSDN3
- +2 QUIT
- +3 ;
- 6 ; --- Diagnosis
- +1 ;ACHS*3.1*23 DID NOT ALLOW EDIT IF BOTH CPT AND ICD WERE SET
- +2 ;S X=$S($D(^ACHSDEN(DUZ(2),"D",ACHSA,700,0)):700,1:500)
- +3 ;I '$$DIE(X) S DUOUT=""
- +4 FOR X=500,700
- Begin DoDot:1
- +5 IF $DATA(^ACHSDEN(DUZ(2),"D",ACHSA,X,0))
- IF '$$DIE(X)
- SET DUOUT=""
- End DoDot:1
- +6 QUIT
- +7 ;
- 7 ; --- Denial Reasons
- +1 WRITE !!
- +2 DO ^ACHSDN4
- +3 QUIT
- +4 ;
- 8 ; --- Other Resources
- +1 WRITE !!
- +2 IF '$$DIE(800)
- SET DUOUT=""
- +3 QUIT
- +4 ;
- +5 ;'OTHER IHS RESOURCES'
- 9 ;
- +1 WRITE !!
- +2 IF '$$DIE(825)
- SET DUOUT=""
- +3 QUIT
- +4 ;
- DIE(DR) ; --- Edit appropriate fields in Denial
- +1 WRITE !!
- +2 SET DA=ACHSA
- +3 SET DA(1)=DUZ(2)
- +4 SET DIE="^ACHSDEN("_DUZ(2)_",""D"","
- +5 IF '$$LOCK^ACHS("^ACHSDEN(DUZ(2),""D"",ACHSA)","+")
- QUIT 0
- +6 DO ^DIE
- +7 IF '$$LOCK^ACHS("^ACHSDEN(DUZ(2),""D"",ACHSA)","-")
- QUIT 0
- +8 QUIT 1
- +9 ;