| 1 | RMPRPI07 ;HINCIO/ODJ - PIP APIs ;3/8/01
|
---|
| 2 | ;;3.0;PROSTHETICS;**61**;Feb 09, 1996
|
---|
| 3 | Q
|
---|
| 4 | ;
|
---|
| 5 | ; LOC - Build workfile for Quantity on hand by location
|
---|
| 6 | LOC(RMPRNM,RMPRSTN,RMPRLOCA,RMPRSRC,RMPRSDT,RMPREDT) ;
|
---|
| 7 | N RMPRERR,RMPRL,RMPRALL,RMPRDT,RMPRI,RMPR6,RMPR6I,RMPRSTR,RMPR11
|
---|
| 8 | N RMPR11I,RMPR7,RMPREOF,RMPRDAYS,RMPR7I
|
---|
| 9 | N X1,X2,X
|
---|
| 10 | S RMPRERR=0
|
---|
| 11 | I $G(RMPRSTN)="" S RMPRERR=1 G LOCX
|
---|
| 12 | I $G(RMPRNM)="" S RMPRNM="RMPRPI07"
|
---|
| 13 | K ^TMP($J,RMPRNM)
|
---|
| 14 | S RMPRALL=$S($G(RMPRLOCA)="*":1,1:0)
|
---|
| 15 | I $G(RMPRSRC)="" S RMPRSRC="C"
|
---|
| 16 | I $G(RMPREDT)="" D NOW^%DTC S RMPREDT=X
|
---|
| 17 | I $G(RMPRSDT)="" D
|
---|
| 18 | . S X1=RMPREDT,X2=-89 D C^%DTC S RMPRSDT=X
|
---|
| 19 | . Q
|
---|
| 20 | S X2=RMPRSDT,X1=RMPREDT D ^%DTC S RMPRDAYS=X+1
|
---|
| 21 | ;
|
---|
| 22 | ; First loop on transaction file (661.6) for issues
|
---|
| 23 | S RMPRL=""
|
---|
| 24 | LOC1 I RMPRALL D
|
---|
| 25 | . S RMPRL=$O(^RMPR(661.6,"ASLD",RMPRSTN,RMPRL))
|
---|
| 26 | . Q
|
---|
| 27 | E D
|
---|
| 28 | . S RMPRL=$O(RMPRLOCA(RMPRL))
|
---|
| 29 | . Q
|
---|
| 30 | I RMPRL="" G LOC11
|
---|
| 31 | I RMPRSDT="" D
|
---|
| 32 | . S RMPRDT=$O(^RMPR(661.6,"ASLD",RMPRSTN,RMPRL,""))
|
---|
| 33 | . Q
|
---|
| 34 | E D
|
---|
| 35 | . I $D(^RMPR(661.6,"ASLD",RMPRSTN,RMPRL,RMPRSDT)) S RMPRDT=RMPRSDT Q
|
---|
| 36 | . S RMPRDT=$O(^RMPR(661.6,"ASLD",RMPRSTN,RMPRL,RMPRSDT))
|
---|
| 37 | . Q
|
---|
| 38 | LOC2 I RMPRDT="" G LOC1
|
---|
| 39 | I $P(RMPRDT,".",1)>RMPREDT G LOC1
|
---|
| 40 | S RMPRI=""
|
---|
| 41 | LOC3 S RMPRI=$O(^RMPR(661.6,"ASLD",RMPRSTN,RMPRL,RMPRDT,RMPRI))
|
---|
| 42 | I RMPRI="" D G LOC2
|
---|
| 43 | . S RMPRDT=$O(^RMPR(661.6,"ASLD",RMPRSTN,RMPRL,RMPRDT))
|
---|
| 44 | . Q
|
---|
| 45 | K RMPR6
|
---|
| 46 | S RMPR6("IEN")=RMPRI
|
---|
| 47 | S RMPRERR=$$GET^RMPRPIX6(.RMPR6)
|
---|
| 48 | I RMPRERR S RMPRERR=1 G LOCX
|
---|
| 49 | S RMPRERR=$$ETOI^RMPRPIX6(.RMPR6,.RMPR6I) ;read trans. rec. (661.6)
|
---|
| 50 | I RMPRERR S RMPRERR=2 G LOCX
|
---|
| 51 | I RMPR6I("TRAN TYPE")'=3 G LOC3 ;not patient issue
|
---|
| 52 | K RMPR11
|
---|
| 53 | S RMPR11("STATION")=RMPRSTN
|
---|
| 54 | S RMPR11("HCPCS")=RMPR6("HCPCS")
|
---|
| 55 | S RMPR11("ITEM")=RMPR6("ITEM")
|
---|
| 56 | S RMPRERR=$$GET^RMPRPIX1(.RMPR11) ;read in Item rec. (661.11)
|
---|
| 57 | I RMPRERR S RMPRERR=3 G LOCX
|
---|
| 58 | S RMPRERR=$$ETOI^RMPRPIX1(.RMPR11,.RMPR11I)
|
---|
| 59 | I RMPRERR S RMPRERR=4 G LOCX
|
---|
| 60 | I RMPR11I("SOURCE")'=RMPRSRC G LOC3 ;not required source
|
---|
| 61 | S RMPRSTR=$G(^TMP($J,RMPRNM,RMPRL,RMPR6("HCPCS"),RMPR11("DESCRIPTION"),RMPR6("ITEM")))
|
---|
| 62 | S $P(RMPRSTR,"^",1)=RMPR6("QUANTITY")+$P(RMPRSTR,"^",1)
|
---|
| 63 | S $P(RMPRSTR,"^",2)=RMPR6("VALUE")+$P(RMPRSTR,"^",2)
|
---|
| 64 | S ^TMP($J,RMPRNM,RMPRL,RMPR6("HCPCS"),RMPR11("DESCRIPTION"),RMPR6("ITEM"))=RMPRSTR
|
---|
| 65 | G LOC3
|
---|
| 66 | ;
|
---|
| 67 | ; Second loop on Current Stock (661.7) for quantity on hand
|
---|
| 68 | S RMPRL=""
|
---|
| 69 | LOC11 I RMPRALL D
|
---|
| 70 | . S RMPRL=$O(^RMPR(661.7,"XSLHIDS",RMPRSTN,RMPRL))
|
---|
| 71 | . Q
|
---|
| 72 | E D
|
---|
| 73 | . S RMPRL=$O(RMPRLOCA(RMPRL))
|
---|
| 74 | . Q
|
---|
| 75 | I RMPRL="" G LOCX
|
---|
| 76 | K RMPR7I
|
---|
| 77 | S RMPR7I("STATION")=RMPRSTN
|
---|
| 78 | S RMPR7I("LOCATION")=RMPRL
|
---|
| 79 | LOC12 S RMPRERR=$$NEXT^RMPRPIXE(.RMPR7I,"XSLHIDS","",1,.RMPROLD,.RMPREOF)
|
---|
| 80 | I RMPREOF G LOC11
|
---|
| 81 | I RMPR7I("STATION")'=RMPRSTN G LOC11
|
---|
| 82 | I RMPR7I("LOCATION")'=RMPRL G LOC11
|
---|
| 83 | K RMPR7
|
---|
| 84 | S RMPR7("IEN")=RMPR7I("IEN")
|
---|
| 85 | S RMPRERR=$$GET^RMPRPIX7(.RMPR7) ;read in cur. stock rec.
|
---|
| 86 | K RMPR11,RMPR11I
|
---|
| 87 | S RMPR11("STATION")=RMPRSTN
|
---|
| 88 | S RMPR11("HCPCS")=RMPR7("HCPCS")
|
---|
| 89 | S RMPR11("ITEM")=RMPR7("ITEM")
|
---|
| 90 | S RMPRERR=$$GET^RMPRPIX1(.RMPR11) ;read in Item rec. (661.11)
|
---|
| 91 | I RMPRERR S RMPRERR=99 G LOCX
|
---|
| 92 | S RMPRERR=$$ETOI^RMPRPIX1(.RMPR11,.RMPR11I)
|
---|
| 93 | I RMPRERR S RMPRERR=99 G LOCX
|
---|
| 94 | I RMPR11I("SOURCE")'=RMPRSRC G LOC12 ;not required source
|
---|
| 95 | S RMPRSTR=$G(^TMP($J,RMPRNM,RMPRL,RMPR7("HCPCS"),RMPR11("DESCRIPTION"),RMPR7("ITEM")))
|
---|
| 96 | S $P(RMPRSTR,"^",5)=RMPR7("QUANTITY")+$P(RMPRSTR,"^",5)
|
---|
| 97 | S $P(RMPRSTR,"^",6)=RMPR7("VALUE")+$P(RMPRSTR,"^",6)
|
---|
| 98 | S ^TMP($J,RMPRNM,RMPRL,RMPR7("HCPCS"),RMPR11("DESCRIPTION"),RMPR7("ITEM"))=RMPRSTR
|
---|
| 99 | G LOC12
|
---|
| 100 | LOCX Q RMPRERR
|
---|