1 | PRCPAWI1 ;WISC/RFJ/DL-adjust inventory level - issue adjustment cont. ;1/28/98 0915
|
---|
2 | ;;5.1;IFCAP;;Oct 20, 2000
|
---|
3 | ;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
4 | Q
|
---|
5 | ;
|
---|
6 | ;
|
---|
7 | ISUECONT ; issue book adjustment continuation
|
---|
8 | N CANTEEN,DATA,DRUGACCT,FY,ITEMDA,LINEDA,ORDERNO,PRCPID,PRIMORDR,QTR,TOTALINV,TOTALSAL,X,Y
|
---|
9 | S ORDERNO=$$ORDERNO^PRCPUTRX(PRCP("I"))
|
---|
10 | I DISTRPT S PRIMORDR=$$ORDERNO^PRCPUTRX(DISTRPT)
|
---|
11 | I $G(PRIMORDR),$P($G(^PRCP(445,+DISTRPT,0)),"^",20)="D" S X="PSAGIP" I $D(^%ZOSF("TEST")) X ^%ZOSF("TEST") I $T S DRUGACCT=1 W !!?10,">> NOTE: Primary is set up for DRUG ACCOUNTABILITY. <<"
|
---|
12 | I $P($G(^PRC(420,PRCPPSTA,1,PRCPPFCP,0)),"^",12)=4 S CANTEEN=1
|
---|
13 | ;
|
---|
14 | S (LINEDA,TOTALINV,TOTALSAL)=0 F S LINEDA=$O(^TMP($J,"PRCPAWI0","PROCESS",LINEDA)) Q:'LINEDA S DATA=^(LINEDA) I DATA'="" S ITEMDA=+$P(DATA,"^",7) I ITEMDA D
|
---|
15 | . ; update issue book
|
---|
16 | . D POSTDATA(PRCPDA,LINEDA,$P(DATA,"^"),$P(DATA,"^",3),$P(DATA,"^",2))
|
---|
17 | . S TOTALINV=TOTALINV+$P(DATA,"^",3),TOTALSAL=TOTALSAL+$P(DATA,"^",2)
|
---|
18 | . ; update whse
|
---|
19 | . K PRCPAWI0
|
---|
20 | . S PRCPAWI0("QTY")=-$P(DATA,"^"),PRCPAWI0("INVVAL")=-$P(DATA,"^",3),PRCPAWI0("SELVAL")=-$P(DATA,"^",2),PRCPAWI0("REF")=VOUCHER,PRCPAWI0("2237PO")=TRANNO
|
---|
21 | . S PRCPAWI0("REASON")="0:"_$S($G(CANTEEN):"2:",1:"")_$P(DATA,"^",6)
|
---|
22 | . I OTHERPT S PRCPAWI0("OTHERPT")=OTHERPT
|
---|
23 | . D ITEM^PRCPUUIW(PRCP("I"),ITEMDA,"A",ORDERNO,.PRCPAWI0)
|
---|
24 | . ; set issue book line number in TR
|
---|
25 | . I $D(^PRCP(445.2,+$G(PRCPID),0)) S $P(^(0),"^",24)=LINEDA
|
---|
26 | . K PRCPAWI0
|
---|
27 | . ; update primary
|
---|
28 | . I '$G(PRIMORDR) Q
|
---|
29 | . S PRCPAWI0("QTY")=$P(DATA,"^")*$P($$GETVEN^PRCPUVEN(OTHERPT,ITEMDA,+$O(^PRC(440,"AC","S",0))_";PRC(440,",1),"^",4)
|
---|
30 | . S (PRCPAWI0("INVVAL"),PRCPAWI0("SELVAL"))=$P(DATA,"^",2),PRCPAWI0("REF")=VOUCHER,PRCPAWI0("REASON")="0:ISSUE adjustment by the WHSE",PRCPAWI0("2237PO")=TRANNO,PRCPAWI0("OTHERPT")=PRCP("I")
|
---|
31 | . I $G(DRUGACCT) S PRCPAWI0("DRUGACCT")=1
|
---|
32 | . D ITEM^PRCPUUIW(OTHERPT,ITEMDA,"A",PRIMORDR,.PRCPAWI0)
|
---|
33 | . K PRCPAWI0
|
---|
34 | ;
|
---|
35 | I $G(DRUGACCT) D EX^PSAGIP
|
---|
36 | ;
|
---|
37 | S FY=$E(DT,2,3),FY=$E(100+$S(+$E(DT,4,5)>9:FY+1,1:FY),2,3)
|
---|
38 | S QTR=$P("2^2^2^3^3^3^4^4^4^1^1^1","^",+$E(DT,4,5))
|
---|
39 | ;I TOTALINV,'$G(CANTEEN) D ISSUES^PRCSREC2(PRCPWSTA,FY,PRCPWFCP,QTR,-TOTALINV)
|
---|
40 | ;I TOTALSAL,'$G(CANTEEN) D ISSUES^PRCSREC2(PRCPPSTA,FY,PRCPPFCP,QTR,-TOTALSAL)
|
---|
41 | ; update 410 for running balance
|
---|
42 | S $P(^PRCS(410,PRCPDA,445),"^",3)=$P($G(^PRCS(410,PRCPDA,445)),"^",3)+TOTALSAL
|
---|
43 | I TOTALSAL,'$G(CANTEEN) D
|
---|
44 | . N A,B
|
---|
45 | . S A=^PRCS(410,PRCPDA,0),B=$P($G(^(3)),"^",11),A=$P($$QTRDATE^PRC0D($P(A,"-",2),$P(A,"-",3)),"^",7)
|
---|
46 | . S PRCPRBSL=PRCPWSTA_"^"_PRCPWFCP_"^"_"A"_"^"_"^"_DT_"^"_-TOTALSAL_"^"_$P(^PRCS(410,PRCPDA,4),"^",5)_"-ADJ"
|
---|
47 | . S $P(PRCPRBSL,"^",10,11)=A_"^"_+$$DATE^PRC0C(B,"I")
|
---|
48 | . D A410^PRC0F(.PRCPXX,PRCPRBSL)
|
---|
49 | . S PRCPRBBY=PRCPPSTA_"^"_PRCPPFCP_"^"_"A"_"^"_"^"_DT_"^"_TOTALSAL_"^"_$P(^PRCS(410,PRCPDA,4),"^",5)_"-ADJ" D
|
---|
50 | . S $P(PRCPRBBY,"^",10,11)=A_"^"_+$$DATE^PRC0C(B,"I")
|
---|
51 | . D A410^PRC0F(.PRCPXX,PRCPRBBY)
|
---|
52 | . K PRCPRBSL,PRCPRBBY,PRCPXX
|
---|
53 | ;
|
---|
54 | ; create fms iv adjustment document
|
---|
55 | W !
|
---|
56 | I '$G(CANTEEN) D IV^PRCPSFIV(PRCP("I"),"A"_ORDERNO,TRANNO,"","")
|
---|
57 | I $G(CANTEEN) D SV^PRCPSFSV(PRCP("I"),"A"_ORDERNO,"","")
|
---|
58 | ; create log or isms code sheets
|
---|
59 | D CODESHTS^PRCPAWC0(PRCP("I"),"A"_ORDERNO)
|
---|
60 | ; print form
|
---|
61 | D PRINFORM^PRCPAWR0("A"_ORDERNO)
|
---|
62 | Q
|
---|
63 | ;
|
---|
64 | ;
|
---|
65 | POSTDATA(PRCPDA,LINEDA,QTY,INVVALUE,SELVALUE) ; update posting values for IB
|
---|
66 | ; add qty,invvalue,selvalue to posting data
|
---|
67 | I '$D(^PRCS(410,PRCPDA,"IT",LINEDA,0)) Q
|
---|
68 | N POSTDATA
|
---|
69 | S POSTDATA=$G(^PRCS(410,PRCPDA,"IT",LINEDA,445))
|
---|
70 | S $P(POSTDATA,"^",3)=$P(POSTDATA,"^",3)+QTY
|
---|
71 | S $P(POSTDATA,"^",4)=$P(POSTDATA,"^",4)+INVVALUE
|
---|
72 | S $P(POSTDATA,"^",5)=$P(POSTDATA,"^",5)+SELVALUE
|
---|
73 | S $P(^PRCS(410,PRCPDA,"IT",LINEDA,445),"^",3,5)=$P(POSTDATA,"^",3,5)
|
---|
74 | Q
|
---|