| [613] | 1 | PRCPAWC0 ;WISC/RFJ-adjustment code sheets create and trans ;9.9.97
 | 
|---|
 | 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 | CODESHTS(INVPT,TRANID)       ;  create and transmit code sheets
 | 
|---|
 | 8 |  ;  for invpt and transaction register id
 | 
|---|
 | 9 |  N %,%H,%X,%Y,ACCT,DA,DATA,INVVALUE,ISMSCNT,ISMSFLAG,ITEMDA,NSN,PRCPXMZ,QSIGN,QTY,SELVALUE,STRING,VOUCHER,VSIGN
 | 
|---|
 | 10 |  S ISMSFLAG=$$ISMSFLAG^PRCPUX2(PRC("SITE"))
 | 
|---|
 | 11 |  K ^TMP($J,"PRCPAWN1")
 | 
|---|
 | 12 |  S ISMSCNT=0
 | 
|---|
 | 13 |  S DA=0 F  S DA=$O(^PRCP(445.2,"T",INVPT,TRANID,DA)) Q:'DA  S DATA=$G(^PRCP(445.2,DA,0)) I DATA'="" D
 | 
|---|
 | 14 |  .   I '$D(VOUCHER),$L($P(DATA,"^",15)) S VOUCHER=$P(DATA,"^",15)
 | 
|---|
 | 15 |  .   S ITEMDA=+$P(DATA,"^",5) I 'ITEMDA Q
 | 
|---|
 | 16 |  .   S NSN=$$NSN^PRCPUX1(ITEMDA),ACCT=$$ACCT1^PRCPUX1($E(NSN,1,4))
 | 
|---|
 | 17 |  .   S QTY=+$P(DATA,"^",7),INVVALUE=+$P(DATA,"^",22),SELVALUE=+$P(DATA,"^",23)
 | 
|---|
 | 18 |  .   I ISMSFLAG=2 D ISMS Q
 | 
|---|
 | 19 |  .   D LOG
 | 
|---|
 | 20 |  ;
 | 
|---|
 | 21 |  ;  transmit isms code sheets
 | 
|---|
 | 22 |  I ISMSFLAG=2,ISMSCNT D
 | 
|---|
 | 23 |  .   K ^TMP($J,"STRING")
 | 
|---|
 | 24 |  .   S %X="^TMP("_$J_",""PRCPAWN1"",",%Y="^TMP("_$J_",""STRING""," D %XY^%RCR
 | 
|---|
 | 25 |  .   D CODESHT^PRCPSMGO(PRC("SITE"),"ADJ",VOUCHER)
 | 
|---|
 | 26 |  ;
 | 
|---|
 | 27 |  ;  transmit log code sheets to isms
 | 
|---|
 | 28 |  I ISMSFLAG'=2,ISMSCNT D
 | 
|---|
 | 29 |  .   K ^TMP($J,"STRING")
 | 
|---|
 | 30 |  .   S %X="^TMP("_$J_",""PRCPAWN1"",",%Y="^TMP("_$J_",""STRING""," D %XY^%RCR
 | 
|---|
 | 31 |  .   D TRANSMIT^PRCPSMCL(PRC("SITE"),605,"LOG")
 | 
|---|
 | 32 |  .   W !!?4,"LOG 605 Transmitted in MailMan Messages:" I $D(PRCPXMZ) S %=0 F  S %=$O(PRCPXMZ(%)) Q:'%  W " ",PRCPXMZ(%),"  "
 | 
|---|
 | 33 |  K ^TMP($J,"PRCPAWN1"),^TMP($J,"STRING")
 | 
|---|
 | 34 |  Q
 | 
|---|
 | 35 |  ;
 | 
|---|
 | 36 |  ;
 | 
|---|
 | 37 | ISMS ;  format isms code sheet
 | 
|---|
 | 38 |  I QTY D ADJUST^PRCPSMA0(INVPT,ITEMDA,QTY,"","","") I STRING("AT")'="" S ISMSCNT=ISMSCNT+1,^TMP($J,"PRCPAWN1",ISMSCNT)=STRING("AT")
 | 
|---|
 | 39 |  I INVVALUE D ADJUST^PRCPSMA0(INVPT,ITEMDA,"",INVVALUE,+$P($G(^PRCP(445,INVPT,1,ITEMDA,0)),"^",22),"") I STRING("AT")'="" S ISMSCNT=ISMSCNT+1,^TMP($J,"PRCPAWN1",ISMSCNT)=STRING("AT")
 | 
|---|
 | 40 |  Q
 | 
|---|
 | 41 |  ;
 | 
|---|
 | 42 |  ;
 | 
|---|
 | 43 | LOG ;  format log code sheets for isms
 | 
|---|
 | 44 |  S NSN=$E($TR($P(NSN,"-",2,4),"-")_"          ",1,10)
 | 
|---|
 | 45 |  ;  format quantity
 | 
|---|
 | 46 |  S QSIGN="+"
 | 
|---|
 | 47 |  I QTY<0 S QSIGN="-",QTY=QTY*-1
 | 
|---|
 | 48 |  S QTY=$S(QTY=0:"     ",1:$E("00000",$L(QTY)+1,5)_QTY)
 | 
|---|
 | 49 |  ;  format inventory value
 | 
|---|
 | 50 |  S VSIGN=QSIGN
 | 
|---|
 | 51 |  I INVVALUE S INVVALUE=$TR($J(INVVALUE,0,2),"."),VSIGN="+" I INVVALUE<0 S VSIGN="-",INVVALUE=INVVALUE*-1
 | 
|---|
 | 52 |  S INVVALUE=$S('INVVALUE:"     ",1:$E("0000000",$L(INVVALUE)+1,7)_INVVALUE)
 | 
|---|
 | 53 |  ;  build code sheets
 | 
|---|
 | 54 |  S %="",$P(%," ",80)=""
 | 
|---|
 | 55 |  I '$D(VOUCHER) S VOUCHER="     "
 | 
|---|
 | 56 |  I QSIGN=VSIGN S ISMSCNT=ISMSCNT+1,^TMP($J,"PRCPAWN1",ISMSCNT)="   "_NSN_PRC("SITE")_"605A"_ACCT_QTY_INVVALUE_QSIGN_VOUCHER_$E(DT,4,7)_$E(DT,2,3)_$E(%,1,35) Q
 | 
|---|
 | 57 |  I +QTY S ISMSCNT=ISMSCNT+1,^TMP($J,"PRCPAWN1",ISMSCNT)="   "_NSN_PRC("SITE")_"605A"_ACCT_QTY_"0000000"_QSIGN_VOUCHER_$E(DT,4,7)_$E(DT,2,3)_$E(%,1,35)
 | 
|---|
 | 58 |  I +INVVALUE S ISMSCNT=ISMSCNT+1,^TMP($J,"PRCPAWN1",ISMSCNT)="   "_NSN_PRC("SITE")_"605A"_ACCT_"00000"_INVVALUE_VSIGN_VOUCHER_$E(DT,4,5)_$E(DT,6,7)_$E(DT,2,3)_$E(%,1,35)
 | 
|---|
 | 59 |  Q
 | 
|---|