[613] | 1 | RCBDXREF ;WISC/RFJ-fix cross references ;1 Jan 01
|
---|
| 2 | ;;4.5;Accounts Receivable;**165**;Mar 20, 1995
|
---|
| 3 | ;;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
| 4 | Q
|
---|
| 5 | ;
|
---|
| 6 | ;
|
---|
| 7 | FIXATD ; fix atd x-ref
|
---|
| 8 | ;
|
---|
| 9 | N DATE,DEBT,RCBILLDA,RCDATE,RCDEBTDA
|
---|
| 10 | ;
|
---|
| 11 | ; loop current x-refs and see if any should be removed
|
---|
| 12 | S RCDEBTDA=0 F S RCDEBTDA=$O(^PRCA(430,"ATD",RCDEBTDA)) Q:'RCDEBTDA D
|
---|
| 13 | . ;
|
---|
| 14 | . ; not a first party account
|
---|
| 15 | . I $P($G(^RCD(340,RCDEBTDA,0)),"^")'["DPT(" D Q
|
---|
| 16 | . . W !,"Not a correct XREF. KILL ^PRCA(430,""ATD"",",RCDEBTDA,")"
|
---|
| 17 | . . K ^PRCA(430,"ATD",RCDEBTDA)
|
---|
| 18 | . ;
|
---|
| 19 | . S RCDATE=0 F S RCDATE=$O(^PRCA(430,"ATD",RCDEBTDA,RCDATE)) Q:'RCDATE D
|
---|
| 20 | . . S RCBILLDA=0 F S RCBILLDA=$O(^PRCA(430,"ATD",RCDEBTDA,RCDATE,RCBILLDA)) Q:'RCBILLDA D
|
---|
| 21 | . . . S DATE=+$P($G(^PRCA(430,RCBILLDA,6)),"^",21)
|
---|
| 22 | . . . S DEBT=+$P($G(^PRCA(430,RCBILLDA,0)),"^",9)
|
---|
| 23 | . . . I RCDEBTDA'=DEBT!(RCDATE'=DATE) D
|
---|
| 24 | . . . . W !,"Not a correct XREF. KILL ^PRCA(430,""ATD"",",RCDEBTDA,",",RCDATE,",",RCBILLDA,")"
|
---|
| 25 | . . . . K ^PRCA(430,"ATD",RCDEBTDA,RCDATE,RCBILLDA)
|
---|
| 26 | ;
|
---|
| 27 | ; loop all bills and make sure x-ref is set
|
---|
| 28 | S RCBILLDA=0 F S RCBILLDA=$O(^PRCA(430,RCBILLDA)) Q:'RCBILLDA D
|
---|
| 29 | . S RCDATE=+$P($G(^PRCA(430,RCBILLDA,6)),"^",21) I 'RCDATE Q
|
---|
| 30 | . S RCDEBTDA=+$P($G(^PRCA(430,RCBILLDA,0)),"^",9) I 'RCDEBTDA Q
|
---|
| 31 | . ;
|
---|
| 32 | . ; not a first party account
|
---|
| 33 | . I $P($G(^RCD(340,RCDEBTDA,0)),"^")'["DPT(" Q
|
---|
| 34 | . ;
|
---|
| 35 | . I '$D(^PRCA(430,"ATD",RCDEBTDA,RCDATE,RCBILLDA)) D
|
---|
| 36 | . . W !,"Missing XREF. SET ^PRCA(430,""ATD"",",RCDEBTDA,",",RCDATE,",",RCBILLDA,")"
|
---|
| 37 | . . S ^PRCA(430,"ATD",RCDEBTDA,RCDATE,RCBILLDA)=""
|
---|
| 38 | Q
|
---|