- ABMDBAN ; IHS/SD/SDR - 3P Billing Banner ;
- ;;2.6;IHS Third Party Billing;**1,9,27**;NOV 12, 2009;Build 486
- ;ORIGINAL - TMD, BILLINGS AREA OFFICE
- ;
- ;IHS/SD/SDR 2.5*12 UFMS If user is logged into cashiering session and they are exiting TPB they should get a message letting
- ; them know they are still logged in. Also added warning msg for "outstanding" open and closed sessions.
- ;
- ;IHS/SD/SDR 2.6*1 NO HEAT Added patch# to menu header
- ;IHS/SD/SDR 2.6*27 CR8894 Added check for 3P Fee Table cleanup/correction message
- ;
- S ABMM(0)=$S($D(Y(0)):$P(Y(0),U,2),$D(XQY0):$P(XQY0,U,2),1:$P($G(^XUTL("XQ",$J,"S")),U,3))
- ;
- BEG ;
- G XIT:'$D(DUZ(2))
- S ABMM("SITE")=$P(^DIC(4,DUZ(2),0),"^",1)
- G XIT:$G(XQNO1)]""
- I '$D(IOF)!'$D(IO) S IOP="HOME" D ^%ZIS
- NCNV ;CONVERSION NOT COMPLETE
- I '$D(^ABMCNVRT("ABMCNVRT","COMPLETE")) D
- .W $$EN^ABMVDF("IOF")
- .W !!!,$$EN^ABMVDF("RVN"),*7,"WARNING:",$$EN^ABMVDF("RVF")
- .W " Version 2.0 conversion has NOT completed. Contact your Site Manager."
- .W !!,"Do not use package until conversion has completed."
- .F W ! Q:$Y+4>IOSL
- .S DIR(0)="E" D ^DIR K DIR
- W !,$$EN^ABMVDF("IOF"),!!
- I ABMM(0)["Third Party Billing" D
- .S ABMM(0)="Main Menu"
- .I '$D(ABMM("OUT")) S ABM("F1")=1
- W !?11,"+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+"
- W !?11,"|"
- S ABMM("VER")=$O(^DIC(9.4,"C","ABM",""))
- I ABMM("VER")]"",$D(^DIC(9.4,ABMM("VER"),"VERSION"))
- S ABMM("VER")=$S('$T:"VERSION 1.0",1:"VERSION "_^DIC(9.4,ABMM("VER"),"VERSION"))
- S ABMM("VER")=ABMM("VER")_$S(+$$LAST^ABMENVCK("IHS 3P BILLING SYSTEM",$P(ABMM("VER")," ",2))'=0:"p"_+$$LAST^ABMENVCK("IHS 3P BILLING SYSTEM",$P(ABMM("VER")," ",2)),1:"") ;abm*2.6*1 NO HEAT
- S ABMM("TITL")="THIRD PARTY BILLING SYSTEM - VER "_$P(ABMM("VER")," ",2) W ?80-$L(ABMM("TITL"))\2,ABMM("TITL"),?69,"|"
- W !,?11,"+",?80-$L(ABMM(0))\2,$$EN^ABMVDF("RVN"),ABMM(0),$$EN^ABMVDF("RVF"),?69,"+"
- W !?11,"|"
- W ?80-$L(ABMM("SITE"))\2,ABMM("SITE")
- W ?69,"|"
- ;
- END ;
- W !?11,"+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+"
- I $D(^VA(200,DUZ,0)) D
- .W !,?11,"User: ",$P(^VA(200,DUZ,0),U),?52+$S($E(DT,6,7)<10:1,1:0)
- .D NOW^%DTC
- .W $$MDT^ABMDUTL(%)
- I $G(ABM("F1")) D
- .S X2=+$G(^ABMDPARM(DUZ(2),1,2))
- .S X1=DT
- .D ^%DTC
- .I X>1!(X="") D
- ..S Y=+$G(^ABMDPARM(DUZ(2),1,2))
- ..D DD^%DT
- ..W !!,$$EN^ABMVDF("RVN"),*7,"WARNING:",$$EN^ABMVDF("RVF")," The Claim Generator has not run since ",Y,"."
- ..W !?9,"Contact your Site Manager to investigate this problem."
- .I $P($G(^ABMDPARM(DUZ(2),1,0)),U,15)'="Y" D
- ..W *7,!!?5,"SITE PARAMETERS have not yet been reviewed. Access to the Claim"
- ..W !?5,"Editor is prevented until they are! The Site Parameters can be",!?5,"reviewed through the Table Maintenace Menu."
- .D FINDAOPN^ABMUCUTL ;find all open sessions
- .S ABMFLG=0
- .S ABMSDT=0
- .F S ABMSDT=$O(ABMO(ABMSDT)) Q:+ABMSDT=0 D Q:ABMFLG=1
- ..I (DT)>($P(ABMSDT,".")) S ABMFLG=1
- .I $G(ABMFLG)=1 W !,"WARNING: Open cashiering sessions exist that should be reconciled for UFMS"
- .S ABMFLG="CLOSED"
- .D FINDACLS^ABMUCUTL ;find all closed sessions
- .I $D(ABMO) W !,"WARNING: Cashiering sessions are closed and awaiting export to UFMS"
- .;start new code abm*2.6*9 NOHEAT
- .I $P($G(^ABMDPARM(DUZ(2),1,4)),U,15)="" D
- ..W !!,$$EN^ABMVDF("RVN"),*7,"WARNING:",$$EN^ABMVDF("RVF")," UFMS PARAMETERS have not been completed."
- .;end new code
- .;start new abm*2.6*27 IHS/SD/SDR CR8894
- .I $$FEETBCHK()=1 D
- ..W !!,$$EN^ABMVDF("RVN"),*7,"WARNING:",$$EN^ABMVDF("RVF")," FEE SCHEDULES NEED TO BE REVIEWED/COMPLETED BEFORE ALL FEES WILL",!," BE ACCURATE"
- .;end new abm*2.6*27 IHS/SD/SDR CR8894
- K ABM("F1")
- ;
- XIT ;
- D EN^XBVK("ABM") ;local variable killer
- K X,Y,I,X1,X2,DUOUT,DTOUT,DIROUT,POP,ZTSK,ZTSAVE,ZTRTN,ZTDESC,%ZIS,TO,FR,BY,FLDS,PG,DIR,DIC,DIE,DIK,DA,DR,L,%X,%Y
- Q
- ;
- OUT ;EP - Entry Point for all Option Exits
- K DIQ
- S ABMM(0)=$S($G(^XUTL("XQ",$J,"T")):$P($G(^XUTL("XQ",$J,^("T")-1)),U,3),1:"")
- I $P($G(Y(0)),U)="ABMMENU"!($P($G(XQY0),U)="ABMMENU") D SESSCK G XIT
- S ABMM("OUT")=""
- G BEG
- ;
- SESSCK ;EP - Check if user has open session for UFMS
- S ABMUOPNS=$$FINDOPEN^ABMUCUTL(DUZ)
- I +$G(ABMUOPNS)'=0 D
- .W !!,"NOTE: You are still logged into your cashiering session. To Close"
- .W !?6,"your session select Cashiering Options (UCSH), then Cashiering Sign In/"
- .W !?6,"Sign Out (CIO).",!
- .S DIR(0)="E",DIR("A")="Enter RETURN to Continue" D ^DIR K DIR
- Q
- ;start new abm*2.6*27 IHS/SD/SDR CR8894
- FEETBCHK() ;EP
- S ABMT=0
- S ABMT("TB")=0
- F S ABMT("TB")=$O(^ABMDFEE(ABMT("TB"))) Q:'ABMT("TB") D
- .I $P($G(^ABMDFEE(ABMT("TB"),0)),U,6)="" S ABMT=1
- Q ABMT
- ;end new abm*2.6*27 IHS/SD/SDR CR8894
- ABMDBAN ; IHS/SD/SDR - 3P Billing Banner ;
- +1 ;;2.6;IHS Third Party Billing;**1,9,27**;NOV 12, 2009;Build 486
- +2 ;ORIGINAL - TMD, BILLINGS AREA OFFICE
- +3 ;
- +4 ;IHS/SD/SDR 2.5*12 UFMS If user is logged into cashiering session and they are exiting TPB they should get a message letting
- +5 ; them know they are still logged in. Also added warning msg for "outstanding" open and closed sessions.
- +6 ;
- +7 ;IHS/SD/SDR 2.6*1 NO HEAT Added patch# to menu header
- +8 ;IHS/SD/SDR 2.6*27 CR8894 Added check for 3P Fee Table cleanup/correction message
- +9 ;
- +10 SET ABMM(0)=$SELECT($DATA(Y(0)):$PIECE(Y(0),U,2),$DATA(XQY0):$PIECE(XQY0,U,2),1:$PIECE($GET(^XUTL("XQ",$JOB,"S")),U,3))
- +11 ;
- BEG ;
- +1 IF '$DATA(DUZ(2))
- GOTO XIT
- +2 SET ABMM("SITE")=$PIECE(^DIC(4,DUZ(2),0),"^",1)
- +3 IF $GET(XQNO1)]""
- GOTO XIT
- +4 IF '$DATA(IOF)!'$DATA(IO)
- SET IOP="HOME"
- DO ^%ZIS
- NCNV ;CONVERSION NOT COMPLETE
- +1 IF '$DATA(^ABMCNVRT("ABMCNVRT","COMPLETE"))
- Begin DoDot:1
- +2 WRITE $$EN^ABMVDF("IOF")
- +3 WRITE !!!,$$EN^ABMVDF("RVN"),*7,"WARNING:",$$EN^ABMVDF("RVF")
- +4 WRITE " Version 2.0 conversion has NOT completed. Contact your Site Manager."
- +5 WRITE !!,"Do not use package until conversion has completed."
- +6 FOR
- WRITE !
- IF $Y+4>IOSL
- QUIT
- +7 SET DIR(0)="E"
- DO ^DIR
- KILL DIR
- End DoDot:1
- +8 WRITE !,$$EN^ABMVDF("IOF"),!!
- +9 IF ABMM(0)["Third Party Billing"
- Begin DoDot:1
- +10 SET ABMM(0)="Main Menu"
- +11 IF '$DATA(ABMM("OUT"))
- SET ABM("F1")=1
- End DoDot:1
- +12 WRITE !?11,"+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+"
- +13 WRITE !?11,"|"
- +14 SET ABMM("VER")=$ORDER(^DIC(9.4,"C","ABM",""))
- +15 IF ABMM("VER")]""
- IF $DATA(^DIC(9.4,ABMM("VER"),"VERSION"))
- +16 SET ABMM("VER")=$SELECT('$TEST:"VERSION 1.0",1:"VERSION "_^DIC(9.4,ABMM("VER"),"VERSION"))
- +17 ;abm*2.6*1 NO HEAT
- SET ABMM("VER")=ABMM("VER")_$SELECT(+$$LAST^ABMENVCK("IHS 3P BILLING SYSTEM",$PIECE(ABMM("VER")," ",2))'=0:"p"_+$$LAST^ABMENVCK("IHS 3P BILLING SYSTEM",$PIECE(ABMM("VER")," ",2)),1:"")
- +18 SET ABMM("TITL")="THIRD PARTY BILLING SYSTEM - VER "_$PIECE(ABMM("VER")," ",2)
- WRITE ?80-$LENGTH(ABMM("TITL"))\2,ABMM("TITL"),?69,"|"
- +19 WRITE !,?11,"+",?80-$LENGTH(ABMM(0))\2,$$EN^ABMVDF("RVN"),ABMM(0),$$EN^ABMVDF("RVF"),?69,"+"
- +20 WRITE !?11,"|"
- +21 WRITE ?80-$LENGTH(ABMM("SITE"))\2,ABMM("SITE")
- +22 WRITE ?69,"|"
- +23 ;
- END ;
- +1 WRITE !?11,"+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+"
- +2 IF $DATA(^VA(200,DUZ,0))
- Begin DoDot:1
- +3 WRITE !,?11,"User: ",$PIECE(^VA(200,DUZ,0),U),?52+$SELECT($EXTRACT(DT,6,7)<10:1,1:0)
- +4 DO NOW^%DTC
- +5 WRITE $$MDT^ABMDUTL(%)
- End DoDot:1
- +6 IF $GET(ABM("F1"))
- Begin DoDot:1
- +7 SET X2=+$GET(^ABMDPARM(DUZ(2),1,2))
- +8 SET X1=DT
- +9 DO ^%DTC
- +10 IF X>1!(X="")
- Begin DoDot:2
- +11 SET Y=+$GET(^ABMDPARM(DUZ(2),1,2))
- +12 DO DD^%DT
- +13 WRITE !!,$$EN^ABMVDF("RVN"),*7,"WARNING:",$$EN^ABMVDF("RVF")," The Claim Generator has not run since ",Y,"."
- +14 WRITE !?9,"Contact your Site Manager to investigate this problem."
- End DoDot:2
- +15 IF $PIECE($GET(^ABMDPARM(DUZ(2),1,0)),U,15)'="Y"
- Begin DoDot:2
- +16 WRITE *7,!!?5,"SITE PARAMETERS have not yet been reviewed. Access to the Claim"
- +17 WRITE !?5,"Editor is prevented until they are! The Site Parameters can be",!?5,"reviewed through the Table Maintenace Menu."
- End DoDot:2
- +18 ;find all open sessions
- DO FINDAOPN^ABMUCUTL
- +19 SET ABMFLG=0
- +20 SET ABMSDT=0
- +21 FOR
- SET ABMSDT=$ORDER(ABMO(ABMSDT))
- IF +ABMSDT=0
- QUIT
- Begin DoDot:2
- +22 IF (DT)>($PIECE(ABMSDT,"."))
- SET ABMFLG=1
- End DoDot:2
- IF ABMFLG=1
- QUIT
- +23 IF $GET(ABMFLG)=1
- WRITE !,"WARNING: Open cashiering sessions exist that should be reconciled for UFMS"
- +24 SET ABMFLG="CLOSED"
- +25 ;find all closed sessions
- DO FINDACLS^ABMUCUTL
- +26 IF $DATA(ABMO)
- WRITE !,"WARNING: Cashiering sessions are closed and awaiting export to UFMS"
- +27 ;start new code abm*2.6*9 NOHEAT
- +28 IF $PIECE($GET(^ABMDPARM(DUZ(2),1,4)),U,15)=""
- Begin DoDot:2
- +29 WRITE !!,$$EN^ABMVDF("RVN"),*7,"WARNING:",$$EN^ABMVDF("RVF")," UFMS PARAMETERS have not been completed."
- End DoDot:2
- +30 ;end new code
- +31 ;start new abm*2.6*27 IHS/SD/SDR CR8894
- +32 IF $$FEETBCHK()=1
- Begin DoDot:2
- +33 WRITE !!,$$EN^ABMVDF("RVN"),*7,"WARNING:",$$EN^ABMVDF("RVF")," FEE SCHEDULES NEED TO BE REVIEWED/COMPLETED BEFORE ALL FEES WILL",!," BE ACCURATE"
- End DoDot:2
- +34 ;end new abm*2.6*27 IHS/SD/SDR CR8894
- End DoDot:1
- +35 KILL ABM("F1")
- +36 ;
- XIT ;
- +1 ;local variable killer
- DO EN^XBVK("ABM")
- +2 KILL X,Y,I,X1,X2,DUOUT,DTOUT,DIROUT,POP,ZTSK,ZTSAVE,ZTRTN,ZTDESC,%ZIS,TO,FR,BY,FLDS,PG,DIR,DIC,DIE,DIK,DA,DR,L,%X,%Y
- +3 QUIT
- +4 ;
- OUT ;EP - Entry Point for all Option Exits
- +1 KILL DIQ
- +2 SET ABMM(0)=$SELECT($GET(^XUTL("XQ",$JOB,"T")):$PIECE($GET(^XUTL("XQ",$JOB,^("T")-1)),U,3),1:"")
- +3 IF $PIECE($GET(Y(0)),U)="ABMMENU"!($PIECE($GET(XQY0),U)="ABMMENU")
- DO SESSCK
- GOTO XIT
- +4 SET ABMM("OUT")=""
- +5 GOTO BEG
- +6 ;
- SESSCK ;EP - Check if user has open session for UFMS
- +1 SET ABMUOPNS=$$FINDOPEN^ABMUCUTL(DUZ)
- +2 IF +$GET(ABMUOPNS)'=0
- Begin DoDot:1
- +3 WRITE !!,"NOTE: You are still logged into your cashiering session. To Close"
- +4 WRITE !?6,"your session select Cashiering Options (UCSH), then Cashiering Sign In/"
- +5 WRITE !?6,"Sign Out (CIO).",!
- +6 SET DIR(0)="E"
- SET DIR("A")="Enter RETURN to Continue"
- DO ^DIR
- KILL DIR
- End DoDot:1
- +7 QUIT
- +8 ;start new abm*2.6*27 IHS/SD/SDR CR8894
- FEETBCHK() ;EP
- +1 SET ABMT=0
- +2 SET ABMT("TB")=0
- +3 FOR
- SET ABMT("TB")=$ORDER(^ABMDFEE(ABMT("TB")))
- IF 'ABMT("TB")
- QUIT
- Begin DoDot:1
- +4 IF $PIECE($GET(^ABMDFEE(ABMT("TB"),0)),U,6)=""
- SET ABMT=1
- End DoDot:1
- +5 QUIT ABMT
- +6 ;end new abm*2.6*27 IHS/SD/SDR CR8894