Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: ABMDRAL4

ABMDRAL4.m

Go to the documentation of this file.
  1. ABMDRAL4 ; IHS/ASDST/DMJ - Bills Cost Report ;
  1. ;;2.6;IHS 3P BILLING SYSTEM;**3,8,9**;NOV 12, 2009
  1. ;Original;TMD;
  1. ; IHS/SD/SDR - abm*2.6*3 - HEAT12210 - fix output so $amounts display
  1. ;
  1. PRINT ;EP for printing data
  1. S ABM("PG")=0
  1. W:$D(ABM("PRINT",16)) @ABM("PRINT",16) D HDB
  1. F ABM="N","B","PD","DD","WO","OB" S ABM("T"_ABM)=0
  1. S ABM("L")="",ABM("V")=0,ABM("TN")=0
  1. ;F S ABM("L")=$O(^TMP(ABM("SUBR"),"ST",$J,ABM("L"))) Q:ABM("L")="" D Q:$D(DUOUT) ;abm*2.6*8 HEAT49932
  1. F S ABM("L")=$O(^TMP(ABM("SUBR"),$J,"ST",ABM("L"))) Q:ABM("L")="" D Q:$D(DUOUT) ;abm*2.6*8 HEAT49932
  1. .S (ABM("SN"),ABM("V"))=0 F ABM="DD","B","PD","WO","OB" S ABM("S"_ABM)=0
  1. .D WLOC:$Y<(IOSL-7)
  1. .;F ABM("VI")=1:1 S ABM("V")=$O(^TMP(ABM("SUBR"),"ST",$J,ABM("L"),ABM("V"))) Q:'ABM("V") D Q:$D(DUOUT) ;abm*2.6*8 HEAT49932
  1. .F ABM("VI")=1:1 S ABM("V")=$O(^TMP(ABM("SUBR"),$J,"ST",ABM("L"),ABM("V"))) Q:'ABM("V") D Q:$D(DUOUT) ;abm*2.6*8 HEAT49932
  1. ..I $Y>(IOSL-6) D HD Q:$D(DUOUT) D WLOC I 1
  1. ..E I ABM("VI")>1 W !
  1. ..D WSRT
  1. ..F ABM="DD","B","PD","WO","OB" S ABM("M"_ABM)=0
  1. ..S ABM("E")="",ABM("OE")="",ABM("CN")=0
  1. ..;F S ABM("E")=$O(^TMP(ABM("SUBR"),"ST",$J,ABM("L"),ABM("V"),ABM("E"))) Q:ABM("E")="" D G XIT:$D(DUOUT) ;abm*2.6*8 HEAT49932
  1. ..F S ABM("E")=$O(^TMP(ABM("SUBR"),$J,"ST",ABM("L"),ABM("V"),ABM("E"))) Q:ABM("E")="" D G XIT:$D(DUOUT) ;abm*2.6*8 HEAT49932
  1. ...I $Y>(IOSL-4) D HD Q:$D(DUOUT) D WLOC,WSRT
  1. ...W ! I ABM("E")'=ABM("OE") W $E(ABM("E"),1,30)
  1. ...S ABM("C")=0,ABM("AI")=0
  1. ...;F S ABM("C")=$O(^TMP(ABM("SUBR"),"ST",$J,ABM("L"),ABM("V"),ABM("E"),ABM("C"))) Q:'ABM("C") D Q:$D(DUOUT) ;abm*2.6*8 HEAT49932
  1. ...F S ABM("C")=$O(^TMP(ABM("SUBR"),$J,"ST",ABM("L"),ABM("V"),ABM("E"),ABM("C"))) Q:'ABM("C") D Q:$D(DUOUT) ;abm*2.6*8 HEAT49932
  1. ....I $Y>(IOSL-4) D HD Q:$D(DUOUT) D WLOC,WSRT
  1. ....I ABM("AI") W !
  1. ....S ABM("AI")=ABM("AI")+1
  1. ....S ABM("CN")=ABM("CN")+1
  1. ....S ABM("SN")=ABM("SN")+1
  1. ....S ABM("TN")=ABM("TN")+1
  1. ....S ABM=$P(^ABMDBILL(DUZ(2),ABM("C"),0),U,5)
  1. ....W ?32,$S($D(^AUPNPAT(ABM,41,ABM("L"),0)):$P(^(0),U,2),$D(^AUPNPAT(ABM,41,DUZ(2),0)):$P(^(0),U,2),1:"")
  1. ....;W:$G(^ABMDBILL(DUZ(2),ABM("C"),7)) ?40,$E(+^(7),4,5),"/",$E(+^(7),6,7)
  1. ....W ?40,$J($P(^ABMDBILL(DUZ(2),ABM("C"),0),U),7)
  1. ....S ABM("I")=0
  1. ....F ABM="48^N","51^B","65^PD","79^DD","93^WO","107^OB" D Q:$D(DUOUT)
  1. .....S ABM("I")=ABM("I")+1 Q:+ABM=48
  1. .....;S ABM("P")=$P(^TMP(ABM("SUBR"),"ST",$J,ABM("L"),ABM("V"),ABM("E"),ABM("C")),U,ABM("I")) ;abm*2.6*3 HEAT12210
  1. .....S ABM("P")=$P(^TMP(ABM("SUBR"),$J,"ST",ABM("L"),ABM("V"),ABM("E"),ABM("C")),U,ABM("I")) ;abm*2.6*3 HEAT12210
  1. .....S ABM($P(ABM,U,2))=ABM("P")
  1. .....S ABM("T"_$P(ABM,U,2))=ABM("P")+ABM("T"_$P(ABM,U,2))
  1. .....S ABM("S"_$P(ABM,U,2))=ABM("P")+ABM("S"_$P(ABM,U,2))
  1. .....S ABM("M"_$P(ABM,U,2))=ABM("P")+ABM("M"_$P(ABM,U,2))
  1. .....I +ABM=58 W ?58,$J($FN(ABM("P"),",",0),5)
  1. .....E W ?+ABM,$J($FN(ABM("P"),",",2),12)
  1. ....W ?124,$J($J($S(ABM("B"):(ABM("PD")/ABM("B")*100),1:0),".",1),5)
  1. ..Q:ABM("CN")=1
  1. ..W !?40,"-------" F ABM=51,65,79,93,107 W ?ABM," ----------"
  1. ..W ?123,"------",!?27,"Subtotal:",?40,$J($FN(ABM("CN"),",",0),7)
  1. ..F ABM="51^B","65^PD","79^DD","93^WO","107^OB" W ?+ABM,$J($FN(ABM("M"_$P(ABM,U,2)),",",2),12)
  1. ..W ?124,$J($J($S(ABM("MB"):(ABM("MPD")/ABM("MB")*100),1:0),".",1),5)
  1. .W !?40,"-------" F ABM=51,65,79,93,107 W ?ABM," ----------"
  1. .W ?123,"------",!?30,"Total:",?40,$J($FN(ABM("SN"),",",0),7)
  1. .F ABM="51^B","65^PD","79^DD","93^WO","107^OB" W ?+ABM,$J($FN(ABM("S"_$P(ABM,U,2)),",",2),12)
  1. .W ?124,$J($J($S(ABM("SB"):(ABM("SPD")/ABM("SB")*100),1:0),".",1),5)
  1. I ABM("TN")'=+$G(ABM("SN")) D
  1. .W !?40,"=======" F ABM=51,65,79,93,107 W ?ABM," ==========="
  1. .W ?123,"======",!?24,"Grand Total:",?40,$J($FN(ABM("TN"),",",0),7)
  1. .F ABM="51^B","65^PD","79^DD","93^WO","107^OB" W ?+ABM,$J($FN(ABM("T"_$P(ABM,U,2)),",",2),12)
  1. .W ?124,$J($J($S(ABM("TB"):(ABM("TPD")/ABM("TB")*100),1:0),".",1),5)
  1. G XIT
  1. ;
  1. HD D PAZ^ABMDRUTL I $D(DTOUT)!$D(DUOUT)!$D(DIROUT) S DUOUT="" Q
  1. HDB S ABM("PG")=ABM("PG")+1 D WHD^ABMDRHD
  1. W !?41,"Bill",?55,"Amount",?69,"Amount",?81,"Deductible",?95,"Write Off-",?110,"Residual",?121,"Collection"
  1. W !?10,"Insurer",?33,"HRN",?40,"Number",?55,"Billed",?70,"Paid",?81,"and Co-Ins",?95,"Adjustment",?110,"Balance",?121,"Percentage"
  1. S $P(ABM("LINE"),"-",132)="" W !,ABM("LINE") K ABM("LINE")
  1. Q
  1. ;
  1. WLOC W !!?3,"Visit Location: ",ABM("L")
  1. Q
  1. ;
  1. WSRT I ABMY("SORT")="V" W !?7,"Visit Type: ",$E($P(^ABMDVTYP(ABM("V"),0),U),1,18)
  1. I ABMY("SORT")="C" W !?11,"Clinic: ",$E($P(^DIC(40.7,ABM("V"),0),U),1,18)
  1. Q
  1. ;
  1. XIT K ^TMP(ABM("SUBR"),"ST",$J)
  1. Q