selecionar X.StockCode [topLevelPart], X.Qty [topQty],
Coalescer (E.Component, D.Component, C.Component, B.Component, A.Component) [lowerLevelPart],
*ISNULL do *ISNULL do *ISNULL do *ISNULL de ISNULL (E.QtyPer, 1) (D.QtyPer, 1) (C.QtyPer, 1) (B.QtyPer, 1) (A.QtyPer, 1) *X.Qty [Qty]
de (
SELECIONAR InvMovements.StockCode COMO StockCode, SOMA (InvMovements.TrnQty) COMO o QTY
De InvMovements
INTERNO JUNTAR-SE a InvMaster EM InvMovements.StockCode = InvMaster.StockCode
ONDE (InvMovements.EntryDate ENTRE o CONVERSO (DATETIME, “00:00 2010-05-31: 00”, 102)
E CONVERSO (DATETIME, “00:00 2010-06-27: 00”, 102))
E (InvMovements.TrnType = “R ") E (InvMaster.ProductClass DENTRO (“PDM”, “PRM”, “TM”, “PM "))
GRUPO por InvMovements.StockCode
) X
interno juntar-se a BOM A em A.ParentPart = X.StockCode
a esquerda junta-se a BOM B em B.ParentPart = A.Component
a esquerda junta-se a BOM C em C.ParentPart = B.Component
a esquerda junta-se a BOM D em D.ParentPart = C.Component
a esquerda junta-se a BOM E em E.ParentPart = D.Component
ORDEM por X.StockCode