Показать сообщение отдельно
Старый 16.11.2005, 13:35   #1  
Def is offline
Def
Участник
 
50 / 32 (2) +++
Регистрация: 28.09.2005
Остатки номенклатуры
Возникла необходимость самостоятельно выбрать остатки по складу на некоторую дату
делаю так
1. выбираю InventSum
2. подтягиваю изменения InventTrans за некоторый период

выглядит примерно так

X++:
        while select itemid, sum(AvailPhysical) from inventSum
            group by itemid
        join  inventDimSum
            group by inventLocationId
            where inventDimSum.inventDimId == inventSum.inventDimId
        join inventTable
            where inventSum.ItemId == inventTable.ItemId &&
                  inventTable.ItemType == ItemType::BOM &&//остатки тока по спецификациям
                  inventTable.ItemGroupId like filter
        {
                select itemId from inventTransPostingPhysical
                    group by itemId
                    where inventTransPostingPhysical.inventTransPostingType     == InventTransPostingType::Physical     &&
                          inventTransPostingPhysical.transDate                  >=  _date &&
                          inventTransPostingPhysical.ItemId                     == inventSum.ItemId
                join sum(costAmountPhysical),sum(qty) from inventTrans
                    where inventTrans.voucherPhysical               == inventTransPostingPhysical.voucher        &&
                          inventTrans.datePhysical                  == inventTransPostingPhysical.transDate      &&
                          inventTrans.inventTransId                 == inventTransPostingPhysical.inventTransId
                join inventDimTrans
                    where inventDimTrans.inventDimId == inventTrans.inventDimId &&
                          inventDimSum.InventLocationId == inventDimTrans.InventLocationId;
                qty = inventSum.AvailPhysical - inventTrans.Qty;
и так далее

возникает следующий вопрос, если в InventSum нет записи даже с количесвом 0 то плакал весь мой запрос потому как обращение к InventTrans уже не будет и остток я потеряю

если когда то возникало движение по номенклатуре по конкретной InventDim
будет ли эта запись хранится там с нулевыми количествами или она оттуда успешно исчезает?