Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: ASU5SUPD

ASU5SUPD.m

Go to the documentation of this file.
  1. ASU5SUPD ; IHS/ITSC/LMH -POST STATION MASTER CHANGE ;
  1. ;;4.2T2;Supply Accounting Mgmt. System;;JUN 30, 2000
  1. ;;This routine provides logic to post STATION MASTER records to
  1. ;;the database
  1. S:$G(DDSREFT)']"" DDSREFT=$G(ASUV("DDSREFT"))
  1. I $E(ASUT,3)="A" D ADD
  1. I $E(ASUT,3)="B" D USERLEVL
  1. I $E(ASUT,3)="C" D CHANGE
  1. I $E(ASUT,3)="D" D DELETE
  1. Q:$D(DDSERROR)
  1. D ^ASUJHIST
  1. K ASUS("ADD")
  1. Q
  1. ADD ;Add station master record
  1. N X
  1. S ASUMS("E#","STA")=ASUT(ASUT,"PT","STA")
  1. D S^ASUMSTRD ;Read Station portion of Station master into variables
  1. I $G(Y)<0 D
  1. .S X=ASUT(ASUT,"PT","STA")
  1. .D DIS^ASUMDIRA(.X) ;Add new Station if not on file
  1. S (X,ASUMS("E#","IDX"))=ASUT(ASUT,"PT","IDX")
  1. D DISX^ASUMDIRA(.X) ;Add new Index to station
  1. ;Read Index portion of Station master - new record (null variables)
  1. D ^ASUMSTRD
  1. ;Set Station index record fields from transaction
  1. S ASUMS("ESTB")=ASUT(ASUT,"DTS")
  1. S ASUMS("ORD#")=ASUT(ASUT,"ORD#")
  1. S ASUMS("SRC")=ASUT(ASUT,"SRC")
  1. S ASUMS("LTM")=ASUT(ASUT,"LTM")
  1. S ASUMS("RPQ-O")=ASUT(ASUT,"RPQ")
  1. S ASUV("RPQ")=ASUMS("LTM")+1
  1. S ASUMS("PMIQ")=ASUMS("RPQ-O")/ASUV("RPQ")
  1. S ASUMS("PMIQ")=$J(ASUMS("PMIQ"),0,0)
  1. S ASUMS("RPQ")=ASUT(ASUT,"RPQ")
  1. S ASUMS("EOQ","TB")=$S($G(ASUL(2,"STA","EOQTBL")):ASUL(2,"STA","EOQTBL"),1:50)
  1. S ASUMS("EOQ","MM")=ASUT(ASUT,"EOQ MM")
  1. S ASUMS("EOQ","QM")=ASUT(ASUT,"EOQ QM")
  1. S ASUMS("EOQ","AM")=ASUT(ASUT,"EOQ AM")
  1. S ASUMS("LSTISS")=""
  1. S ASUMS("VENAM")=ASUT(ASUT,"VEN NM")
  1. S ASUMS("LPP")=ASUT(ASUT,"UCS")
  1. S ASUMS("SLC")=ASUT(ASUT,"SLC")
  1. S ASUMS("VENUI")=ASUT(ASUT,"SUI")
  1. S ASUMS("SFSKM")="1.0"
  1. S ASUMS("EOQ","TP")=ASUT(ASUT,"EOQ TYP")
  1. S ASUMS("SPQ")=ASUT(ASUT,"SPQ")
  1. ;Initialize Usage statistic counters (12 months)
  1. F ASUU(11)=1:1:12 D
  1. .S (ASUMS("DMD","CALL",ASUU(11)),ASUMS("DMD","QTY",ASUU(11)))=0
  1. K ASUU(11)
  1. S ASUS("ADD")=1
  1. ;Write new Station Index record
  1. D ^ASUMSTWR
  1. Q
  1. ;Set Beginning Balance statistics for Station Index
  1. USERLEVL ;User Level change transaction
  1. I $E(ASUT,3)="B" D
  1. .I ASUT(ASUT,"ULVQTY")]"" D ^ASUMKBPS
  1. Q
  1. CHANGE ;Change station master transaction
  1. S ASUSV("FL#")="9002036.5"
  1. ;Update Station Index master fields from Transaction
  1. I ASUT(ASUT,"EOQ TYP")]"" D
  1. .S ASUMS("EOQ","TP")=ASUT(ASUT,"EOQ TYP")
  1. .S (ASUMS("EOQ","MM"),ASUMS("EOQ","QM"),ASUMS("EOQ","AM"))=""
  1. S:ASUT(ASUT,"SLC")]"" ASUMS("SLC")=ASUT(ASUT,"SLC")
  1. S ASUMS("ESTB")=ASUT(ASUT,"DTS")
  1. S:ASUT(ASUT,"EOQ MM")]"" ASUMS("EOQ","MM")=ASUT(ASUT,"EOQ MM")
  1. S:ASUT(ASUT,"ORD#")]"" ASUMS("ORD#")=ASUT(ASUT,"ORD#")
  1. S:ASUT(ASUT,"SRC")]"" ASUMS("SRC")=ASUT(ASUT,"SRC")
  1. S:ASUT(ASUT,"UCS")>0 ASUMS("LPP")=ASUT(ASUT,"UCS")
  1. S:ASUT(ASUT,"LTM")]"" ASUMS("LTM")=ASUT(ASUT,"LTM")
  1. S:ASUT(ASUT,"SUI")]"" ASUMS("VENUI")=ASUT(ASUT,"SUI")
  1. S:ASUT(ASUT,"SPQ")]"" ASUMS("SPQ")=ASUT(ASUT,"SPQ")
  1. I ASUT(ASUT,"RPQ")]"" D
  1. .S ASUMS("RPQ")=ASUT(ASUT,"RPQ")
  1. .S ASUV("RPM")=ASUMS("LTM")+ASUMS("SFSKM")
  1. .S ASUMS("PMIQ")=ASUT(ASUT,"RPQ")/ASUV("RPM")
  1. .S ASUMS("PMIQ")=$J(ASUMS("PMIQ"),0,0)
  1. S:ASUT(ASUT,"VEN NM")]"" ASUMS("VENAM")=ASUT(ASUT,"VEN NM")
  1. S:ASUT(ASUT,"EOQ QM")]"" ASUMS("EOQ","QM")=ASUT(ASUT,"EOQ QM")
  1. S:ASUT(ASUT,"EOQ AM")]"" ASUMS("EOQ","AM")=ASUT(ASUT,"EOQ AM")
  1. D MIX^ASUMSTWR ;Write updated Station Index master record
  1. Q
  1. DELETE ;Delete station master trans
  1. ;S ASUMS("E#","STA")=$O(^ASUMS("C",ASUMS("E#","IDX"),"")) ;CSC 1-14-99
  1. S ASUSV("FL#")="9002036.5"
  1. ;S ASUMS(0)=^ASUMS(ASUMS("E#","STA"),1,ASUMS("E#","IDX"),0)
  1. ;S ASUMS(2)=^ASUMS(ASUMS("E#","STA"),1,ASUMS("E#","IDX"),2)
  1. ;I $P(ASUMS(0),U,16)!($P(ASUMS(0),U,17))!($P(ASUMS(0),U,18))!($P(ASUMS(0),U,28)) D Q ;Balance was on hand -Reject Transaction
  1. ;.W *7 D MSG^ASUJHELP("Delete Unsucessful - BAL O/H") S DDSERROR=2 ;DFM P1 9/1/98
  1. ;I $P(ASUMS(2),U,2)>0 D Q ;Backorder was on file -Reject Transaction
  1. ;.W *7 D MSG^ASUJHELP("Delete Unsucessful -Back/Order O/H") S DDSERROR=1 ;DFM P1 9/1/98
  1. ;Q:$D(DDSERROR)
  1. D D^ASUMSTWR ;Station Index record may be cleared of information
  1. Q
  1. ;
  1. Q:$D(DDSERROR)
  1. D ^ASUJHIST ;Move transaction to History file
  1. K ASUS("ADD")
  1. Q