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