1 | IBAXDR ;SF-IRMFO/JLI,REM - ROUTINE TO MERGE ENTRIES IN IB FILE FOR PATIENT MERGE ;3/9/98 13:35
|
---|
2 | ;;2.0;INTEGRATED BILLING;**94**;21-MAR-94
|
---|
3 | ;;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
4 | ;;
|
---|
5 | ;;
|
---|
6 | EN(ARRAY) ; Entry point called with NAME of array containing from, and to entries.
|
---|
7 | ;
|
---|
8 | N XARRAY,IBDIC,FROMX,TO,FROMX1,TO1,FROM,FRX,TOX
|
---|
9 | S XARRAY=$NA(^TMP($J,"IBDUMR1"))
|
---|
10 | K @XARRAY
|
---|
11 | S FROM=XARRAY
|
---|
12 | S IBDIC=$G(^DIC(351.1,0,"GL"))
|
---|
13 | I IBDIC="" Q
|
---|
14 | F FROMX=0:0 S FROMX=$O(@ARRAY@(FROMX)) Q:FROMX'>0 D
|
---|
15 | . S TO=$O(@ARRAY@(FROMX,0))
|
---|
16 | . S FROMX1=$O(@(IBDIC_"""B"",FROMX,0)"))
|
---|
17 | . S TO1=$O(@(IBDIC_"""B"",TO,0)"))
|
---|
18 | . I TO1="",FROMX1="" Q
|
---|
19 | . S TO1=$S(TO1>0:TO1,1:0),FROMX1=$S(FROMX1>0:FROMX1,1:0)
|
---|
20 | . S FRX=$O(@ARRAY@(FROMX,TO,"")),TOX=$O(@ARRAY@(FROMX,TO,FRX,TOX))
|
---|
21 | . S @XARRAY@(FROMX1,TO1,FRX,TOX)=""
|
---|
22 | . I FROMX1=0 D Q
|
---|
23 | . . D SAVEMERG^XDRMERGB(351.1,FROMX1,TO1)
|
---|
24 | . . K @XARRAY@(FROMX1,TO1)
|
---|
25 | . I TO1=0 D Q
|
---|
26 | . . D SAVEMERG^XDRMERGB(351.1,FROMX1,TO1)
|
---|
27 | . . K @XARRAY@(FROMX1,TO1)
|
---|
28 | . . N IBDXXX
|
---|
29 | . . S IBDXXX(351.1,(FROMX1_","),.01)=TO
|
---|
30 | . . D UPDATE^DIE("","IBDXXX")
|
---|
31 | I '$D(@XARRAY) Q
|
---|
32 | D EN^XDRMERG(351.1,"XARRAY") ; NOW CONVERT ANY POINTERS TO THE MERGED ENTRIES
|
---|
33 | S IBDIC=$G(^DIC(351.1,0,"GL"))
|
---|
34 | I IBDIC'="" D
|
---|
35 | . F FROMX=0:0 S FROMX=$O(@XARRAY@(FROMX)) Q:FROMX'>0 K @(IBDIC_FROMX_")")
|
---|
36 | Q
|
---|