| 1 | RCRCVCK ;ALB/CMS - TP POSSIBLE REFERRAL LIST CHECK ; 09/02/97 | 
|---|
| 2 | V ;;4.5;Accounts Receivable;**63,122,189**;Mar 20, 1995 | 
|---|
| 3 | ;;Per VHA Directive 10-93-142, this routine should not be modified. | 
|---|
| 4 | ; | 
|---|
| 5 | Q | 
|---|
| 6 | EN ;Entry point from protocol | 
|---|
| 7 | N PRCABN,RCA,RCMSG,RCOK,RCY S RCY=0,RCA="" | 
|---|
| 8 | D FULL^VALM1 | 
|---|
| 9 | I '$O(^TMP("RCRCVL",$J,"SEL",RCY)) W !!,"NOTHING TO VALIDATE!",!,"No selected items from list." G ENQ | 
|---|
| 10 | W !!,"Checking all bill(s) on highlighted Selection List " | 
|---|
| 11 | F  S RCY=$O(^TMP("RCRCVL",$J,"SEL",RCY)) Q:'RCY  D | 
|---|
| 12 | .S PRCABN=$P($G(^TMP("RCRCVLX",$J,RCY)),U,2) | 
|---|
| 13 | .I 'PRCABN Q | 
|---|
| 14 | .S RCMSG="" | 
|---|
| 15 | .D CHK(PRCABN,.RCMSG,0) | 
|---|
| 16 | .I RCMSG]"" S RCA(PRCABN,RCY)=RCMSG | 
|---|
| 17 | .W "." | 
|---|
| 18 | ; | 
|---|
| 19 | I '$O(RCA(0)) W !,"Everything is Okay!" G ENQ | 
|---|
| 20 | D CHKD | 
|---|
| 21 | ENQ D PAUSE^VALM1 S VALMBCK="R" | 
|---|
| 22 | Q | 
|---|
| 23 | ; | 
|---|
| 24 | RCINFO(PRCABN) ; get new info for *189 to refer bills | 
|---|
| 25 | N DIE,DA,DR | 
|---|
| 26 | W !,"Bill No.: ",$P($G(^PRCA(430,PRCABN,0)),"^") | 
|---|
| 27 | S DIE="^PRCA(430,",DA=PRCABN,DR="[PRCAC RC INFO]" D ^DIE | 
|---|
| 28 | S PRCA("REF REASON")=$P($G(^PRCA(430,PRCABN,6)),"^",22,23) | 
|---|
| 29 | I PRCA("REF REASON")'["^" S PRCA("REF REASON")=PRCA("REF REASON")_"^" | 
|---|
| 30 | Q | 
|---|
| 31 | ; | 
|---|
| 32 | CHK(PRCABN,COM,RCS) ;Validate Bill for Electronic Referral | 
|---|
| 33 | ;Return: COM Comments if didn't pass | 
|---|
| 34 | ;Return: RCCAT(,DFN,PRCA(,VA(,VADM(,VAPD( if transmitting | 
|---|
| 35 | N I,RCY,X,Y | 
|---|
| 36 | ;if calling from RCRCXM1 do not new variables | 
|---|
| 37 | I 'RCS N DFN,PRCA,RCCAT,VA,VADM,VAPA | 
|---|
| 38 | D RCCAT^RCRCUTL(.RCCAT) | 
|---|
| 39 | D BNVAR^RCRCUTL(PRCABN) | 
|---|
| 40 | I '$G(PRCABN) S COM="Not a valid Bill Number." G CHKQ | 
|---|
| 41 | I '$G(PRCA("CAT")) S COM="Bill Category not entered." G CHKQ | 
|---|
| 42 | I +PRCA("STATUS")'=16 S COM="Bill Status is not Active." G CHKQ | 
|---|
| 43 | D DEBT^RCRCUTL(PRCABN) | 
|---|
| 44 | I $G(PRCA("DEBTNM"))="" S COM="No Debtor Name." G CHKQ | 
|---|
| 45 | I "ZZzzZ-z-"[$E(PRCA("DEBTNM"),1,2) S COM="Debtor Name starts with "_$E(PRCA("DEBTNM"),1,2) G CHKQ | 
|---|
| 46 | S DFN=+$P(^PRCA(430,PRCABN,0),U,7) | 
|---|
| 47 | I 'DFN S COM="No Patient Information." G CHKQ | 
|---|
| 48 | D DEM^VADPT,ADD^VADPT | 
|---|
| 49 | I "ZZzzZ-z-"[$E(VADM(1),1,2) S COM="Patient name starts with "_$E(VADM(1),1,2) G CHKQ | 
|---|
| 50 | I $E(VADM(2),1,5)="00000" S COM="Test Patient." G CHKQ | 
|---|
| 51 | S RCY=$$BILL^RCJIBFN2(PRCABN) | 
|---|
| 52 | I '$P(RCY,U,3) S COM="No Current Balance." G CHKQ | 
|---|
| 53 | I $G(^DGCR(399,PRCABN,0))="" S COM="No Bill Claim Information." G CHKQ | 
|---|
| 54 | I 'RCS,$G(RCCAT(+PRCA("CAT")))'=1 S COM=$P(PRCA("CAT"),U,2)_" bills can be referred, but not electronically." | 
|---|
| 55 | D RCINFO(PRCABN) I 'PRCA("REF REASON") S COM="RC Referal Reason Code is REQUIRED" G CHKQ | 
|---|
| 56 | I +PRCA("REF REASON")=5,'$L($P(PRCA("REF REASON"),"^",2)) S COM="Referral Comments is REQUIRED for RC Reason Code 5" G CHKQ | 
|---|
| 57 | S COM="" | 
|---|
| 58 | CHKQ I COM]"" S COM=$G(PRCA("BNAME"))_"  -  "_COM | 
|---|
| 59 | Q | 
|---|
| 60 | ; | 
|---|
| 61 | CHKD ;Display invalid bills and message from RCA array | 
|---|
| 62 | ;Ask user what they want to do with bad referral | 
|---|
| 63 | N PRCABN,RCY | 
|---|
| 64 | S PRCABN=0 F  S PRCABN=$O(RCA(PRCABN)) Q:('PRCABN)!($G(RCOUT))  D | 
|---|
| 65 | .S RCY=0 F  S RCY=$O(RCA(PRCABN,RCY)) Q:('RCY)!($G(RCOUT))  D | 
|---|
| 66 | ..W !!!,"Item ",RCY,".  ",RCA(PRCABN,RCY) | 
|---|
| 67 | ..D UNSEL^RCRCVLE(RCY) | 
|---|
| 68 | CHKDQ Q | 
|---|
| 69 | ;RCRCVCK | 
|---|