| 1 | RMPRPIUK ;HINCIO/ODJ - PIP CONVERSION UTILITIES (contd) ;3/8/01 | 
|---|
| 2 | ;;3.0;PROSTHETICS;**61**;Feb 09, 1996 | 
|---|
| 3 | Q | 
|---|
| 4 | ; | 
|---|
| 5 | ;***** REC - Create initial reconciliations | 
|---|
| 6 | ;            These will balance the Patient Issues just created | 
|---|
| 7 | REC N RMPRGBL,RMPRS,RMPR6,RMPR11,RMPRDT,X1,X2,X,RMPRTIME,RMPR5,RMPR69 | 
|---|
| 8 | N RMPR9 | 
|---|
| 9 | I '$D(IO("Q")) D | 
|---|
| 10 | . W !,"Creating balancing reconciliations " | 
|---|
| 11 | . Q | 
|---|
| 12 | S RMPRGBL="^TMP("""_$J_""",""ISS"")" | 
|---|
| 13 | REC1 S RMPRGBL=$Q(@RMPRGBL) | 
|---|
| 14 | I $QS(RMPRGBL,2)'="ISS" G RECX | 
|---|
| 15 | I $QS(RMPRGBL,1)'=$J G RECX | 
|---|
| 16 | I '$D(IO("Q")) D | 
|---|
| 17 | . W:$X=79 ! W "." | 
|---|
| 18 | . Q | 
|---|
| 19 | S RMPR11("STATION")=$QS(RMPRGBL,3) | 
|---|
| 20 | S RMPR11("STATION IEN")=RMPR11("STATION") | 
|---|
| 21 | S RMPR11("HCPCS")=$QS(RMPRGBL,4) | 
|---|
| 22 | S RMPR11("ITEM")=$QS(RMPRGBL,5) | 
|---|
| 23 | S RMPR6("LOCATION")=$QS(RMPRGBL,6) | 
|---|
| 24 | S RMPR5("IEN")=RMPR6("LOCATION") | 
|---|
| 25 | S RMPR6("VENDOR")=$QS(RMPRGBL,7) | 
|---|
| 26 | S RMPR6("VENDOR IEN")=RMPR6("VENDOR") | 
|---|
| 27 | S RMPR6("COMMENT")="" | 
|---|
| 28 | S RMPR6("USER")=DUZ | 
|---|
| 29 | S RMPRS=@RMPRGBL | 
|---|
| 30 | S RMPR6("QUANTITY")=$P(RMPRS,"^",1) | 
|---|
| 31 | S RMPR6("VALUE")=$P(RMPRS,"^",2) | 
|---|
| 32 | ; | 
|---|
| 33 | ; ensure initial reconciliation date is the first one | 
|---|
| 34 | S X1=$O(^RMPR(661.6,"XHDS",RMPR11("HCPCS"),"")) | 
|---|
| 35 | S X1=$P(X1,".",1) | 
|---|
| 36 | S X2=-2 | 
|---|
| 37 | D C^%DTC | 
|---|
| 38 | S RMPRDT=$P(X,".",1) | 
|---|
| 39 | ; | 
|---|
| 40 | ; compute DATE&TIME for initial reconciliation | 
|---|
| 41 | S RMPR6("DATE&TIME")="" | 
|---|
| 42 | F  D  Q:RMPR6("DATE&TIME")'="" | 
|---|
| 43 | . D NOW^%DTC | 
|---|
| 44 | . S RMPRTIME=RMPRDT_"."_$P(%,".",2) | 
|---|
| 45 | . I $D(^RMPR(661.6,"XHDS",RMPR11("HCPCS"),RMPRTIME)) H (1+$R(3)) Q | 
|---|
| 46 | . L +^RMPR(661.6,"XHDS",RMPR11("HCPCS"),RMPRTIME):0 E  H (1+$R(3)) Q | 
|---|
| 47 | . S RMPR6("DATE&TIME")=RMPRTIME | 
|---|
| 48 | . Q | 
|---|
| 49 | ; | 
|---|
| 50 | ; create transaction | 
|---|
| 51 | S RMPR6("SEQUENCE")=1 | 
|---|
| 52 | S RMPR6("TRAN TYPE")=9 | 
|---|
| 53 | S RMPRERR=$$CRE^RMPRPIX6(.RMPR6,.RMPR11) | 
|---|
| 54 | K RMPR69 | 
|---|
| 55 | S RMPR69("TRANS IEN")=RMPR6("IEN") | 
|---|
| 56 | S RMPR69("GAIN/LOSS")=RMPR6("QUANTITY") | 
|---|
| 57 | S RMPR69("GAIN/LOSS VALUE")=RMPR6("VALUE") | 
|---|
| 58 | S RMPRERR=$$CRE^RMPRPIXB(.RMPR69) | 
|---|
| 59 | L -^RMPR(661.6,"XHDS",RMPR11("HCPCS"),RMPR6("DATE&TIME")) | 
|---|
| 60 | G REC1 | 
|---|
| 61 | RECX Q | 
|---|
| 62 | ; | 
|---|
| 63 | ;***** BAL - update running balance file | 
|---|
| 64 | BAL N RMPR6,RMPR9,RMPRDT,RMPRS,RMPRH,RMPRI,RMPRD,RMPRQ,RMPRV,RMPRX,RMPRY | 
|---|
| 65 | N RMPRIEN,RMPRFME | 
|---|
| 66 | I '$D(IO("Q")) D | 
|---|
| 67 | . W !,"Creating Running Balance file 661.9 " | 
|---|
| 68 | . Q | 
|---|
| 69 | S RMPRS="" | 
|---|
| 70 | F  S RMPRS=$O(^RMPR(661.6,"ASTHIDS",RMPRS)) Q:RMPRS=""  D | 
|---|
| 71 | . I '$D(IO("Q")) D | 
|---|
| 72 | .. W:$X=79 ! W "." | 
|---|
| 73 | .. Q | 
|---|
| 74 | . S RMPRH="" | 
|---|
| 75 | . F  S RMPRH=$O(^RMPR(661.6,"ASTHIDS",RMPRS,9,RMPRH)) Q:RMPRH=""  D | 
|---|
| 76 | .. S RMPRI="" | 
|---|
| 77 | .. F  S RMPRI=$O(^RMPR(661.6,"ASTHIDS",RMPRS,9,RMPRH,RMPRI)) Q:RMPRI=""  D | 
|---|
| 78 | ... Q:'$D(^RMPR(661.6,"ASTHIDS",RMPRS,3,RMPRH,RMPRI)) | 
|---|
| 79 | ... S RMPRD=$O(^RMPR(661.6,"ASTHIDS",RMPRS,9,RMPRH,RMPRI,"")) | 
|---|
| 80 | ... S RMPRQ=0,RMPRV=0,RMPRX="" | 
|---|
| 81 | ... F  S RMPRX=$O(^RMPR(661.6,"ASTHIDS",RMPRS,9,RMPRH,RMPRI,RMPRD,RMPRX)) Q:RMPRX=""  D | 
|---|
| 82 | .... S RMPRY="" | 
|---|
| 83 | .... F  S RMPRY=$O(^RMPR(661.6,"ASTHIDS",RMPRS,9,RMPRH,RMPRI,RMPRD,RMPRX,RMPRY)) Q:RMPRY=""  D | 
|---|
| 84 | ..... S RMPR6=^RMPR(661.6,RMPRY,0) | 
|---|
| 85 | ..... S RMPRQ=RMPRQ+$P(RMPR6,"^",5) | 
|---|
| 86 | ..... S RMPRV=RMPRV+$P(RMPR6,"^",6) | 
|---|
| 87 | ..... Q | 
|---|
| 88 | .... Q | 
|---|
| 89 | ... I RMPRQ<0 S RMPRQ=0 | 
|---|
| 90 | ... I RMPRV<0 S RMPRV=0 | 
|---|
| 91 | ... K RMPR9,RMPRIEN,RMPRFME | 
|---|
| 92 | ... S RMPR9(661.9,"+1,",.01)=$P(RMPRD,".",1) | 
|---|
| 93 | ... S RMPR9(661.9,"+1,",1)=RMPRH | 
|---|
| 94 | ... S RMPR9(661.9,"+1,",2)=RMPRI | 
|---|
| 95 | ... S RMPR9(661.9,"+1,",4)=RMPRS | 
|---|
| 96 | ... S RMPR9(661.9,"+1,",7)=RMPRQ | 
|---|
| 97 | ... S RMPR9(661.9,"+1,",8)=RMPRV | 
|---|
| 98 | ... D UPDATE^DIE("","RMPR9","RMPRIEN","RMPRFME") | 
|---|
| 99 | ... F  S RMPRD=$O(^RMPR(661.6,"ASTHIDS",RMPRS,3,RMPRH,RMPRI,RMPRD)) Q:RMPRD=""  D | 
|---|
| 100 | .... S RMPRX="" | 
|---|
| 101 | .... F  S RMPRX=$O(^RMPR(661.6,"ASTHIDS",RMPRS,3,RMPRH,RMPRI,RMPRD,RMPRX)) Q:RMPRX=""  D | 
|---|
| 102 | ..... S RMPRY="" | 
|---|
| 103 | ..... F  S RMPRY=$O(^RMPR(661.6,"ASTHIDS",RMPRS,3,RMPRH,RMPRI,RMPRD,RMPRX,RMPRY)) Q:RMPRY=""  D | 
|---|
| 104 | ...... S RMPR6=^RMPR(661.6,RMPRY,0) | 
|---|
| 105 | ...... S RMPRQ=RMPRQ-$P(RMPR6,"^",5) | 
|---|
| 106 | ...... S RMPRV=RMPRV-$P(RMPR6,"^",6) | 
|---|
| 107 | ...... Q | 
|---|
| 108 | ..... Q | 
|---|
| 109 | .... K RMPR9,RMPRIEN,RMPRFME | 
|---|
| 110 | .... I RMPRQ<0 S RMPRQ=0 | 
|---|
| 111 | .... I RMPRV<0 S RMPRV=0 | 
|---|
| 112 | .... S RMPR9(661.9,"+1,",.01)=$P(RMPRD,".",1) | 
|---|
| 113 | .... S RMPR9(661.9,"+1,",1)=RMPRH | 
|---|
| 114 | .... S RMPR9(661.9,"+1,",2)=RMPRI | 
|---|
| 115 | .... S RMPR9(661.9,"+1,",4)=RMPRS | 
|---|
| 116 | .... S RMPR9(661.9,"+1,",7)=RMPRQ | 
|---|
| 117 | .... S RMPR9(661.9,"+1,",8)=RMPRV | 
|---|
| 118 | .... D UPDATE^DIE("","RMPR9","RMPRIEN","RMPRFME") | 
|---|
| 119 | .... Q | 
|---|
| 120 | ... Q | 
|---|
| 121 | .. Q | 
|---|
| 122 | . Q | 
|---|
| 123 | BALX Q | 
|---|