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

ABMUCASH.m

Go to the documentation of this file.
  1. ABMUCASH ; IHS/SD/SDR - 3PB/UFMS Cashiering Options
  1. ;;2.6;IHS 3P BILLING SYSTEM;**9,11**;NOV 12, 2009;Build 133
  1. ; New routine - v2.5 p12 SDD item 4.9.1
  1. ; Cashiering Sign In/Out option
  1. EP ;EP
  1. ;start new abm*2.6*9 NOHEAT - ensure UFMS setup
  1. I $P($G(^ABMDPARM(DUZ(2),1,4)),U,15)="" D Q
  1. .W !!,"* * UFMS SETUP MUST BE DONE BEFORE ANY BILLING FUNCTIONS CAN BE USED! * *",!
  1. .S DIR(0)="E",DIR("A")="Enter RETURN to Continue" D ^DIR K DIR
  1. ;end new
  1. S ABMFD=$$FINDOPEN^ABMUCUTL(DUZ)
  1. S ABMTRIBL=$P($G(^ABMDPARM(ABMLOC,1,4)),U,14) ;export flag
  1. S $P(ABMLINE,"-",80)=""
  1. ;NO open sess found
  1. I ABMFD=0 D
  1. .D SIG^XUSESIG ;ask esig
  1. .Q:X1="" ;esig test
  1. .S ABMSNUM=$$CR8SESS^ABMUCUTL() ;create sess
  1. .I ABMSNUM=0 W !,"NEW SESSION COULD NOT BE CREATED" Q
  1. .W !!,"YOU ARE SIGNING *IN* FOR BILLING",!
  1. .W !?10,$$EN^ABMVDF("ULN"),"Billing Activity",$$EN^ABMVDF("ULF")
  1. .W ?40,$$EN^ABMVDF("ULN"),"COUNT",$$EN^ABMVDF("ULF")
  1. .W ?60,$$EN^ABMVDF("ULN"),"TOTAL",$$EN^ABMVDF("ULF"),!
  1. .W !?15,"- Cancelled Claims",?44,"0"
  1. .W !?15,"- Approved Bills",?44,"0",?58,"$",?64,"0"
  1. .W !?15,"- Cancelled Bills",?44,"0",?58,"$",?64,"0"
  1. .W !!,"Assigned Session number: ",$P(ABMSNUM,U),!
  1. ;
  1. ;open sess found
  1. I ABMFD'=0 D
  1. .W !!,"YOU ARE SIGNING *OUT* FOR BILLING",!
  1. .D UFMSCK^ABMUMISS
  1. .W !?10,$$EN^ABMVDF("ULN"),"Billing Activity",$$EN^ABMVDF("ULF")
  1. .W ?32,$$EN^ABMVDF("ULN"),"COUNT",$$EN^ABMVDF("ULF")
  1. .W ?45,$$EN^ABMVDF("ULN"),"TOTAL",$$EN^ABMVDF("ULF"),!
  1. .K ABMSBTOT,ABMSATOT
  1. .S ABMDUZ=DUZ
  1. .D CASHTOT(DUZ)
  1. .S ABMBA=""
  1. .I '$D(ABMBAL) W !?5,"AT THIS TIME THERE IS NO BILLING ACTIVITY FOR THIS SESSION.",!
  1. .F S ABMBA=$O(ABMBAL(ABMBA)) Q:ABMBA="" D
  1. ..;W !?5,$P($T(@ABMBA),";;",2) ;abm*2.6*11 insurer type
  1. ..W !?5,$$INSTYP(ABMBA) ;abm*2.6*11 insurer type
  1. ..W !?10,"- Cancelled Claims",?33,+$G(ABMBAL(ABMBA,"CCLMS"))
  1. ..W !?10,"- Approved Bills",?33,+$G(ABMBAL(ABMBA,"ABILLS")),?40,"$",$J($FN(+$G(ABMBAL(ABMBA,"ABAMT")),",",2),10)
  1. ..I ABMTRIBL=1,(+$G(ABMBAL(ABMBA,"EBILLS"))>0) D
  1. ...W " "
  1. ...W $$EN^ABMVDF("RVN")_"(EXCL. ",ABMBAL(ABMBA,"EBILLS")
  1. ...W $$EN^ABMVDF("RVN")_" @ "_$FN(+$G(ABMBAL(ABMBA,"EBAMT")),",",2)_")"
  1. ...W $$EN^ABMVDF("RVF")
  1. ..W !?10,"- Cancelled Bills",?33,+$G(ABMBAL(ABMBA,"CBILLS")),?40,"$",$J($FN(+$G(ABMBAL(ABMBA,"CBAMT")),",",2),10)
  1. .W !
  1. .I +$G(ABMBLCNT)'=0 W !?5,"REQUEUED BILLS: ",ABMBLCNT
  1. .I +$G(ABMBTCNT)'=0 W !?5,"REQUEUED EXPORTS: ",ABMBTCNT
  1. .W !!,ABMLINE
  1. .W !?2,"TOTAL CANCELLED CLAIMS:",?33,+$G(ABMCCLMS)
  1. .W !?2,"TOTAL CANCELLED BILLS:",?33,+$G(ABMCBILL),?40,"$",$J($FN(+$G(ABMCBAMT),",",2),10)
  1. .W !?2,"TOTAL APPROVED:",?33,+$G(ABMSBTOT),?40,"$",$J($FN(+$G(ABMSATOT),",",2),10)
  1. .W:(ABMTRIBL=1) !?2,$$EN^ABMVDF("RVN"),"TOTAL EXCLUDED:",?33,+$G(ABMEBILL),?40,"$",$J($FN(+$G(ABMEBAMT),",",2),10),$$EN^ABMVDF("RVF")
  1. .W !
  1. .I +$P($G(^ABMUCASH(ABMLOC,10,DUZ,20,ABMFD,0)),U,11)'=0 D
  1. ..S ABMBCNT=$P($G(^ABMUCASH(ABMLOC,10,DUZ,20,ABMFD,0)),U,11)
  1. ..W !?3,"There "_$S(ABMBCNT=1:"is ",1:"are "),$S(+ABMBCNT=0:"no",1:ABMBCNT)," "_$S(ABMBCNT=1:"claim/bill",1:"claims/bills")_" for beneficiary patients in this session that will ",!?3,"not be included in the export.",!
  1. .K DIR,X,Y
  1. .S DIR(0)="Y"
  1. .S DIR("A")=" Do you wish to sign out now"
  1. .S DIR("B")="No"
  1. .D ^DIR K DIR
  1. .S ABMSGNIO=+Y
  1. .I ABMSGNIO=1 D ;if yes, to signout
  1. ..K DIR,X,Y
  1. ..W !
  1. ..S DIR("A",1)=" By signing out you are confirming the system balances."
  1. ..S DIR("A")=" Are you sure you wish to sign out"
  1. ..S DIR(0)="Y"
  1. ..D ^DIR K DIR
  1. ..I Y=1 D ;if yes, confirmed signout
  1. ...W !!?5,"Done..."
  1. ...W !?8,"the session ",ABMFD," will be sent to your manager for processing.",!
  1. ...W !?5,"Signing out of session ",ABMFD,!
  1. ...D CLOSESES^ABMUCUTL(ABMLOC,DUZ,ABMFD)
  1. .;view detail?
  1. .W !
  1. .K DIR,X,Y
  1. .S DIR("A")="View detail"
  1. .S DIR(0)="Y"
  1. .D ^DIR K DIR
  1. .I Y=1 D SEL
  1. .;
  1. .I ABMSGNIO=0 D ;if no, don't sign out
  1. ..W !
  1. ..K DIR,X,Y
  1. ..S DIR("A")="Do you wish to print the productivity report"
  1. ..S DIR(0)="Y"
  1. ..D ^DIR K DIR
  1. ..I Y=1 D ^ABMDRPR ;do productivity report (PRRP)
  1. S DIR(0)="E",DIR("A")="Enter RETURN to Continue" D ^DIR K DIR
  1. Q
  1. CASHTOT(ABMDUZ) ;EP - cnt claims/bills & amts for sess
  1. ;cancelled clms
  1. K ABMCCLMS
  1. S ABMLOC=$$FINDLOC^ABMUCUTL
  1. S ABMTRIBL=$P($G(^ABMDPARM(ABMLOC,1,4)),U,14)
  1. S ABMBA=0
  1. F S ABMBA=$O(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA)) Q:+ABMBA=0 D
  1. .S ABMBDAC=$P($G(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA,0)),U)
  1. .S ABMCDFN=0
  1. .F S ABMCDFN=$O(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA,1,ABMCDFN)) Q:+ABMCDFN=0 D
  1. ..S ABMBAL(ABMBDAC,"CCLMS")=+$G(ABMBAL(ABMBDAC,"CCLMS"))+1
  1. ..S ABMCCLMS=+$G(ABMCCLMS)+1 ;sess cntr
  1. ..S ABMTCCLM=+$G(ABMTCCLM)+1 ;tot cancelled clms (mult. sess)
  1. ;
  1. ;appr bills
  1. K ABMABILL,ABMABAMT
  1. K ABMEBILL,ABMEBAMT
  1. S ABMBA=0
  1. F S ABMBA=$O(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA)) Q:+ABMBA=0 D
  1. .S ABMBDAC=$P($G(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA,0)),U)
  1. .S ABMCDFN=0
  1. .F S ABMCDFN=$O(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA,2,ABMCDFN)) Q:+ABMCDFN=0 D
  1. ..S ABMBAL(ABMBDAC,"ABILLS")=+$G(ABMBAL(ABMBDAC,"ABILLS"))+1 ;tot appr bills by B.A.
  1. ..S ABMABILL=+$G(ABMABILL)+1 ;tot appr bills
  1. ..S ABMSBTOT=+$G(ABMSBTOT)+1
  1. ..S ABMDUZ2=$P($G(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA,2,ABMCDFN,0)),U,2)
  1. ..S ABMBDFN=$P($G(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA,2,ABMCDFN,0)),U,3)
  1. ..S ABMBAL(ABMBDAC,"ABAMT")=+$G(ABMBAL(ABMBDAC,"ABAMT"))+($P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,2)),U))
  1. ..S ABMSATOT=(+$G(ABMSATOT))+($P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,2)),U))
  1. ..S ABMABAMT=$G(ABMABAMT)+($P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,2)),U)) ;tot appr bill amt
  1. ..;now check if bill is part of 3P UFMS Exclusion Table
  1. ..Q:$$BILL^ABMUEAPI(ABMDUZ2,$P($G(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA,2,ABMCDFN,0)),U,3))=1
  1. ..S ABMBAL(ABMBDAC,"EBILLS")=+$G(ABMBAL(ABMBDAC,"EBILLS"))+1
  1. ..S ABMEBILL=+$G(ABMEBILL)+1 ;session tot
  1. ..S ABMTEBIL=+$G(ABMTEBIL)+1 ;tot bills (multiple sessions)
  1. ..S ABMBAL(ABMBDAC,"EBAMT")=+$G(ABMBAL(ABMBDAC,"EBAMT"))+($P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,2)),U))
  1. ..S ABMEBAMT=+$G(ABMEBAMT)+($P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,2)),U)) ;sess tot
  1. ..S ABMTEBAM=+$G(ABMTEBAM)+($P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,2)),U)) ;tot amt (mult. sess)
  1. ;
  1. ;cancelled bills
  1. K ABMCBILL,ABMCBAMT
  1. S ABMBA=0
  1. F S ABMBA=$O(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA)) Q:+ABMBA=0 D
  1. .S ABMBDAC=$P($G(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA,0)),U)
  1. .S ABMCDFN=0
  1. .F S ABMCDFN=$O(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA,3,ABMCDFN)) Q:+ABMCDFN=0 D
  1. ..S ABMBAL(ABMBDAC,"CBILLS")=+$G(ABMBAL(ABMBDAC,"CBILLS"))+1
  1. ..S ABMCBILL=$G(ABMCBILL)+1 ;session tot
  1. ..S ABMTCBIL=+$G(ABMTCBIL)+1 ;tot bills (multiple sessions)
  1. ..S ABMDUZ2=$P($G(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA,3,ABMCDFN,0)),U,2)
  1. ..S ABMBDFN=$P($G(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA,3,ABMCDFN,0)),U,3)
  1. ..S ABMBAL(ABMBDAC,"CBAMT")=+$G(ABMBAL(ABMBDAC,"CBAMT"))+($P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,2)),U))
  1. ..S ABMCBAMT=+$G(ABMCBAMT)+($P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,2)),U)) ;session tot
  1. ..S ABMTCBAM=+$G(ABMTCBAM)+($P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,2)),U)) ;tot amt (multiple sessions)
  1. ;
  1. ;cnt any requeued bills or batches (no detail)
  1. K ABMBLCNT,ABMBTCNT
  1. F ABMI=12,13 D
  1. .S ABMIEN=0
  1. .F S ABMIEN=$O(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,ABMI,ABMIEN)) Q:+ABMIEN=0 D
  1. ..I ABMI=12 S ABMBLCNT=+$G(ABMBLCNT)+1
  1. ..I ABMI=13 S ABMBTCNT=+$G(ABMBTCNT)+1
  1. Q
  1. CASHTOTP ;EP - cnt POS claims
  1. D CASHTOTP^ABMUUTL
  1. Q
  1. SEL ;EP
  1. ;Select device
  1. S %ZIS="NQ"
  1. S %ZIS("A")="Enter DEVICE: "
  1. D ^%ZIS Q:POP
  1. I IO'=IO(0) D QUE,HOME^%ZIS S DIR(0)="E" D ^DIR K DIR Q
  1. I $D(IO("S")) S IOP=ION D ^%ZIS
  1. ;
  1. PRINT ;EP
  1. ;Callable point for queuing
  1. S ABME("PG")=0
  1. D HD
  1. D DETAIL
  1. W !!,$$EN^ABMVDF("HIN"),"E N D O F R E P O R T",$$EN^ABMVDF("HIF"),!
  1. I $E(IOST)="C" S DIR(0)="E" D ^DIR K DIR
  1. I $E(IOST)="P" W $$EN^ABMVDF("IOF")
  1. I $D(IO("S")) D ^%ZISC
  1. K ABME
  1. Q
  1. DETAIL ;EP - view session detail
  1. ;
  1. I $G(ABMDUZ)="" S ABMDUZ=DUZ
  1. K ABMCCLMS,ABMBAOUT
  1. S ABMLOC=$$FINDLOC^ABMUCUTL
  1. ;"regular" claims
  1. I +$G(ABMDUZ)'=0 D
  1. .S ABMBA=0
  1. .F S ABMBA=$O(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA)) Q:+ABMBA=0 D
  1. ..S ABMBAOUT=$P($G(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA,0)),U)
  1. ..F ABMLOOP=1:1:3 D
  1. ...S ABMCDFN=0
  1. ...F S ABMCDFN=$O(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA,ABMLOOP,ABMCDFN)) Q:+ABMCDFN=0 D
  1. ....S ABMCREC=$G(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,11,ABMBA,ABMLOOP,ABMCDFN,0))
  1. ....S ABMB(ABMBAOUT,ABMLOOP,ABMCDFN)=$P(ABMCREC,U)_"^"_$P(ABMCREC,U,2)_"^"_$P(ABMCREC,U,3)
  1. .;
  1. .;cnt any requeued bills or batches (no detail)
  1. .K ABMBLCNT,ABMBTCNT
  1. .F ABMI=12,13 D
  1. ..S ABMIEN=0
  1. ..F S ABMIEN=$O(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,ABMI,ABMIEN)) Q:+ABMIEN=0 D
  1. ...S ABMCREC=$G(^ABMUCASH(ABMLOC,10,ABMDUZ,20,ABMFD,ABMI,ABMIEN,0))
  1. ...S:ABMI=12 ABMB(ABMI,ABMIEN)=$P(ABMCREC,U)_"^"_$P(ABMCREC,U,2)_"^"_$P(ABMCREC,U,3)
  1. ...S:ABMI=13 ABMB(ABMI,ABMIEN)=$P(ABMCREC,U)
  1. ;pos clms
  1. I $G(ABMDUZ)="POS" S ABMDUZ=1 D
  1. .S ABMBA=0
  1. .F S ABMBA=$O(^ABMUCASH(ABMLOC,20,ABMDUZ,20,ABMFD,11,ABMBA)) Q:+ABMBA=0 D
  1. ..S ABMBAOUT=$P($G(^ABMUCASH(ABMLOC,20,ABMDUZ,20,ABMFD,11,ABMBA,0)),U)
  1. ..F ABMLOOP=1:1:3 D
  1. ...S ABMCDFN=0
  1. ...F S ABMCDFN=$O(^ABMUCASH(ABMLOC,20,ABMDUZ,20,ABMFD,11,ABMBA,ABMLOOP,ABMCDFN)) Q:+ABMCDFN=0 D
  1. ....S ABMCREC=$G(^ABMUCASH(ABMLOC,20,ABMDUZ,20,ABMFD,11,ABMBA,ABMLOOP,ABMCDFN,0))
  1. ....S ABMB(ABMBAOUT,ABMLOOP,ABMCDFN)=$P(ABMCREC,U)_"^"_$P(ABMCREC,U,2)_"^"_$P(ABMCREC,U,3)
  1. D DTAILPRT
  1. Q
  1. HD ;
  1. I $G(ABME("PG")),$E(IOST)="C" S DIR(0)="E" D ^DIR K DIR Q:(IOST["C")&($G(Y)<0)!($D(DIRUT)!$D(DIROUT)!$D(DTOUT)!$D(DUOUT))
  1. S ABME("PG")=+$G(ABME("PG"))+1
  1. W $$EN^ABMVDF("IOF")
  1. W !,?23,$$EN^ABMVDF("HIN"),"UFMS VIEW CASHIERING SESSION DETAIL",?70,"Page: ",ABME("PG"),$$EN^ABMVDF("HIF")
  1. W !,"SESSION ID: ",ABMFD,!
  1. W:ABMDUZ'=1 "BILLER: ",$P($P($G(^VA(200,ABMDUZ,0)),U),",")_","_$E($P($P($G(^VA(200,ABMDUZ,0)),U),",",2),1),!
  1. W:ABMDUZ=1 "BILLER: POS CLAIMS"
  1. W:(ABMTRIBL=1) !,"(*) Indicates bills that will be excluded from export"
  1. W !
  1. W !,"LOC",?5,"BILL#",?16,"HRN",?24,"PATIENT",?47,"APPROVE DT",?61,"DOS",?71,"BILL AMT"
  1. W ! F ABMDASH=1:1:80 W "-"
  1. Q
  1. DTAILPRT ;
  1. I '$D(ABMB) W !?5,"AT THIS TIME THERE IS NO BILLING ACTIVITY FOR THIS SESSION.",!
  1. S ABMBAOUT=""
  1. F S ABMBAOUT=$O(ABMB(ABMBAOUT)) Q:ABMBAOUT="" D Q:+$G(Y)=0&(IOST["C")
  1. .Q:ABMBAOUT=12!(ABMBAOUT=13) ;skip requeued bills/exports for now
  1. .;W !!,$P($T(@ABMBAOUT^ABMUCASH),";;",2) ;abm*2.6*11 insurer type
  1. .W !!,$$INSTYP(ABMBAOUT) ;abm*2.6*11 insurer type
  1. .F ABMI=1:1:3 D Q:+$G(Y)=0&(IOST["C")
  1. ..I ABMI=1,(+$G(ABMBAL(ABMBAOUT,"CCLMS"))'=0) W !?2,"-CANCELLED CLAIMS - ",+$G(ABMBAL(ABMBAOUT,"CCLMS"))
  1. ..I ABMI=2,(+$G(ABMBAL(ABMBAOUT,"ABILLS"))'=0) D
  1. ...W !?2,"-APPROVED BILLS - ",+$G(ABMBAL(ABMBAOUT,"ABILLS"))
  1. ...W ?25," $",$J($FN(+$G(ABMBAL(ABMBAOUT,"ABAMT")),",",2),10)
  1. ..I ABMI=3,(+$G(ABMBAL(ABMBAOUT,"CBILLS"))'=0) D
  1. ...W !?2,"-CANCELLED BILLS - ",+$G(ABMBAL(ABMBAOUT,"CBILLS"))
  1. ...W ?25,"$",$J($FN(+$G(ABMBAL(ABMBAOUT,"CBAMT")),",",2),10)
  1. ..I '$D(ABMB(ABMBAOUT,ABMI)) D
  1. ..S ABMBIEN=0
  1. ..F S ABMBIEN=$O(ABMB(ABMBAOUT,ABMI,ABMBIEN)) Q:+ABMBIEN=0 D Q:+$G(Y)=0&(IOST["C")
  1. ...S ABMDUZ2=$P(ABMB(ABMBAOUT,ABMI,ABMBIEN),U,2)
  1. ...S ABMBDFN=$P(ABMB(ABMBAOUT,ABMI,ABMBIEN),U,3)
  1. ...I ABMI'=1 D
  1. ....S ABME(21)=$P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,2)),U)
  1. ....S ABME(ABMBAOUT,"AMT")=$G(ABME(ABMBAOUT,"AMT"))+(ABME(21)) ;cnt bill amt
  1. ....S ABME("CNT")=+$G(ABME("CNT"))+1 ;cnt total bills
  1. ....S ABME("TOT")=+$G(ABME("TOT"))+(ABME(21)) ;cnt tot bill amt
  1. ....S ABME(71)=$$SDT^ABMDUTL($P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,7)),U))
  1. ....S ABME(1)=$P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,0)),U)
  1. ....S ABME(3)=$P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,0)),U,3)
  1. ....S ABME(5)=$P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,0)),U,5)
  1. ....S ABME(15)=$$SDT^ABMDUTL($P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,1)),U,5))
  1. ....S ABME("HRN")=$P($G(^AUPNPAT(+ABME(5),41,+ABMDUZ2,0)),U,2)
  1. ....S ABME("SUFFIX")=$P($G(^ABMDPARM(ABMDUZ2,1,2)),U,4)
  1. ....W !,ABME("SUFFIX"),?5,ABME(1),?16,ABME("HRN"),?24,$E($P($G(^DPT(+ABME(5),0)),U),1,22),?47,ABME(15)
  1. ....W ?58,ABME(71),?69,$J($FN(ABME(21),",",2),10)
  1. ....I ABMTRIBL=1 D
  1. .....S ABMP("XMIT")=$O(^ABMDBILL(ABMDUZ2,ABMBDFN,69,"B",999999999),-1)
  1. .....I +ABMP("XMIT")'=0 D
  1. ......S ABMXMIT=$O(^ABMDBILL(ABMDUZ2,ABMBDFN,69,"B",ABMP("XMIT"),0))
  1. ......I $P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,69,ABMXMIT,0)),U,3)=1 W "*" ;excluded/tribal data
  1. .....I +ABMP("XMIT")=0 D ;bill not transmitted yet
  1. ......I $$BILL^ABMUEAPI(ABMDUZ2,ABMBDFN)=0 W "*" ;excluded/tribal data
  1. ...I ABMI=1 D
  1. ....S ABME("CNT")=+$G(ABME("CNT"))+1 ;cnt tot bills
  1. ....S ABME(21)=$$SDT^ABMDUTL($P($G(^ABMCCLMS(ABMDUZ2,ABMBDFN,0)),U,2))
  1. ....S ABME(1)=ABMBDFN
  1. ....S ABME(3)=$P($G(^ABMCCLMS(ABMDUZ2,ABMBDFN,0)),U,3)
  1. ....S ABME(5)=$P($G(^ABMCCLMS(ABMDUZ2,ABMBDFN,0)),U)
  1. ....S ABME(15)=$$SDT^ABMDUTL($P($G(^ABMCCLMS(ABMDUZ2,ABMBDFN,1)),U,5))
  1. ....S ABME("HRN")=$P($G(^AUPNPAT(+ABME(5),41,+ABMDUZ2,0)),U,2)
  1. ....S ABME("SUFFIX")=$P($G(^ABMDPARM(ABMDUZ2,1,2)),U,4)
  1. ....W !,ABME("SUFFIX"),?4,ABME(1),?12,ABME("HRN"),?20,$P($G(^DPT(+ABME(5),0)),U),?47,ABME(15)
  1. ....W ?58,ABME(21)
  1. ...I $Y+5>IOSL D HD Q:(IOST["C")&($G(Y)<0)
  1. ;
  1. K ABMBLCNT,ABMBTCNT
  1. W !
  1. F ABMI=12,13 D
  1. .I ABMI=12,$D(ABMB(ABMI)) D
  1. ..W !,"REQUEUED BILLS - "
  1. ..S ABMJ=0
  1. ..F S ABMJ=$O(ABMB(ABMI,ABMJ)) Q:+ABMJ=0 D
  1. ...S ABMDUZ2=$P(ABMB(ABMI,ABMJ),U,2)
  1. ...S ABMBDFN=$P(ABMB(ABMI,ABMJ),U,3)
  1. ...S ABME(21)=$P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,2)),U)
  1. ...S ABME(71)=$$SDT^ABMDUTL($P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,7)),U))
  1. ...S ABME(1)=$P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,0)),U)
  1. ...S ABME(3)=$P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,0)),U,3)
  1. ...S ABME(5)=$P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,0)),U,5)
  1. ...S ABME(15)=$$SDT^ABMDUTL($P($G(^ABMDBILL(ABMDUZ2,ABMBDFN,1)),U,5))
  1. ...S ABME("HRN")=$P($G(^AUPNPAT(+ABME(5),41,+ABMDUZ2,0)),U,2)
  1. ...S ABME("SUFFIX")=$P($G(^ABMDPARM(ABMDUZ2,1,2)),U,4)
  1. ...W !,ABME("SUFFIX"),?5,ABME(1),?16,ABME("HRN"),?24,$E($P($G(^DPT(+ABME(5),0)),U),1,22),?47,ABME(15)
  1. ...W ?58,ABME(71),?69,$J($FN(ABME(21),",",2),10)
  1. ..I $Y+5>IOSL D HD Q:Y=0
  1. .I ABMI=13,$D(ABMB(ABMI)) D
  1. ..W !,"REQUEUED EXPORTS - "
  1. ..S ABMJ=0
  1. ..F S ABMJ=$O(ABMB(ABMI,ABMJ)) Q:+ABMJ=0 D
  1. ...S ABMEIEN=$G(ABMB(ABMI,ABMJ))
  1. ...S ABMEDT=$$CDT^ABMDUTL($P($G(^ABMUTXMT(ABMEIEN,0)),U))
  1. ...S ABMFNM=$P($G(^ABMUTXMT(ABMEIEN,0)),U,2)
  1. ...W !,ABMEDT,?20,ABMFNM
  1. ..I $Y+5>IOSL D HD Q:Y=0
  1. Q
  1. QUE ;QUE TO TASKMAN
  1. S ZTRTN="PRINT^ABMUCASH"
  1. S ZTDESC="3P UFMS VIEW CASHIERING SESSION DETAIL"
  1. S ZTSAVE("ABM*")=""
  1. K ZTSK
  1. D ^%ZTLOAD
  1. W:$G(ZTSK) !,"Task # ",ZTSK," queued.",!
  1. Q
  1. ;
  1. ;start new code abm*2.6*11 insurer type
  1. INSTYP(X) ;PEP - returns insurer type name
  1. ; X = CODE (1)
  1. N ABMINS,ABMITYP
  1. S ABMINS=$O(^AUTTINTY("C",X,0))
  1. S ABMITYP=$$GET1^DIQ(9999999.181,ABMINS,".01","E")
  1. Q ABMITYP
  1. ;end new code insurer type