[613] | 1 | PRCPUX1 ;WISC/RFJ/DGL/DWA-extrinsic functions ; 7/22/99 3:08pm
|
---|
| 2 | ;;5.1;IFCAP;**17**;Oct 20, 2000
|
---|
| 3 | ;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
| 4 | Q
|
---|
| 5 | ;
|
---|
| 6 | ;
|
---|
| 7 | UNIT(INVPT,ITEMDA,DELIM) ; unit per issue for inventory point and item
|
---|
| 8 | ; if delim delimiter : pkgmult delim units (1 per EA)
|
---|
| 9 | N D,Y
|
---|
| 10 | S D=$G(^PRCP(445,+INVPT,1,+ITEMDA,0)),Y=$S($P(D,"^",14):$P(D,"^",14),1:"?")_"/"_$$UNITCODE($P(D,"^",5))
|
---|
| 11 | I $G(DELIM)'="" S Y=$P(Y,"/")_DELIM_$P(Y,"/",2)
|
---|
| 12 | Q Y
|
---|
| 13 | ;
|
---|
| 14 | ;
|
---|
| 15 | UNITVAL(PKGMULT,UNITS,DELIM) ; unit per issue for values passed as follows:
|
---|
| 16 | N Y
|
---|
| 17 | S Y=$S(PKGMULT:PKGMULT,1:"?")_"/"_$$UNITCODE(UNITS)
|
---|
| 18 | I $G(DELIM)'="" S Y=$P(Y,"/")_DELIM_$P(Y,"/",2)
|
---|
| 19 | Q Y
|
---|
| 20 | ;
|
---|
| 21 | ;
|
---|
| 22 | SKU(INVPT,ITEMDA) ; get the sku for an item in the item master file
|
---|
| 23 | N %
|
---|
| 24 | S %=$$UNITCODE($P($G(^PRC(441,+ITEMDA,3)),"^",8)) I %["?" S %=$$UNITCODE($P($G(^PRCP(445,+INVPT,1,+ITEMDA,0)),"^",5))
|
---|
| 25 | Q %
|
---|
| 26 | ;
|
---|
| 27 | ;
|
---|
| 28 | UNITCODE(UNITS) ; get 2 character unit code from file 420.5
|
---|
| 29 | N % S %=$P($G(^PRCD(420.5,+UNITS,0)),"^") S:%="" %="??"
|
---|
| 30 | Q %
|
---|
| 31 | ;
|
---|
| 32 | ;
|
---|
| 33 | NSN(ITEMDA) ; return nsn for itemda
|
---|
| 34 | Q $P($G(^PRC(441,+ITEMDA,0)),"^",5)
|
---|
| 35 | ;
|
---|
| 36 | ;
|
---|
| 37 | FSC(ITEMDA) ; return FSC as NSN for a given ITEMDA
|
---|
| 38 | Q $P($G(^PRC(441,+ITEMDA,0)),"^",3)
|
---|
| 39 | ;
|
---|
| 40 | ;
|
---|
| 41 | ACCT(NSN) ; return account code for nsn (first 4 digits)
|
---|
| 42 | I $G(DT)="" Q 8
|
---|
| 43 | Q $S(DT>2971000:8,NSN=6505!(NSN=6508):1,$E(NSN,1,2)=65!($E(NSN,1,2)=66):2,NSN=8975:3,$E(NSN,1,2)=89:8,$E(NSN,1,2)=91:6,1:3)
|
---|
| 44 | ;
|
---|
| 45 | ;
|
---|
| 46 | ACCT1(NSN) ; return account code for nsn for GIP
|
---|
| 47 | Q $S(NSN=6505!(NSN=6508):1,$E(NSN,1,2)=65!($E(NSN,1,2)=66):2,NSN=8975:3,$E(NSN,1,2)=89:8,$E(NSN,1,2)=91:6,1:3)
|
---|
| 48 | ;
|
---|
| 49 | ;
|
---|
| 50 | FOOD(ITEMDA) ; return food group for itemda
|
---|
| 51 | Q $P($G(^PRC(441,ITEMDA,3)),"^",7)
|
---|
| 52 | ;
|
---|
| 53 | ;
|
---|
| 54 | DESCR(INVPT,ITEMDA) ; description from inventory point or item master file
|
---|
| 55 | N Y
|
---|
| 56 | S Y=$P($G(^PRCP(445,+INVPT,1,+ITEMDA,6)),"^") I Y="" S Y=$P($G(^PRC(441,+ITEMDA,0)),"^",2)
|
---|
| 57 | Q Y
|
---|
| 58 | ;
|
---|
| 59 | ;
|
---|
| 60 | INVNAME(INVPT) ; inventory point name for inventory point
|
---|
| 61 | Q $P($G(^PRCP(445,+INVPT,0)),"^")
|
---|
| 62 | ;
|
---|
| 63 | ;
|
---|
| 64 | FCPDA(SITE,INVPT) ; returns fund control point da number for site and invpt
|
---|
| 65 | N Y
|
---|
| 66 | S Y=$P($G(^PRC(420,+SITE,1,+$O(^PRC(420,"AE",+SITE,+INVPT,0)),0))," ") I Y'="" S Y=SITE_Y ; Multiple FCP not supported
|
---|
| 67 | Q Y
|
---|
| 68 | ;
|
---|
| 69 | ;
|
---|
| 70 | VENNAME(VENDA) ; return vendor name for da;global (445 or 440)
|
---|
| 71 | I VENDA["PRC(440" Q $P($G(^PRC(440,+VENDA,0)),"^")
|
---|
| 72 | I VENDA["PRCP(445" Q $$INVNAME(+VENDA)
|
---|
| 73 | Q ""
|
---|
| 74 | ;
|
---|
| 75 | ;
|
---|
| 76 | VENDOR(INVPT,ITEMDA) ; return vendor number or name
|
---|
| 77 | N TYPE,X,Y
|
---|
| 78 | S TYPE=$P($G(^PRCP(445,INVPT,0)),"^",3),X=$P($G(^PRCP(445,INVPT,1,ITEMDA,0)),"^",12),Y=""
|
---|
| 79 | I TYPE="W" S Y=+X
|
---|
| 80 | I TYPE="P" S Y=$S(X["440":+X,1:"WHSE")
|
---|
| 81 | I TYPE="S" S Y=$P($$INVNAME(+X),"-",2,99)
|
---|
| 82 | Q Y
|
---|