1 | IB20PT62 ;ALB/AAS - Insurance post init stuff ; 2/22/93
|
---|
2 | ;;Version 2.0 ; INTEGRATED BILLING ;; 21-MAR-94
|
---|
3 | ;
|
---|
4 | W:'$D(ZTQUEUED) !!," I'll write a dot for each 100 entries"
|
---|
5 | ;
|
---|
6 | N IBTRNSF S IBTRNSF=0 I $O(^IBA(362.2,0)) S IBTRNSF=1 D DQ362
|
---|
7 | ;
|
---|
8 | DQ399 D NOW^%DTC S IBSCDT=%
|
---|
9 | N IBCIFN
|
---|
10 | W:'$D(ZTQUEUED) !!," Updating Bill/Claims file"
|
---|
11 | S (IBCIFN,IBCNT,IBCNTD)=0
|
---|
12 | F S IBCIFN=$O(^DGCR(399,IBCIFN)) Q:'IBCIFN D
|
---|
13 | .I +$G(^DGCR(399,IBCIFN,"M")),$P($G(^(0)),"^",2) S ^DGCR(399,"AE",$P(^(0),"^",2),+^("M"),IBCIFN)=""
|
---|
14 | .I +$P($G(^DGCR(399,IBCIFN,0)),U,13)=3 S ^DGCR(399,"AST",3,IBCIFN)=""
|
---|
15 | .I '$G(IBTRNSF),$D(^DGCR(399,IBCIFN,"C")) D MVDX
|
---|
16 | .I +$P($G(^DGCR(399,IBCIFN,0)),U,19)>1 D DXCPTCV
|
---|
17 | .S IBCNT=$G(IBCNT)+1 I '$D(ZTQUEUED) W:'(IBCNT#100) "."
|
---|
18 | S $P(^IBE(350.9,1,3),"^",19)=DT
|
---|
19 | D NOW^%DTC S IBECDT=%
|
---|
20 | I '$D(ZTQUEUED) W !," Completed!"
|
---|
21 | Q
|
---|
22 | ;
|
---|
23 | DQ362 ;transfer entries from 362.2 to 362.3
|
---|
24 | N IBDIFN,IBD,IBCIFN,IBDX,IBP,IBDA,IBCNT
|
---|
25 | I '$D(ZTQUEUED) W !!," Moving diagnosis to new file"
|
---|
26 | S IBCNT=0,IBDIFN=0 F S IBDIFN=$O(^IBA(362.2,IBDIFN)) Q:'IBDIFN D
|
---|
27 | .S IBD=$G(^IBA(362.2,IBDIFN,0))
|
---|
28 | .S IBCIFN=+IBD,IBDX=+$P(IBD,U,2),IBP=$P(IBD,U,3)
|
---|
29 | .I +IBCIFN,+IBDX D SETDX
|
---|
30 | .S IBCNT=IBCNT+1 I '$D(ZTQUEUED),'(IBCNT#100) W "."
|
---|
31 | S DIU="^IBA(362.2,",DIU(0)="D" D EN^DIU2 K DIU
|
---|
32 | I '$D(ZTQUEUED) W " Completed!"
|
---|
33 | Q
|
---|
34 | ;
|
---|
35 | DXCPTCV ;transfer/convert associated dx (399,304,7->399,304,10)
|
---|
36 | N IBCP,IBDX,IBDXP
|
---|
37 | L +^DGCR(399,IBCIFN)
|
---|
38 | S IBCP=0 F S IBCP=$O(^DGCR(399,IBCIFN,"CP",IBCP)) Q:'IBCP D
|
---|
39 | . S IBDX=+$P($G(^DGCR(399,IBCIFN,"CP",IBCP,0)),U,8) Q:'IBDX
|
---|
40 | . S IBDXP=$O(^IBA(362.3,"AIFN"_IBCIFN,IBDX,0)) Q:'IBDXP
|
---|
41 | . S $P(^DGCR(399,IBCIFN,"CP",IBCP,0),U,11)=IBDXP
|
---|
42 | L -^DGCR(399,IBCIFN)
|
---|
43 | Q
|
---|
44 | ;
|
---|
45 | MVDX ; -- move procedures from file 399 fields 64-68 to new file 362.2
|
---|
46 | ;
|
---|
47 | N IBC,IBDA,IBDX,IBP
|
---|
48 | S IBC=$G(^DGCR(399,IBCIFN,"C"))
|
---|
49 | F IBP=14:1:18 S IBDX=$P(IBC,"^",IBP) I IBDX D SETDX
|
---|
50 | Q
|
---|
51 | ;
|
---|
52 | SETDX Q:$D(^IBA(362.3,"AIFN"_IBCIFN,IBDX)) ; same diag for a bill not allowed
|
---|
53 | L +^IBA(362.3,0):10 Q:'$T
|
---|
54 | S IBDA=$P($G(^IBA(362.3,0)),"^",3)+1
|
---|
55 | L -^IBA(362.3,0)
|
---|
56 | F IBDA=IBDA:1 I '$D(^IBA(362.3,IBDA,0)) L +^IBA(362.3,IBDA) Q
|
---|
57 | S ^IBA(362.3,IBDA,0)=IBDX_"^"_IBCIFN_"^"_IBP
|
---|
58 | S ^IBA(362.3,"B",IBDX,IBDA)=""
|
---|
59 | S ^IBA(362.3,"AIFN"_IBCIFN,IBDX,IBDA)=""
|
---|
60 | I +IBP S ^IBA(362.3,"AO",IBCIFN,IBP,IBDA)=""
|
---|
61 | L -^IBA(362.3,IBDA)
|
---|
62 | L +^IBA(362.3,0):10
|
---|
63 | S $P(^IBA(362.3,0),"^",4)=$P(^IBA(362.3,0),"^",3)+1
|
---|
64 | S $P(^IBA(362.3,0),"^",3)=IBDA
|
---|
65 | L -^IBA(362.3,0)
|
---|
66 | S IBCNTD=$G(IBCNTD)+1
|
---|
67 | Q
|
---|