| 1 | IBCEM01 ;ALB/TMP - BATCH BILLS LIST TEMPLATE ;11-SEP-96 | 
|---|
| 2 | ;;2.0;INTEGRATED BILLING;**137,296**;21-MAR-94 | 
|---|
| 3 | ; | 
|---|
| 4 | INIT ; -- set up inital variables | 
|---|
| 5 | S VALMCNT=0,VALMBG=1 | 
|---|
| 6 | D BLD | 
|---|
| 7 | Q | 
|---|
| 8 | ; | 
|---|
| 9 | BLD ; -- build list of bills for batch entry # IBBDA | 
|---|
| 10 | Q:'$G(IBBDA) | 
|---|
| 11 | D REBLD | 
|---|
| 12 | Q | 
|---|
| 13 | ; | 
|---|
| 14 | REBLD ; Set up formatted global | 
|---|
| 15 | ; | 
|---|
| 16 | N IB,IBCNT,X,IB0,IB00,IBX,IBIFN,IBSTAT,IBSTAT1,IBZ | 
|---|
| 17 | K ^TMP("IBCEM-BABI",$J),^TMP("IBCEM-BABIDX",$J) | 
|---|
| 18 | S (VALMCNT,IBCNT)=0,IB="" | 
|---|
| 19 | F  S IB=$O(^IBA(364,"ABABI",IBBDA,IB)) Q:IB=""  S IBZ=0 F  S IBZ=$O(^IBA(364,"ABABI",IBBDA,IB,IBZ)) Q:'IBZ  S IB0=$G(^IBA(364,IBZ,0)),IB00=$G(^DGCR(399,+IB0,0)) D | 
|---|
| 20 | . S IBIFN=+$P(IB00,U,2),IBSTAT=$P(IB0,U,3),IBSTAT1=$P(IB00,U,13) | 
|---|
| 21 | . S IB("S")=$G(^DGCR(399,+IB0,"U")) | 
|---|
| 22 | . ; -- add to list | 
|---|
| 23 | . S IBCNT=IBCNT+1,X="" W:'(IBCNT#25) "." | 
|---|
| 24 | . S X=$$SETFLD^VALM1(IBCNT,X,"NUMBER") | 
|---|
| 25 | . S X=$$SETFLD^VALM1($S('$G(IBCEFUNC):"",1:$S($D(^TMP("IBNOT",$J,IBZ)):"*",$G(^TMP("IBEDI_TEST_BATCH",$J)):" ","RD"[IBSTAT!'IBSTAT1!(IBSTAT1=7):"#",1:" "))_$P(IB00,U),X,"BILLNO") | 
|---|
| 26 | . S X=$$SETFLD^VALM1($$EXPAND^IBTRE(399,.02,$P(IB00,U,2)),X,"PAT") | 
|---|
| 27 | . S X=$$SETFLD^VALM1($P($G(^DPT(+$P(IB00,U,2),0)),U,9),X,"SSN") | 
|---|
| 28 | . S X=$$SETFLD^VALM1($$FMTE^XLFDT($P(IB("S"),U),2)_"-"_$$FMTE^XLFDT($P(IB("S"),U,2),2),X,"DATES") | 
|---|
| 29 | . S X=$$SETFLD^VALM1($$EXPAND^IBTRE(399,.05,$P(IB00,U,5)),X,"TYPE") | 
|---|
| 30 | . S X=$$SETFLD^VALM1($$EXPAND^IBTRE(364,.03,$P(IB0,U,3)),X,"TSTAT") | 
|---|
| 31 | . D SET(X) | 
|---|
| 32 | ; | 
|---|
| 33 | I '$D(^TMP("IBCEM-BABI",$J)) S VALMCNT=2,IBCNT=2,^TMP("IBCEM-BABI",$J,1,0)=" ",^TMP("IBCEM-BABI",$J,2,0)="    No bills found for batch",^TMP("IBCEM-BABI",$J,"IDX",1,1)="",^TMP("IBCEM-BABI",$J,"IDX",2,2)="" | 
|---|
| 34 | Q | 
|---|
| 35 | ; | 
|---|
| 36 | EXIT ; -- Clean up list | 
|---|
| 37 | K ^TMP("IBCEM-BABIDX",$J),^TMP("IBCEM-BABI",$J),IBCEFUNC | 
|---|
| 38 | D CLEAR^VALM1,CLEAN^VALM10 | 
|---|
| 39 | Q | 
|---|
| 40 | ; | 
|---|
| 41 | HDR ; -- Sets up header | 
|---|
| 42 | N Z | 
|---|
| 43 | S Z=$G(^IBA(364.1,IBBDA,0)) | 
|---|
| 44 | S VALMHDR(1)="BATCH #: "_$P(Z,U)_"  "_$P(Z,U,8) | 
|---|
| 45 | S VALMHDR(2)=$S(IBCEFUNC:"     * = Bill excluded"_$S(IBCEFUNC=1:"       # = Bill not in correct status for resubmit",1:""),1:"     * = Bill not able to be edited") | 
|---|
| 46 | S VALMSG=$G(IBCE("VALMSG")) | 
|---|
| 47 | Q | 
|---|
| 48 | ; | 
|---|
| 49 | SET(X) ; -- set arrays for 837 return messages | 
|---|
| 50 | S VALMCNT=VALMCNT+1,^TMP("IBCEM-BABI",$J,VALMCNT,0)=X | 
|---|
| 51 | S ^TMP("IBCEM-BABI",$J,"IDX",VALMCNT,IBCNT)="" | 
|---|
| 52 | S ^TMP("IBCEM-BABIDX",$J,IBCNT)=VALMCNT_U_IB0 | 
|---|
| 53 | Q | 
|---|
| 54 | ; | 
|---|
| 55 | SEL ; Select batch bill entry(ies) from list | 
|---|
| 56 | N IBVAR,IBCT | 
|---|
| 57 | K IBDAB | 
|---|
| 58 | I $G(IBCEFUNC) D FULL^VALM1 | 
|---|
| 59 | D EN^VALM2($G(XQORNOD(0))) | 
|---|
| 60 | S (IBCT,IBDAB)=0 F  S IBDAB=$O(VALMY(IBDAB)) Q:'IBDAB  S IBVAR=$G(^TMP("IBCEM-BABIDX",$J,IBDAB)),IBDAB(IBDAB)=$P(IBVAR,U,2) I $G(IBCEFUNC) D | 
|---|
| 61 | . N Z,Z0,IBSTAT | 
|---|
| 62 | . S IBSTAT=$P($G(^DGCR(399,+IBDAB(IBDAB),0)),U,13) | 
|---|
| 63 | . S Z=+$O(^IBA(364,"ABABI",IBBDA,IBDAB(IBDAB),"")),Z0=$P($G(^DGCR(399,IBDAB(IBDAB),0)),U) | 
|---|
| 64 | . I $G(IBCEFUNC)'=2,"RD"[$P(IBVAR,U,4)!'IBSTAT!(IBSTAT=7) K IBDAB(IBDAB) W !,"Bill #: ",Z0," already excluded (not in correct status for resubmit)" Q | 
|---|
| 65 | . I $D(^TMP("IBNOT",$J,Z)) W !,"Bill #: ",Z0," has been included again" K ^TMP("IBNOT",$J,Z) S IBCT=IBCT-1 Q | 
|---|
| 66 | . S ^TMP("IBNOT",$J,Z)=IBDAB(IBDAB),IBCT=IBCT+1 W !,"Bill #: ",Z0," will be excluded" | 
|---|
| 67 | I $G(IBCEFUNC) D PAUSE^VALM1 | 
|---|
| 68 | S VALMBCK=$S('$G(IBCEFUNC):"Q",1:$S($O(VALMY("")):"R",1:"Q")) | 
|---|
| 69 | S ^TMP("IBNOT",$J)=IBCT | 
|---|
| 70 | I VALMBCK'="Q" D HDR,REBLD | 
|---|
| 71 | I VALMBCK="Q" D EXIT | 
|---|
| 72 | Q | 
|---|
| 73 | ; | 
|---|