- ABMDRUN2 ; IHS/ASDST/DMJ - Unpaid Bills Listing-132 width ;
- ;;2.6;IHS 3P BILLING SYSTEM;**21**;NOV 12, 2009;Build 379
- ;Original;TMD;
- ;
- ; IHS/ASDS/SDH - 09/26/01 - V2.4 Patch 9 - NOIS NCA-0901-180041
- ; Modified to correct <UNDEF>WRT+1^ABMDRUN2
- ;
- ; IHS/SD/SDR - 10/10/02 - V2.5 P2 - UXX-0801-170114
- ; Modified to correct <SBSCR>SUBHD^ABMDRUN2
- ;
- ;IHS/SD/SDR - 2.6*21 - HEAT195285 - Updated so it will print all headers for report, not just UNPAID BILLS part.
- ; *********************************************************************
- ;
- PRINT ;EP for printing data
- D ^ABMDRHD ;abm*2.6*21 IHS/SD/SDR HEAT195285
- S ABM("PRIVACY")=1
- W:$D(ABM("PRINT",16)) @ABM("PRINT",16) S ABM("PG")=0 D HDB
- S (ABM("CNT1"),ABM("CNT2"),ABM("CNT"),ABM("TOT1"),ABM("TOT2"),ABM("TOT"))=0,(ABM("A"),ABM("L"),ABM("V"))=""
- S ABM("Z")="TMP(""ABM-AL"","_$J,ABM="^"_ABM("Z")_")" I '$D(@ABM) Q
- F S ABM=$Q(@ABM) Q:ABM'[ABM("Z") D Q:$D(DTOUT)!$D(DUOUT)!$D(DIROUT)
- .I $Y>(IOSL-5) D HD Q:$D(DTOUT)!$D(DUOUT)!$D(DIROUT) D SUBHD W " (cont)"
- .S ABM("T")=$P(ABM,"ABM-A",2),ABM("TXT")=$P($P(ABM("T"),",",3,99),"""",2,99)
- .S ABM("C")=$G(^ABMDBILL(DUZ(2),+$P(ABM("TXT"),U,5),0)) Q:ABM("C")="" S ABM("T")=+^(2),ABM("D")=$P($G(^(1)),U,7) S:ABM("D")]"" ABM("D")=+$G(^ABMDTXST(DUZ(2),ABM("D"),0))
- .I ABM("L")'=$P(ABM("TXT"),U) D SUB:ABM("L")]"",SUBHD S ABM("V")=""
- .S ABM("L")=$P(ABM("TXT"),U)
- .I ABM("V")'=$P(ABM("TXT"),U,2) D SUB2:ABM("V")]"" W:ABM("V")]"" ! W:$P(ABM("TXT"),U,2) !?7,$S(ABMY("SORT")="C":" Clinic: "_$P(^DIC(40.7,$P(ABM("TXT"),U,2),0),U),1:"Visit Type: "_$P(^ABMDVTYP($P(ABM("TXT"),U,2),0),U))
- .S ABM("V")=$P(ABM("TXT"),U,2)
- .D WRT
- D SUB,TOT
- Q
- ;
- WRT W ! W:ABM("I")'=$P(ABM("C"),U,8) $E($P(^AUTNINS($P(ABM("C"),U,8),0),U),1,30) S ABM("I")=$P(ABM("C"),U,8)
- W ?32,$P(ABM("C"),U),?40,$E($P(^DPT(+$P(ABM("C"),U,5),0),U),1,30),?72,$S($D(^AUPNPAT($P(ABM("C"),U,5),41,$P(ABM("C"),U,3),0)):$P(^(0),U,2),$D(^AUPNPAT($P(ABM("C"),U,5),41,DUZ(2),0)):$P(^(0),U,2),1:"")
- W:+$G(^ABMDBILL(DUZ(2),+$P(ABM("TXT"),U,5),7)) ?80,$$SDT^ABMDUTL(+^(7))
- I ABMY("SORT")="V" W:+$P(ABM("C"),U,10) ?92,$E($P(^DIC(40.7,$P(ABM("C"),U,10),0),U),1,16)
- E W ?92,$E($P(^ABMDVTYP($P(ABM("C"),U,7),0),U),1,16)
- W:ABM("D")]"" ?110,$$SDT^ABMDUTL(ABM("D"))
- W ?121,$J($FN(ABM("T"),",",2),10)
- S ABM("CNT1")=ABM("CNT1")+1,ABM("CNT2")=ABM("CNT2")+1,ABM("CNT")=ABM("CNT")+1,ABM("TOT")=ABM("TOT")+ABM("T")
- S ABM("TOT1")=ABM("TOT1")+ABM("T"),ABM("TOT2")=ABM("TOT2")+ABM("T")
- Q
- ;
- TOT Q:ABM("CNT")=0
- W !?32,"======",?121,"==========",!?3,"GRAND TOTAL:",?32,ABM("CNT"),?121,$J($FN(ABM("TOT"),",",2),10)
- S ABM("TOT")=0
- Q
- ;
- HD D PAZ^ABMDRUTL Q:$D(DTOUT)!$D(DUOUT)!$D(DIROUT)
- HDB S ABM("PG")=ABM("PG")+1,ABM("I")="" D WHD^ABMDRHD
- W !,?32,"Claim",?81,"Visit",?113,"Export",?123,"Billed"
- W !?10,"Insurer",?32,"Number",?47,"Patient",?73,"HRN",?81,"Date",?94,$S(ABMY("SORT")="V":"Clinic",1:"Visit Type"),?114,"Date",?123,"Amount"
- S $P(ABM("LINE"),"-",132)="" W !,ABM("LINE") K ABM("LINE")
- Q
- ;
- SUBHD ;
- I $G(ABM("L"))'="" W !!?3,"Visit Location: ",$P(^DIC(4,$P(ABM("C"),U,3),0),U)
- Q
- ;
- SUB2 Q:'ABM("CNT2")
- W !?32,"------",?121,"----------"
- W !?5,"Sub-total:",?32,ABM("CNT2"),?121,$J($FN(ABM("TOT2"),",",2),10)
- S ABM("CNT2")=0,ABM("TOT2")=0,ABM("I")=""
- Q
- ;
- SUB Q:'ABM("CNT1") D SUB2:ABM("CNT1")'=ABM("CNT2")
- W !?32,"------",?121,"----------"
- W !?9,"Total:",?32,ABM("CNT1"),?121,$J($FN(ABM("TOT1"),",",2),10)
- S (ABM("CNT1"),ABM("TOT1"),ABM("CNT2"),ABM("TOT2"))=0,ABM("I")=""
- Q
- ABMDRUN2 ; IHS/ASDST/DMJ - Unpaid Bills Listing-132 width ;
- +1 ;;2.6;IHS 3P BILLING SYSTEM;**21**;NOV 12, 2009;Build 379
- +2 ;Original;TMD;
- +3 ;
- +4 ; IHS/ASDS/SDH - 09/26/01 - V2.4 Patch 9 - NOIS NCA-0901-180041
- +5 ; Modified to correct <UNDEF>WRT+1^ABMDRUN2
- +6 ;
- +7 ; IHS/SD/SDR - 10/10/02 - V2.5 P2 - UXX-0801-170114
- +8 ; Modified to correct <SBSCR>SUBHD^ABMDRUN2
- +9 ;
- +10 ;IHS/SD/SDR - 2.6*21 - HEAT195285 - Updated so it will print all headers for report, not just UNPAID BILLS part.
- +11 ; *********************************************************************
- +12 ;
- PRINT ;EP for printing data
- +1 ;abm*2.6*21 IHS/SD/SDR HEAT195285
- DO ^ABMDRHD
- +2 SET ABM("PRIVACY")=1
- +3 IF $DATA(ABM("PRINT",16))
- WRITE @ABM("PRINT",16)
- SET ABM("PG")=0
- DO HDB
- +4 SET (ABM("CNT1"),ABM("CNT2"),ABM("CNT"),ABM("TOT1"),ABM("TOT2"),ABM("TOT"))=0
- SET (ABM("A"),ABM("L"),ABM("V"))=""
- +5 SET ABM("Z")="TMP(""ABM-AL"","_$JOB
- SET ABM="^"_ABM("Z")_")"
- IF '$DATA(@ABM)
- QUIT
- +6 FOR
- SET ABM=$QUERY(@ABM)
- IF ABM'[ABM("Z")
- QUIT
- Begin DoDot:1
- +7 IF $Y>(IOSL-5)
- DO HD
- IF $DATA(DTOUT)!$DATA(DUOUT)!$DATA(DIROUT)
- QUIT
- DO SUBHD
- WRITE " (cont)"
- +8 SET ABM("T")=$PIECE(ABM,"ABM-A",2)
- SET ABM("TXT")=$PIECE($PIECE(ABM("T"),",",3,99),"""",2,99)
- +9 SET ABM("C")=$GET(^ABMDBILL(DUZ(2),+$PIECE(ABM("TXT"),U,5),0))
- IF ABM("C")=""
- QUIT
- SET ABM("T")=+^(2)
- SET ABM("D")=$PIECE($GET(^(1)),U,7)
- IF ABM("D")]""
- SET ABM("D")=+$GET(^ABMDTXST(DUZ(2),ABM("D"),0))
- +10 IF ABM("L")'=$PIECE(ABM("TXT"),U)
- IF ABM("L")]""
- DO SUB
- DO SUBHD
- SET ABM("V")=""
- +11 SET ABM("L")=$PIECE(ABM("TXT"),U)
- +12 IF ABM("V")'=$PIECE(ABM("TXT"),U,2)
- IF ABM("V")]""
- DO SUB2
- IF ABM("V")]""
- WRITE !
- IF $PIECE(ABM("TXT"),U,2)
- WRITE !?7,$SELECT(ABMY("SORT")="C":" Clinic: "_$PIECE(^DIC(40.7,$PIECE(ABM("TXT"),U,2),0),U),1:"Visit Type: "_$PIECE(^ABMDVTYP($PIECE(ABM("TXT"),U,2),0),U))
- +13 SET ABM("V")=$PIECE(ABM("TXT"),U,2)
- +14 DO WRT
- End DoDot:1
- IF $DATA(DTOUT)!$DATA(DUOUT)!$DATA(DIROUT)
- QUIT
- +15 DO SUB
- DO TOT
- +16 QUIT
- +17 ;
- WRT WRITE !
- IF ABM("I")'=$PIECE(ABM("C"),U,8)
- WRITE $EXTRACT($PIECE(^AUTNINS($PIECE(ABM("C"),U,8),0),U),1,30)
- SET ABM("I")=$PIECE(ABM("C"),U,8)
- +1 WRITE ?32,$PIECE(ABM("C"),U),?40,$EXTRACT($PIECE(^DPT(+$PIECE(ABM("C"),U,5),0),U),1,30),?72,$SELECT($DATA(^AUPNPAT($PIECE(ABM("C"),U,5),41,$PIECE(ABM("C"),U,3),0)):$PIECE(^(0),U,2),$DATA(^AUPNPAT($PIECE(ABM("C"),U,5),41,DUZ(2),0)):$PIECE(^(0),U
- ,2),1:"")
- +2 IF +$GET(^ABMDBILL(DUZ(2),+$PIECE(ABM("TXT"),U,5),7))
- WRITE ?80,$$SDT^ABMDUTL(+^(7))
- +3 IF ABMY("SORT")="V"
- IF +$PIECE(ABM("C"),U,10)
- WRITE ?92,$EXTRACT($PIECE(^DIC(40.7,$PIECE(ABM("C"),U,10),0),U),1,16)
- +4 IF '$TEST
- WRITE ?92,$EXTRACT($PIECE(^ABMDVTYP($PIECE(ABM("C"),U,7),0),U),1,16)
- +5 IF ABM("D")]""
- WRITE ?110,$$SDT^ABMDUTL(ABM("D"))
- +6 WRITE ?121,$JUSTIFY($FNUMBER(ABM("T"),",",2),10)
- +7 SET ABM("CNT1")=ABM("CNT1")+1
- SET ABM("CNT2")=ABM("CNT2")+1
- SET ABM("CNT")=ABM("CNT")+1
- SET ABM("TOT")=ABM("TOT")+ABM("T")
- +8 SET ABM("TOT1")=ABM("TOT1")+ABM("T")
- SET ABM("TOT2")=ABM("TOT2")+ABM("T")
- +9 QUIT
- +10 ;
- TOT IF ABM("CNT")=0
- QUIT
- +1 WRITE !?32,"======",?121,"==========",!?3,"GRAND TOTAL:",?32,ABM("CNT"),?121,$JUSTIFY($FNUMBER(ABM("TOT"),",",2),10)
- +2 SET ABM("TOT")=0
- +3 QUIT
- +4 ;
- HD DO PAZ^ABMDRUTL
- IF $DATA(DTOUT)!$DATA(DUOUT)!$DATA(DIROUT)
- QUIT
- HDB SET ABM("PG")=ABM("PG")+1
- SET ABM("I")=""
- DO WHD^ABMDRHD
- +1 WRITE !,?32,"Claim",?81,"Visit",?113,"Export",?123,"Billed"
- +2 WRITE !?10,"Insurer",?32,"Number",?47,"Patient",?73,"HRN",?81,"Date",?94,$SELECT(ABMY("SORT")="V":"Clinic",1:"Visit Type"),?114,"Date",?123,"Amount"
- +3 SET $PIECE(ABM("LINE"),"-",132)=""
- WRITE !,ABM("LINE")
- KILL ABM("LINE")
- +4 QUIT
- +5 ;
- SUBHD ;
- +1 IF $GET(ABM("L"))'=""
- WRITE !!?3,"Visit Location: ",$PIECE(^DIC(4,$PIECE(ABM("C"),U,3),0),U)
- +2 QUIT
- +3 ;
- SUB2 IF 'ABM("CNT2")
- QUIT
- +1 WRITE !?32,"------",?121,"----------"
- +2 WRITE !?5,"Sub-total:",?32,ABM("CNT2"),?121,$JUSTIFY($FNUMBER(ABM("TOT2"),",",2),10)
- +3 SET ABM("CNT2")=0
- SET ABM("TOT2")=0
- SET ABM("I")=""
- +4 QUIT
- +5 ;
- SUB IF 'ABM("CNT1")
- QUIT
- IF ABM("CNT1")'=ABM("CNT2")
- DO SUB2
- +1 WRITE !?32,"------",?121,"----------"
- +2 WRITE !?9,"Total:",?32,ABM("CNT1"),?121,$JUSTIFY($FNUMBER(ABM("TOT1"),",",2),10)
- +3 SET (ABM("CNT1"),ABM("TOT1"),ABM("CNT2"),ABM("TOT2"))=0
- SET ABM("I")=""
- +4 QUIT