[613] | 1 | RCDMBWLR ;WISC/RFJ-diagnostic measures workload report (build it) ;1 Jan 01
|
---|
| 2 | ;;4.5;Accounts Receivable;**167**;Mar 20, 1995
|
---|
| 3 | ;;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
| 4 | Q
|
---|
| 5 | ;
|
---|
| 6 | ;
|
---|
| 7 | DQ ; called by nightly background job
|
---|
| 8 | ;
|
---|
| 9 | N RCASSIGN,RCBALANC,RCBILLDA,RCCLERK,RCDATA0,RCDATA1,RCDATA2,RCDATA7,RCDATA6
|
---|
| 10 | N RCDEBT,RCDEBTDA,RCDPDATA,RCFDEATH,RCIFDESC,RCIFSTAT,RCNAME,RCSSN,RCRC
|
---|
| 11 | K ^TMP("RCDMBWLR",$J)
|
---|
| 12 | ;
|
---|
| 13 | ; loop all workload assignments and generate logic to screen bills
|
---|
| 14 | S RCWLFLG=0
|
---|
| 15 | S RCCLERK=0 F S RCCLERK=$O(^IBE(351.73,RCCLERK)) Q:'RCCLERK D
|
---|
| 16 | . S RCASSIGN=0 F S RCASSIGN=$O(^IBE(351.73,RCCLERK,1,RCASSIGN)) Q:'RCASSIGN D I RCIFSTAT'="" D BUILDIF^RCDMBWLA S RCWLFLG=1
|
---|
| 17 | . . ;
|
---|
| 18 | . . S RCIFSTAT=""
|
---|
| 19 | . . S RCIFDESC=""
|
---|
| 20 | . . ;
|
---|
| 21 | . . ;
|
---|
| 22 | . . ; screen on all bills by category or minimum balance
|
---|
| 23 | . . S RCDATA0=$G(^IBE(351.73,RCCLERK,1,RCASSIGN,0))
|
---|
| 24 | . . I $P(RCDATA0,"^",2)!($P(RCDATA0,"^",3)) D
|
---|
| 25 | . . . ; screen on category
|
---|
| 26 | . . . I $P(RCDATA0,"^",2) D
|
---|
| 27 | . . . . S RCIFSTAT="I $P(RCDATA0,U,2)="_$P(RCDATA0,"^",2)_" "
|
---|
| 28 | . . . . S RCIFDESC="[CATEGORY equals "_$P($G(^PRCA(430.2,+$P(RCDATA0,"^",2),0)),"^")_"]"
|
---|
| 29 | . . . ; screen on minimum bill balance
|
---|
| 30 | . . . I $P(RCDATA0,"^",3) D
|
---|
| 31 | . . . . S RCIFSTAT=RCIFSTAT_"I RCBALANC>"_($P(RCDATA0,"^",3)-.01)_" "
|
---|
| 32 | . . . . I RCIFDESC'="" S RCIFDESC=RCIFDESC_" AND "
|
---|
| 33 | . . . . S RCIFDESC=RCIFDESC_"[MINIMUM BILL BALANCE greater than "_$J($P(RCDATA0,"^",3)-.01,0,2)_"]"
|
---|
| 34 | . . . I $P(RCDATA0,"^",5) D
|
---|
| 35 | . . . . S RCIFSTAT=RCIFSTAT_"I 'RCRC "
|
---|
| 36 | . . . . S RCIFDESC=RCIFDESC_"[EXCLUDE REGIONAL COUNSEL RECEIVABLES]"
|
---|
| 37 | . . ;
|
---|
| 38 | . . ;
|
---|
| 39 | . . ; screen on bill by first party
|
---|
| 40 | . . S RCDATA1=$G(^IBE(351.73,RCCLERK,1,RCASSIGN,1))
|
---|
| 41 | . . I $TR(RCDATA1,"^")'="" D Q
|
---|
| 42 | . . . ;
|
---|
| 43 | . . . ; screen on first party
|
---|
| 44 | . . . S RCIFSTAT=RCIFSTAT_"I RCDEBT[""DPT("" "
|
---|
| 45 | . . . ;
|
---|
| 46 | . . . ; screen on days since last payment
|
---|
| 47 | . . . I $P(RCDATA1,"^") D
|
---|
| 48 | . . . . S RCIFSTAT=RCIFSTAT_"I $$PAYDAYS^RCDMBWLA(RCBILLDA)>"_$P(RCDATA1,"^")_" "
|
---|
| 49 | . . . . S RCIFDESC=RCIFDESC_"[DAYS SINCE LAST PAYMENT greater than "_$P(RCDATA1,"^")_"]"
|
---|
| 50 | . . . ;
|
---|
| 51 | . . . ; screen on first patient name last patient name
|
---|
| 52 | . . . I $P(RCDATA1,"^",2)'=""!($P(RCDATA1,"^",3)'="") D Q
|
---|
| 53 | . . . . ; if first patient name is null, set to @ char (before A)
|
---|
| 54 | . . . . I $P(RCDATA1,"^",2)="" S $P(RCDATA1,"^",2)=$C(64)
|
---|
| 55 | . . . . ; if last patient name is null, set to / char (after Z)
|
---|
| 56 | . . . . I $P(RCDATA1,"^",3)="" S $P(RCDATA1,"^",3)=$C(92)
|
---|
| 57 | . . . . ;
|
---|
| 58 | . . . . S RCIFSTAT=RCIFSTAT_"I RCNAME]"_$C(34)_$P(RCDATA1,"^",2)_$C(34)_",RCNAME']"_$C(34)_$P(RCDATA1,"^",3)_$C(34)_" "
|
---|
| 59 | . . . . ;
|
---|
| 60 | . . . . ; if first patient name is null, set variable for description
|
---|
| 61 | . . . . I $P(RCDATA1,"^",2)=$C(64) S $P(RCDATA1,"^",2)="<first>"
|
---|
| 62 | . . . . ; if last patient name is null, set variable for desctription
|
---|
| 63 | . . . . I $P(RCDATA1,"^",3)=$C(92) S $P(RCDATA1,"^",3)="<last>"
|
---|
| 64 | . . . . S RCIFDESC=RCIFDESC_"[PATIENT NAME is after "_$P(RCDATA1,"^",2)_" and before "_$P(RCDATA1,"^",3)_"]"
|
---|
| 65 | . . . ;
|
---|
| 66 | . . . ; screen on social security number
|
---|
| 67 | . . . I $P(RCDATA1,"^",4)'=""!($P(RCDATA1,"^",5)'="") D Q
|
---|
| 68 | . . . . ; if first ssn is null, set starting point
|
---|
| 69 | . . . . I $P(RCDATA1,"^",4)="" S $P(RCDATA1,"^",4)="0000"
|
---|
| 70 | . . . . ; if last ssn is null, set ending point
|
---|
| 71 | . . . . I $P(RCDATA1,"^",5)="" S $P(RCDATA1,"^",5)="9999"
|
---|
| 72 | . . . . ;
|
---|
| 73 | . . . . S RCIFSTAT=RCIFSTAT_"I RCSSN]"_$C(34)_$P(RCDATA1,"^",4)_$C(34)_",RCSSN']"_$C(34)_$P(RCDATA1,"^",5)_$C(34)
|
---|
| 74 | . . . . ;
|
---|
| 75 | . . . . ; if first ssn is null, set variable for description
|
---|
| 76 | . . . . I $P(RCDATA1,"^",4)="0000" S $P(RCDATA1,"^",4)="<first>"
|
---|
| 77 | . . . . ; if last ssn is null, set variable for desctription
|
---|
| 78 | . . . . I $P(RCDATA1,"^",5)="9999" S $P(RCDATA1,"^",5)="<last>"
|
---|
| 79 | . . . . S RCIFDESC=RCIFDESC_"[PATIENT SSN is after "_$P(RCDATA1,"^",4)_" and before "_$P(RCDATA1,"^",5)_"]"
|
---|
| 80 | . . ;
|
---|
| 81 | . . ;
|
---|
| 82 | . . ; screen on bills by third party
|
---|
| 83 | . . S RCDATA2=$G(^IBE(351.73,RCCLERK,1,RCASSIGN,2))
|
---|
| 84 | . . I $TR(RCDATA2,"^")'="" D Q
|
---|
| 85 | . . . ; screen on third party
|
---|
| 86 | . . . S RCIFSTAT=RCIFSTAT_"I RCDEBT[""DIC(36"" "
|
---|
| 87 | . . . ; screen on days since transaction days
|
---|
| 88 | . . . I $P(RCDATA2,"^") D
|
---|
| 89 | . . . . S RCIFSTAT=RCIFSTAT_"I $$TRANDAYS^RCDMBWLA(RCBILLDA)>"_$P(RCDATA2,"^")_" "
|
---|
| 90 | . . . . S RCIFDESC=RCIFDESC_"[DAYS SINCE LAST TRANSACTION greater than "_$P(RCDATA2,"^")_"]"
|
---|
| 91 | . . . ; screen on receivable type
|
---|
| 92 | . . . D RECTYP^RCDMBWLA
|
---|
| 93 | . . . ; screen on first insurance name and last insurance name
|
---|
| 94 | . . . I $P(RCDATA2,"^",2)'=""!($P(RCDATA2,"^",3)'="") D
|
---|
| 95 | . . . . ; if first insurance name is null, set to @ char (before A)
|
---|
| 96 | . . . . I $P(RCDATA2,"^",2)="" S $P(RCDATA2,"^",2)=$C(64)
|
---|
| 97 | . . . . ; if last insurance name is null, set to \ char (after Z)
|
---|
| 98 | . . . . I $P(RCDATA2,"^",3)="" S $P(RCDATA2,"^",3)=$C(92)
|
---|
| 99 | . . . . ;
|
---|
| 100 | . . . . S RCIFSTAT=RCIFSTAT_"I RCNAME]"_$C(34)_$P(RCDATA2,"^",2)_$C(34)_",RCNAME']"_$C(34)_$P(RCDATA2,"^",3)_$C(34)_" "
|
---|
| 101 | . . . . ;
|
---|
| 102 | . . . . ; if first insurance company name is null, set variable for description
|
---|
| 103 | . . . . I $P(RCDATA2,"^",2)=$C(64) S $P(RCDATA2,"^",2)="<first>"
|
---|
| 104 | . . . . ; if last insurance company name is null, set variable for desctription
|
---|
| 105 | . . . . I $P(RCDATA2,"^",3)=$C(92) S $P(RCDATA2,"^",3)="<last>"
|
---|
| 106 | . . . . S RCIFDESC=RCIFDESC_"[INSURANCE COMPANY NAME is after "_$P(RCDATA2,"^",2)_" and before "_$P(RCDATA2,"^",3)_"]"
|
---|
| 107 | . . . ;
|
---|
| 108 | . . . ; screen on first patient name last patient name
|
---|
| 109 | . . . I $P(RCDATA2,"^",4)'=""!($P(RCDATA2,"^",5)'="") D Q
|
---|
| 110 | . . . . ; if first patient name is null, set to @ char (before A)
|
---|
| 111 | . . . . I $P(RCDATA2,"^",4)="" S $P(RCDATA2,"^",4)=$C(64)
|
---|
| 112 | . . . . ; if last patient name is null, set to / char (after Z)
|
---|
| 113 | . . . . I $P(RCDATA2,"^",5)="" S $P(RCDATA2,"^",5)=$C(92)
|
---|
| 114 | . . . . ;
|
---|
| 115 | . . . . S RCIFSTAT=RCIFSTAT_"I RCPTNAM]"_$C(34)_$P(RCDATA2,"^",4)_$C(34)_",RCPTNAM']"_$C(34)_$P(RCDATA2,"^",5)_$C(34)_" "
|
---|
| 116 | . . . . ;
|
---|
| 117 | . . . . ; if first patient name is null, set variable for description
|
---|
| 118 | . . . . I $P(RCDATA2,"^",4)=$C(64) S $P(RCDATA2,"^",4)="<first>"
|
---|
| 119 | . . . . ; if last patient name is null, set variable for description
|
---|
| 120 | . . . . I $P(RCDATA2,"^",5)=$C(92) S $P(RCDATA2,"^",5)="<last>"
|
---|
| 121 | . . . . S RCIFDESC=RCIFDESC_"[PATIENT NAME is after "_$P(RCDATA2,"^",4)_" and before "_$P(RCDATA2,"^",5)_"]"
|
---|
| 122 | . . . ;
|
---|
| 123 | . . . ; screen on social security number
|
---|
| 124 | . . . I $P(RCDATA2,"^",6)'=""!($P(RCDATA2,"^",7)'="") D Q
|
---|
| 125 | . . . . ; if first ssn is null, set starting point
|
---|
| 126 | . . . . I $P(RCDATA2,"^",6)="" S $P(RCDATA2,"^",6)="0000"
|
---|
| 127 | . . . . ; if last ssn is null, set ending point
|
---|
| 128 | . . . . I $P(RCDATA2,"^",7)="" S $P(RCDATA2,"^",7)="9999"
|
---|
| 129 | . . . . ;
|
---|
| 130 | . . . . S RCIFSTAT=RCIFSTAT_"I RCSSN]"_$C(34)_$P(RCDATA2,"^",6)_$C(34)_",RCSSN']"_$C(34)_$P(RCDATA2,"^",7)_$C(34)
|
---|
| 131 | . . . . ;
|
---|
| 132 | . . . . ; if first ssn is null, set variable for description
|
---|
| 133 | . . . . I $P(RCDATA2,"^",6)="0000" S $P(RCDATA2,"^",6)="<first>"
|
---|
| 134 | . . . . ; if last ssn is null, set variable for desctription
|
---|
| 135 | . . . . I $P(RCDATA2,"^",7)="9999" S $P(RCDATA2,"^",7)="<last>"
|
---|
| 136 | . . . . S RCIFDESC=RCIFDESC_"[PATIENT SSN is after "_$P(RCDATA2,"^",6)_" and before "_$P(RCDATA2,"^",7)_"]"
|
---|
| 137 | . . . ;
|
---|
| 138 | . . ;
|
---|
| 139 | . . ; clerk has no assignment, quit
|
---|
| 140 | . . Q
|
---|
| 141 | ;
|
---|
| 142 | ;
|
---|
| 143 | I RCWLFLG D LOOP^RCDMBWLA
|
---|
| 144 | ;
|
---|
| 145 | I RCWLFLG D REPORT^RCDMBWL1
|
---|
| 146 | ;
|
---|
| 147 | K ^TMP("RCDMBWLR",$J),RCWLFLG
|
---|
| 148 | Q
|
---|
| 149 | ;
|
---|