Вот такое задание - выбрать все открытые транзакции (определяем по AvailPhysical из InventSum) и потом зарезервировать в журнале Loss/Profit.
Пока что дошел до того, что умею искать по дименсиям (группуровка) и InventSum... а вот вычислить какая же именно транзакция счутается "открытой для резервирования" немогу.
Примерний код, который выводит все тразакции по FIFO + ItemId + искомых InventDim:
Код:
while select InventTrans
order by DatePhysical ASC
join InventSum
where InventTrans.ItemId == parmItemId &&
InventSum.ItemId == parmItemId &&
InventTrans.inventDimId == InventSum.inventDimId
#InventDimJoin(InventSum.inventDimId,InventDim,InventDimParm,InventDimCriteria)
Вопрос такой:
- как определить что транзакция открыта и сколько именно (так как мне надо будет делать строчку в журнале на каждую такую)?
Конкретный пример:
Код:
InventTrans
----------------------
ITEM_1 / +10 / 11.10.2006 / Location_1 / Serial_1
ITEM_1 / +5 / 12.10.2006 / Location_1 / Serial_2
ITEM_1 / +7 / 13.10.2006 / Location_1 / Serial_1
ITEM_1 / +4 / 14.10.2006 / Location_2 / Serial_2
Группируем по InventLocation и исчем Location_1, плюс надо зарезервировать 17 штук в журнале по FIFO