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 | ;
|
---|