Странная ситуация с остатками. Выполнил следующую последовательность действий:
1) Совсем новая номенклатура, по ней сделал закупку
2) По закупке создал отборочную накладную 20.03.2007 на 5 единиц.
3) При помощи поля "Немедленное получение" с минусовым количеством отсторнирвал её тем же числом - все 5 единиц.
4) Создал новую отборочную накладную 21.03.2007 на 5 единиц
5) Создан финансовую накладеную 21.03.2007 на 5 единиц
Я считал, что используя класс InventSumDatePhysical получу на 15.03.2007 остаток равный нулю, но не тут-то было: остаток -5 (минус пять).
Код в принципе простейший:
X++:
inventDimParm.initFromInventDim(_inventDim);
inventSumDate = InventSumDatePhysicalDim::newParameters(_dateSaldo, _inventTable.ItemId, _inventDim, inventDimParm);
tmpQty = inventSumDate.physicalQuantity();
Ползал отладчиком, в итоге пришел к выводу, что какая-то проблема с соответствием InventTrans и InventTransPosting по физическим разноскам (один ваучер, заданный в поле InventTrans в качестве физического, в таблице разноски идет по строке с финансовой разноской).
Вопрос: сталкивался ли кто-нибудь с подобным поведением? Пока не могу понять копать стандартный функционал или модификации приводят к такому?
Ax 3.0 SP 3 с некоторыми вытяжками из SP 5