1 | RMPRPIU7 ;HINCIO/ODJ - PIP STOCK RECEIPT UPDATE UTILITY ;3/8/01
|
---|
2 | ;;3.0;PROSTHETICS;**61**;Feb 09, 1996
|
---|
3 | Q
|
---|
4 | ;
|
---|
5 | ;***** REC - Create a Stock Receipt Transaction
|
---|
6 | ; implements business rules for Stock Receipt
|
---|
7 | ; called by RMPRPIY9
|
---|
8 | ;
|
---|
9 | ; Inputs:
|
---|
10 | ; RMPR6 - Transaction (661.6) array elements
|
---|
11 | ; RMPR6("VENDOR") - Vendor ien
|
---|
12 | ; RMPR6("QUANTITY") - Receipt quantity
|
---|
13 | ; RMPR6("VALUE") - Total $ value of received quantity
|
---|
14 | ; RMPR6("COMMENT") - (optional) comment
|
---|
15 | ;
|
---|
16 | ; RMPR11 - HCPCS Item (661.11) array elements
|
---|
17 | ; RMPR11("STATION IEN")
|
---|
18 | ; RMPR11("HCPCS")
|
---|
19 | ; RMPR11("ITEM")
|
---|
20 | ;
|
---|
21 | ; RMPR5 - Location (661.5) array elements
|
---|
22 | ; RMPR5("IEN") - Location ien (ptr ^RMPR(661.5,)
|
---|
23 | ;
|
---|
24 | ; RMPR4
|
---|
25 | ;
|
---|
26 | ; Outputs:
|
---|
27 | ; RMPR6("IEN")
|
---|
28 | ; RMPR4("IEN")
|
---|
29 | ; RMPRERR
|
---|
30 | ;
|
---|
31 | REC(RMPR6,RMPR11,RMPR5) ;
|
---|
32 | N RMPRERR,RMPR6I,RMPR7,RMPR9
|
---|
33 | S RMPRERR=0
|
---|
34 | S RMPR6("COMMENT")=$G(RMPR6("COMMENT"))
|
---|
35 | S RMPR6("SEQUENCE")=1
|
---|
36 | S RMPR6("TRAN TYPE")=1
|
---|
37 | S RMPR6("LOCATION")=$G(RMPR5("IEN"))
|
---|
38 | S RMPR6("HCPCS")=$G(RMPR11("HCPCS"))
|
---|
39 | S RMPR6("ITEM")=$G(RMPR11("ITEM"))
|
---|
40 | S RMPR6("USER")=$G(DUZ)
|
---|
41 | I RMPR6("QUANTITY")=0 G RECX
|
---|
42 | ;
|
---|
43 | ; Lock current stock to prevent simultaneous access at HCPCS Item level
|
---|
44 | L +^RMPR(661.7,"XSLHIDS",RMPR11("STATION IEN"),RMPR5("IEN"),RMPR11("HCPCS"),RMPR11("ITEM"))
|
---|
45 | ;
|
---|
46 | ; Create 661.6 Transaction record
|
---|
47 | S RMPRERR=$$CRE^RMPRPIX6(.RMPR6,.RMPR11)
|
---|
48 | I RMPRERR S RMPRERR=19 G RECU ;error 19 problem with 661.6 create
|
---|
49 | ;
|
---|
50 | ; Create 661.7 Current Stock record
|
---|
51 | S RMPR7("DATE&TIME")=RMPR6("DATE&TIME")
|
---|
52 | S RMPR7("SEQUENCE")=RMPR6("SEQUENCE")
|
---|
53 | S RMPR7("QUANTITY")=RMPR6("QUANTITY")
|
---|
54 | S RMPR7("VALUE")=RMPR6("VALUE")
|
---|
55 | S RMPR7("LOCATION")=RMPR6("LOCATION")
|
---|
56 | S RMPRERR=$$CRE^RMPRPIX7(.RMPR7,.RMPR11)
|
---|
57 | I RMPRERR S RMPRERR=29 G RECU ;error 29 problem with 661.7 create
|
---|
58 | ;
|
---|
59 | ; Update 661.9 Daily Running Balance record
|
---|
60 | S RMPR9("STA")=RMPR11("STATION")
|
---|
61 | S RMPR9("HCP")=RMPR11("HCPCS")
|
---|
62 | S RMPR9("ITE")=RMPR11("ITEM")
|
---|
63 | S RMPR9("RDT")=$P(RMPR6("DATE&TIME"),".",1)
|
---|
64 | S RMPR9("TQTY")=RMPR6("QUANTITY")
|
---|
65 | S RMPR9("TCST")=RMPR6("VALUE")
|
---|
66 | S RMPRERR=$$UPCR^RMPRPIXJ(.RMPR9) ;error 49 problem with 661.9 update
|
---|
67 | I RMPRERR S RMPRERR=49 G RECU ;error 49 problem with 661.9 update
|
---|
68 | ;
|
---|
69 | ; Update 661.41 orders record
|
---|
70 | S RMPRERR=$$UPORD^RMPRPIU8(RMPR11("STATION IEN"),RMPR11("HCPCS"),RMPR11("ITEM"),RMPR6("QUANTITY"),RMPR6("VENDOR"))
|
---|
71 | I RMPRERR S RMPRERR=59 G RECU ;error 59 problem with Orders update
|
---|
72 | ;
|
---|
73 | ; Exit points
|
---|
74 | RECU L -^RMPR(661.7,"XSLHIDS",RMPR11("STATION IEN"),RMPR5("IEN"),RMPR11("HCPCS"),RMPR11("ITEM"))
|
---|
75 | RECX Q RMPRERR
|
---|