persistent 1 ToReceive GSQLStorage %Library.Persistent EWMS SQL,NOCREATE dbo.ToReceive_Cache 1 1 OrderNr,Supplier,Product,Batch,Quality,Owner,LocID,Sectie %Integer 24 Abc %String 5 Batch %Float 32 BoxPrice %Float 30 BoxVol %Float 31 BoxWeight %Integer 20 CarrierDwh %Float 22 CarrierTarra %Integer 19 CarrierType %Float 23 CarrierWeight %String 33 ExpDay %String 36 InsertTime %Integer 11 LocG %String 8 LocID %Integer 10 LocM %Integer 26 NrCarriers %Integer 34 OrderCancelled %Integer 35 OrderConfirmed %String 2 OrderNr %String 7 Owner %Float 29 PcsPrice %Float 27 PcsVol %Float 28 PcsWeight %String 4 Product %Integer 25 ProductGroup %Float 17 QtyBlock %Float 16 QtyInBox %Float 13 QtyReceived %Float 12 QtyToReceive %Float 15 QtyTransportReq %Float 14 QtyTransported %String 6 Quality %String 18 ReasonBlock %String 9 Sectie %Integer 37 Sender %String 3 Supplier %Integer 21 UnitLoadType %String 38 ExtraInt1 %String 39 ExtraInt2 %String 40 ExtraInt3 %String 41 ExtraInt4 %String 42 ExtraInt5 %String 43 ExtraInt6 %String 44 ExtraInt7 %String 45 ExtraInt8 %String 46 ExtraInt9 %String 47 ExtraInt10 %String 48 ExtraChar1 %String 49 ExtraChar2 %String 50 ExtraChar3 %String 51 ExtraChar4 %String 52 ExtraChar5 %String 53 ExtraChar6 %String 54 ExtraChar7 %String 55 ExtraChar8 %String 56 ExtraChar9 %String 57 ExtraChar10 %String 58 ExtraFloat1 %String 59 ExtraFloat2 %String 60 ExtraFloat3 %String 61 ExtraFloat4 %String 62 ExtraFloat5 1 %Boolean %Boolean 1 %Boolean 1 OrderNr:%String %String 1 OrderNr,Batch,Product,Supplier,IncQty %String 1 %Library.List 1 OrderNr,Supplier,Product,Batch,Quality,Owner,LocID,Sectie,ReturnEmptyWhenNew:%Library.Boolean=0 %Library.String Parent heeft identiek id, met uizondering van locid en sectie, de parent bevat een cumulatie van sublijnen EWMS.ToReceive %SQLQuery paPalletID:%String SELECT ID,OrderNr,Batch,Product,QtyReceived,QtyToReceive,QtyTransported,QtyTransportReq,OrderNr,Batch,ExtraChar3,ExtraChar4 FROM EWMS.ToReceive WHERE (LocID = :paPalletID) ORDER BY Product OrderNr moet geconverteerd worden naar nummer want het zit als string met spaties voor en achter in de db We checken de parentlijnen (waarvan locid en sectie "00000000" is) %SQLQuery paOrderNr:%String QtyReceived)) AND (LocID='00000000') AND (Sectie='00000000')]]> %Library.SQLQuery paLocID:%String 5) AND (Main.Product=Sub.Product) AND (Main.LocID=:paLocID) ORDER BY Main.Product]]> %SQLQuery paPalletID:%String,paProduct:%String SELECT SUM(QtyToReceive) AS QtyToReceive FROM EWMS.ToReceive WHERE (LocID=:paPalletID) AND (Product=:paProduct) AND (QtyTransported=0) GROUP BY LocID,Product %SQLQuery paPalletID:%String,paProduct:%String SELECT OrderNr,Batch,SUM(QtyToReceive) As QtyToReceive,SUM(QtyTransported) As QtyTransported from EWMS.ToReceive WHERE (LocID=:paPalletID) AND (Product=:paProduct) GROUP BY OrderNr,Batch ORDER BY OrderNr =================================================================================================================== QUERY: QGetProdsViaPallet =================================================================================================================== %Query paPalletID:%String 1 %Status achteraan id array, zoals gewenst (reeds gestockeerde achteraan) . If $D(aRows(SortKey)) Do ;Cumuleren van productenaantal .. Set $LI(aRows(SortKey),$$$cntQtyToReceive)=$LI(aRows(SortKey),$$$cntQtyToReceive)+RS.Data("QtyToReceive") .. Set $LI(aRows(SortKey),$$$cntCumulated)=1 . Else Do .. Set aRows(SortKey)=$LB(ProductNr,RS.Data("QtyToReceive"),0,DoelPalletID) ;3e $LI = cumulated, 4e = DoelPalletID voorzien voor later... Set Loop="" Quit $$$OK ]]> 1 QGetProdsViaPalletExecute %Status 1 QGetProdsViaPalletExecute %Status %CacheSQLStorage ^EWMS.ToReceiveS