1 | IBCF ;ALB/RLW - task 1500/UB printing ;12-JUN-92
|
---|
2 | ;;2.0;INTEGRATED BILLING;**33,63,52,121,51,137,349**;21-MAR-94;Build 46
|
---|
3 | ;;Per VHA Directive 2004-038, this routine should not be modified.
|
---|
4 | ;
|
---|
5 | EN1 ; call appropriate print routine for the claim form type to be printed
|
---|
6 | K IBRESUB
|
---|
7 | ;
|
---|
8 | EN1X ; Entrypoint for reprint (IBRESUB will be defined)
|
---|
9 | N IBF,IB,IBFORM,IBJ
|
---|
10 | S IB=$$FT^IBCU3(IBIFN) ; form type ien (2 or 3)
|
---|
11 | S IBFT=$$FTN^IBCU3(IB) ; form type name
|
---|
12 | S IBF=$P($G(^IBE(353,+IB,2)),U,8)
|
---|
13 | S:IBF="" IBF=IB ;Forces the use of the output formatter to print bills
|
---|
14 | D ENFMT(IBIFN,IB,IBF,,$G(IBRESUB))
|
---|
15 | END K IBFT,IBRESUB
|
---|
16 | Q
|
---|
17 | ;
|
---|
18 | EN2 ; send to default A/R device
|
---|
19 | S ZTDTH=$H,IBIFN=PRCASV("ARREC"),IBPNT=PRCASV("NOTICE")
|
---|
20 | D FORM S (IBFORM1,ZTDESC)="FOLLOW-UP AR FORM "_$P($G(^IBE(353,+IBFT,0)),"^")
|
---|
21 | D QUEUE
|
---|
22 | Q
|
---|
23 | ;
|
---|
24 | EN3 ;queue an Rx Addendum for a bill, IBIFN must be defined
|
---|
25 | Q:'$D(^DGCR(399,+$G(IBIFN),0)) I '$D(^IBA(362.4,"AIFN"_+IBIFN)),'$D(^IBA(362.5,"AIFN"_+IBIFN)) Q
|
---|
26 | N IBFT S IBFT=$$FNT^IBCU3("BILL ADDENDUM") Q:'IBFT S (IBFORM1,ZTDESC)="BILL ADDENDUM FOR "_$P(^DGCR(399,+IBIFN,0),U,1)
|
---|
27 | S ZTSAVE("IB*")="",ZTDTH=$H
|
---|
28 | S ZTIO=$P($G(^IBE(353,IBFT,0)),"^",2),ZTRTN=$G(^IBE(353,IBFT,1)) I (ZTIO="")!(ZTRTN="") K ZTDESC,ZTSAVE,ZTDTH,ZTIO,ZTRTN Q
|
---|
29 | D ^%ZTLOAD
|
---|
30 | Q
|
---|
31 | ;
|
---|
32 | EN4 ;queue bills, IBIFN must be defined
|
---|
33 | S ZTDTH=$H,IBPNT=1 Q:'$D(^DGCR(399,+$G(IBIFN),0))
|
---|
34 | D FORM
|
---|
35 | S IBF=$P($G(^IBE(353,+IBFT,2)),U,8)
|
---|
36 | I $P($G(^IBE(353,+IBFT,0)),U,2)="",IBF="" Q
|
---|
37 | S (IBFORM1,ZTDESC)=$P($G(^IBE(353,+IBFT,0)),"^")_" BILL "_$P(^DGCR(399,+IBIFN,0),U,1)
|
---|
38 | S ZTSAVE("IB*")=""
|
---|
39 | S ZTIO=$P($G(^IBE(353,IBFT,0)),"^",2),ZTRTN=$S(IBF="":$G(^IBE(353,IBFT,1)),1:"ENFMT^IBCF(IBIFN,IBFT,IBF,ZTIO,$G(IBRESUB))")
|
---|
40 | I (ZTIO="")!(ZTRTN="") S IBAR("ERR")="BILL FORM TYPE NOT COMPLETE FOR"_IBFORM1 Q
|
---|
41 | D ^%ZTLOAD I '$D(ZTSK) S IBAR("ERR")="QUEUEING OF "_IBFORM1_" FAILED",IBAR("OKAY")=0 W IBAR("ERR") Q
|
---|
42 | S IBAR("OKAY")=1
|
---|
43 | Q
|
---|
44 | ;
|
---|
45 | EN5 ;queue 1500 Rx Addendum to Follow-up (AR) printer, IBIFN must be defined - no longer used
|
---|
46 | Q:'$D(^DGCR(399,+$G(IBIFN),0)) I '$D(^IBA(362.4,"AIFN"_+IBIFN)),'$D(^IBA(362.5,"AIFN"_+IBIFN)) Q
|
---|
47 | Q:$$FT^IBCU3(IBIFN)'=2
|
---|
48 | N IBFT S IBFT=$$FNT^IBCU3("BILL ADDENDUM") Q:'IBFT S (IBFORM1,ZTDESC)="BILL ADDENDUM FOR "_$P(^DGCR(399,+IBIFN,0),U,1)
|
---|
49 | S ZTSAVE("IB*")="",ZTDTH=$H
|
---|
50 | S ZTIO=$P($G(^IBE(353,IBFT,0)),"^",3),ZTRTN=$G(^IBE(353,IBFT,1)) I (ZTIO="")!(ZTRTN="") K ZTDESC,ZTSAVE,ZTDTH,ZTIO,ZTRTN Q
|
---|
51 | D ^%ZTLOAD
|
---|
52 | Q
|
---|
53 | ;
|
---|
54 | ENFMT(IBIFN,IB,IBF,ZTIO,IBRESUB) ; Use formatter to print bill IBIFN
|
---|
55 | N IBFT,IBFTP,IBFORM,IBJ
|
---|
56 | S (IBFT,IBFORM)=IB,IBFTP="IBCFP"_IB,IBJ=$J
|
---|
57 | K ^XTMP(IBFTP,$J),^TMP("IBQONE",$J)
|
---|
58 | S ^XTMP(IBFTP,$J,1,1,1,IBIFN)="",^TMP("IBQONE",$J)=""
|
---|
59 | D FORM^IBCEFG7(IBF,$G(ZTIO))
|
---|
60 | I $G(IBRESUB) D
|
---|
61 | . N IBDA
|
---|
62 | . S IBDA=$$LAST364^IBCEF4(IBIFN)
|
---|
63 | . I IBDA D UPDEDI^IBCEM(IBDA,"P")
|
---|
64 | K ^TMP("IBQONE",$J)
|
---|
65 | I IBFT'=3 D EN3
|
---|
66 | Q
|
---|
67 | ;
|
---|
68 | FORM ;
|
---|
69 | S IBFT=$$FT^IBCU3(IBIFN)
|
---|
70 | Q
|
---|
71 | QUEUE ;
|
---|
72 | S IBF=$P($G(^IBE(353,+IBFT,2)),U,8)
|
---|
73 | S ZTSAVE("IB*")=""
|
---|
74 | S ZTIO=$P($G(^IBE(353,IBFT,0)),"^",3),ZTRTN=$S(IBF="":$G(^IBE(353,IBFT,1)),1:"ENFMT^IBCF(IBIFN,IBFT,IBF,ZTIO,$G(IBRESUB))")
|
---|
75 | I ((ZTIO="")&(IBF=""))!(ZTRTN="") S IBAR("ERR")="BILL FORM TYPE NOT COMPLETE FOR"_IBFORM1 Q
|
---|
76 | D ^%ZTLOAD I '$D(ZTSK) S IBAR("ERR")="QUEUEING OF "_IBFORM1_" FAILED",IBAR("OKAY")=0 W IBAR("ERR") Q
|
---|
77 | S IBAR("OKAY")=1
|
---|
78 | Q
|
---|
79 | ;
|
---|
80 | DISPX ; call to exclude transmittable bills
|
---|
81 | D DISP1(1)
|
---|
82 | Q
|
---|
83 | ;
|
---|
84 | DISP ; call to include all bills
|
---|
85 | D DISP1(0)
|
---|
86 | Q
|
---|
87 | ;
|
---|
88 | DISP1(IBTX) ;print list of authorized bills - exclude transmittables if
|
---|
89 | ; IBTX=1
|
---|
90 | N IBIFN,IBC,Y
|
---|
91 | S IBIFN=0,IBC=0,Y="" W !
|
---|
92 | F S IBIFN=$O(^DGCR(399,"AST",3,IBIFN)) Q:'IBIFN S IBX=$G(^DGCR(399,IBIFN,0)) I IBX'="" D Q:Y="^"
|
---|
93 | . I $G(IBTX) D Q:IBX=""
|
---|
94 | .. N Z
|
---|
95 | .. S Z=0 F S Z=$O(^IBA(364,"B",IBIFN,Z)) Q:'Z I $D(^IBA(364,"ASTAT","X",Z)) S IBX="" Q
|
---|
96 | . W !,$P(IBX,U,1),?10,$E($P($G(^DPT(+$P(IBX,U,2),0)),U,1),1,20),?32,$$DATE^IBCFP(+$P(IBX,U,3)),?42,$S(+$P(IBX,U,5)<3:"INPT",1:"OUTPT")
|
---|
97 | . W ?49,$P($G(^DGCR(399.3,+$P(IBX,U,7),0)),U,4),?59,$E($$EXSET^IBEFUNC(+$P(IBX,U,13),399,.13),1,7),?68,$E($$FTN^IBCU3($$FT^IBCU3(IBIFN)),1,11)
|
---|
98 | . S IBC=IBC+1 I '(IBC#10) R !,"Press RETURN to continue or '^' to exit: ",Y:DTIME
|
---|
99 | Q
|
---|
100 | ;
|
---|
101 | DISPT ;print list of all bills awaiting transmission
|
---|
102 | N IBI,IBIFN,IBC,Y S (IBC,IBI)=0,Y="" W !
|
---|
103 | F S IBI=$O(^IBA(364,"ASTAT","X",IBI)) Q:'IBI S IBIFN=+$G(^IBA(364,+IBI,0)),IBX=$G(^DGCR(399,IBIFN,0)) I IBX'="" D Q:Y="^"
|
---|
104 | . W !,$P(IBX,U,1),?10,$E($P($G(^DPT(+$P(IBX,U,2),0)),U,1),1,20),?32,$$DATE^IBCFP(+$P(IBX,U,3)),?42,$S(+$P(IBX,U,5)<3:"INPT",1:"OUTPT")
|
---|
105 | . W ?49,$P($G(^DGCR(399.3,+$P(IBX,U,7),0)),U,4),?59,$E($$EXSET^IBEFUNC(+$P(IBX,U,13),399,.13),1,7),?68,$E($$FTN^IBCU3($$FT^IBCU3(IBIFN)),1,11)
|
---|
106 | . S IBC=IBC+1 I '(IBC#10) R !,"Press RETURN to continue or '^' to exit: ",Y:DTIME
|
---|
107 | Q
|
---|
108 | ;
|
---|