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

ASURQ810.m

Go to the documentation of this file.
  1. ASURQ810 ; IHS/ITSC/LMH -RPT 81 DROP SHIP LIST SORT ;
  1. ;;4.2T2;Supply Accounting Mgmt. System;;JUN 30, 2000
  1. ;This routine sorts report 81 extracts into proper sequence so that
  1. ;the report can be formatted and printed.
  1. I '$D(ASUP("QTR")) D SETQTR^ASUUDATE Q:$D(DUOUT)
  1. S ASUT="ISS",ASUT("TRCD")=""
  1. S ^XTMP("ASUR","R81",0)=ASUK("DT","FM")_U_ASUP("QTR")
  1. S ^XTMP("ASUR","R82",0)=ASUK("DT","FM")_U_ASUP("QTR")
  1. S ASUX("ARST")=ASUL(1,"AR","AP")_"000"
  1. F S ASUX("ARST")=$O(^ASUMS(ASUX("ARST"))) Q:$E(ASUX("ARST"),1,2)'=ASUL(1,"AR","AP") D
  1. .S ASUMX("E#","IDX")=0
  1. .F S ASUMX("E#","IDX")=$O(^ASUMS(ASUX("ARST"),1,ASUMX("E#","IDX"))) Q:$E(ASUMX("E#","IDX"),1,2)'=ASUL(1,"AR","AP") D
  1. ..Q:$P(^ASUMS(ASUX("ARST"),1,ASUMX("E#","IDX"),0),U)["999999"
  1. ..S ^XTMP("ASUR","R81",0,ASUX("ARST"))=$P(^ASUL(2,ASUX("ARST"),0),U)
  1. ..S ^XTMP("ASUR","R82",0,ASUX("ARST"))=^XTMP("ASUR","R81",0,ASUX("ARST"))
  1. ..S ASUMS("EOQ","TP")=$P(^ASUMS(ASUX("ARST"),1,ASUMX("E#","IDX"),2),U,5)
  1. ..S ASUMX("ACC")=$P(^ASUMX(ASUMX("E#","IDX"),0),U,6)
  1. ..S ASUX("ACIX")=ASUMX("ACC")_ASUMX("E#","IDX")
  1. ..I ASUMS("EOQ","TP")="S" D Q
  1. ...S ^XTMP("ASUR","R81",0,"IDX",ASUMX("E#","IDX"))=ASUMX("ACC")
  1. ...S ^XTMP("ASUR","R81",0,ASUX("ARST"),ASUX("ACIX"))=$P(^ASUL(9,ASUMX("ACC"),0),U)
  1. ..I ASUMS("EOQ","TP")="Y" D
  1. ...S ^XTMP("ASUR","R82",0,"IDX",ASUMX("E#","IDX"))=ASUMX("ACC")
  1. ...S ^XTMP("ASUR","R82",0,ASUX("ARST"),ASUX("ACIX"))=$P(^ASUL(9,ASUMX("ACC"),0),U)
  1. S ASUX("QTR")=$E(ASUP("QTR"),5,6)
  1. S ASUX("QTRF")=$E(ASUP("QTR"),1,4)_"00"
  1. S ASUV("YR")=ASUP("YR") S:$L(ASUV("YR"))=4 ASUV("YR")=$E(ASUV("YR"),3,4)
  1. F S ASUX("QTRF")=$O(^ASUML("C",ASUX("QTRF"))) Q:ASUX("QTRF")']"" Q:$E(ASUX("QTRF"),3,4)'=ASUV("YR") D
  1. .S ASUV("CQTR")=$E(ASUX("QTRF"),5,6) Q:ASUV("CQTR")>ASUX("QTR")
  1. .S ASUX("XTRQTR")=""
  1. .F S ASUX("XTRQTR")=$O(^ASUML("C",ASUX("QTRF"),ASUX("XTRQTR"))) Q:ASUX("XTRQTR")'?1N.N D
  1. ..S ASUX("XTRDT")=""
  1. ..F S ASUX("XTRDT")=$O(^ASUML(ASUX("XTRQTR"),"B",ASUX("XTRDT"))) Q:ASUX("XTRDT")="" D
  1. ...S ASUHDA=""
  1. ...F S ASUHDA=$O(^ASUH("AX",ASUX("XTRDT"),ASUHDA)) Q:ASUHDA="" D ASURQ811
  1. END ;
  1. K ASUT,ASUR,ASUMS,ASUV,ASUX
  1. Q
  1. ASURQ811 ;DROP SHIP LIST SORT
  1. D READ^ASU0TRRD(.ASUHDA,"H") Q:$G(ASUT)']""
  1. Q:ASUT("TYPE")'=3
  1. S ASUMX("E#","IDX")=ASUL(1,"AR","AP")_ASUT(ASUT,"IDX")
  1. S ASUX("ARST")=ASUL(1,"AR","AP")_0_ASUT(ASUT,"STA")
  1. S ASUX("SST")=ASUL(1,"AR","AP")_0_ASUT(ASUT,"SST")
  1. Q:$G(^ASUMS(ASUX("ARST"),1,ASUMX("E#","IDX"),0))'[""
  1. Q:$P(^ASUMS(ASUX("ARST"),1,ASUMX("E#","IDX"),0),U)["999999"
  1. S ASUMX("ACC")=ASUT(ASUT,"ACC")
  1. S ASUX("QTY")=ASUT(ASUT,"QTY","ISS")
  1. S:ASUX("QTY")']"" ASUX("QTY")=ASUT(ASUT,"QTY","REQ")
  1. I ASUT("TRCD")="3K" D Q
  1. .I ASUT(ASUT,"EOQ TYP")="S" D XTR Q
  1. .I $D(^XTMP("ASUR","R81",0,"IDX",ASUMX("E#","IDX"))) D XTR Q
  1. I ASUT("TRCD")'=32 Q
  1. I ASUT(ASUT,"EOQ TYP")="S" D XTR Q
  1. I $D(^XTMP("ASUR","R81",0,"IDX",ASUMX("E#","IDX"))) D XTR Q
  1. I ASUT(ASUT,"EOQ TYP")="Y" D ASURQ821 Q
  1. I $D(^XTMP("ASUR","R82",0,"IDX",ASUMX("E#","IDX"))) D ASURQ821
  1. XTR ;
  1. I ASUT("TRCD")="3K" D
  1. .S ASUT(ASUT,"VAL")=ASUT(ASUT,"VAL")*-1
  1. .S ASUX("QTY")=ASUX("QTY")*-1
  1. I ASUMX("ACC")']"" D SETACC Q:ASUMX("ACC")']""
  1. S ASUX("ACIX")=ASUMX("ACC")_ASUMX("E#","IDX")
  1. I '$D(^XTMP("ASUR","R81",ASUX("ARST"))) D
  1. .S ^XTMP("ASUR","R81",ASUX("ARST"))=$G(^XTMP("ASUR","R81",0,ASUX("ARST")))
  1. I '$D(^XTMP("ASUR","R81",ASUX("ARST"),ASUX("ACIX"))) D
  1. .S ^XTMP("ASUR","R81",ASUX("ARST"),ASUX("ACIX"))=$G(^XTMP("ASUR","R81",0,ASUX("ARST"),ASUX("ACIX")))
  1. K ASUL(18)
  1. D SST^ASULDIRR(ASUX("SST"))
  1. I '$D(^XTMP("ASUR","R81",ASUX("ARST"),ASUX("ACIX"))) D
  1. .S ^XTMP("ASUR","R81",ASUX("ARST"),ASUX("ACIX"))=$G(^XTMP("ASUR","R81",0,ASUX("ARST"),ASUX("ACIX")))
  1. F X=19,20,22 K ASUL(X)
  1. D REQ^ASULDIRR(ASUT(ASUT,"USR"))
  1. S ASUX("REQ")=$G(ASUL(20,"REQ","E#")) Q:ASUX("REQ")']""
  1. I '$D(^XTMP("ASUR","R81",ASUX("ARST"),ASUX("ACIX"),ASUX("REQ"))) D
  1. .S ^XTMP("ASUR","R81",ASUX("ARST"),ASUX("ACIX"),ASUX("REQ"))="0^0^0^0"
  1. S $P(^XTMP("ASUR","R81",ASUX("ARST"),ASUX("ACIX"),ASUX("REQ")),U,2)=$P(^XTMP("ASUR","R81",ASUX("ARST"),ASUX("ACIX"),ASUX("REQ")),U,2)+ASUX("QTY")
  1. S $P(^XTMP("ASUR","R81",ASUX("ARST"),ASUX("ACIX"),ASUX("REQ")),U,4)=$P(^XTMP("ASUR","R81",ASUX("ARST"),ASUX("ACIX"),ASUX("REQ")),U,4)+ASUT(ASUT,"VAL")
  1. I ASUX("QTR")'=ASUV("CQTR") Q
  1. S $P(^XTMP("ASUR","R81",ASUX("ARST"),ASUX("ACIX"),ASUX("REQ")),U)=$P(^XTMP("ASUR","R81",ASUX("ARST"),ASUX("ACIX"),ASUX("REQ")),U)+ASUX("QTY")
  1. S $P(^XTMP("ASUR","R81",ASUX("ARST"),ASUX("ACIX"),ASUX("REQ")),U,3)=$P(^XTMP("ASUR","R81",ASUX("ARST"),ASUX("ACIX"),ASUX("REQ")),U,3)+ASUT(ASUT,"VAL")
  1. Q
  1. ASURQ821 ;YEARLY ITEM LIST SORT
  1. I ASUT("TRCD")="3K" D
  1. .S ASUT(ASUT,"VAL")=ASUT(ASUT,"VAL")*-1
  1. .S ASUX("QTY")=ASUX("QTY")*-1
  1. I '$D(^XTMP("ASUR","R82",ASUX("ARST"))),$D(^XTMP("ASUR","R81",ASUX("ARST"))) D
  1. .S ^XTMP("ASUR","R82",ASUX("ARST"))=^XTMP("ASUR","R81",ASUX("ARST"))
  1. I '$G(^XTMP("ASUR","R82",ASUX("ARST")))']"" D
  1. .S ^XTMP("ASUR","R82",ASUX("ARST"))=$G(^XTMP("ASUR","R81",0,ASUX("ARST")))
  1. I '$D(^XTMP("ASUR","R82",ASUX("ARST"),ASUX("ACIX"))) D
  1. .S ^XTMP("ASUR","R82",ASUX("ARST"),ASUX("ACIX"))=$G(^XTMP("ASUR","R82",0,ASUX("ARST"),ASUX("ACIX")))
  1. D SST^ASULDIRR(ASUX("SST"))
  1. D REQ^ASULDIRR(ASUT(ASUT,"USR"))
  1. S ASUX("REQ")=$G(ASUL(20,"REQ","E#")) Q:ASUX("REQ")']""
  1. I '$D(^XTMP("ASUR","R82",ASUX("ARST"),ASUX("ACIX"),ASUX("REQ"))) D
  1. .S ^XTMP("ASUR","R82",ASUX("ARST"),ASUX("ACIX"),ASUX("REQ"))="0^0^0^0"
  1. S ASUX=^XTMP("ASUR","R82",ASUX("ARST"),ASUX("ACIX"),ASUX("REQ"))
  1. S $P(ASUX,U,2)=$P(ASUX,U,2)+ASUX("QTY")
  1. S $P(ASUX,U,4)=$P(ASUX,U,4)+ASUT(ASUT,"VAL")
  1. I ASUX("QTR")=ASUV("CQTR") D
  1. .S $P(ASUX,U)=$P(ASUX,U)+ASUX("QTY")
  1. .S $P(ASUX,U,3)=$P(ASUX,U,3)+ASUT(ASUT,"VAL")
  1. S ^XTMP("ASUR","R82",ASUX("ARST"),ASUX("ACIX"),ASUX("REQ"))=ASUX
  1. SETACC ;EP; SET ACCOUNT
  1. S ASUMX("ACC")=$P(^ASUMX(ASUMX("E#","IDX"),0),U,6)
  1. Q