Цитата:
Сообщение от
miklenew
При создании отгрузочной накладной (если включена регистрация. Если не включена, то всё происходит как с обычным документом по строке заказа) не происходит изменение строки и проводки.
А вот и не правильно!
Проводки меняются, там прописываются поля TransChildType и TransChildRefId.
И в случае когда эти поля прописаны, работать с этим "мувментом" можно только с использованием "ChildBuffer".
Резервировать, например - не зря ж там в классах InventUpdate везде условия "понатыканы" типа:
X++:
inventTrans.TransChildType == movement.transChildType() &&
inventTrans.TransChildRefId == movement.transChildRefId() &&
По этому, если отталкиваться от InventTrans, то если по движению есть childBuffer, то и "мувмент" надо брать с его использованием, если нет, то не надо. Примерно так:
X++:
movement = InventMovement::construct(inventTrans);
if (movement.childBuffer().RecId)
{
buffer = movement.childBuffer();
movement = InventMovement::construct(buffer);
}
Ну и дальше его уже передавать в InventUpdate...
Сорри что старую тему поднял, просто случайно наткнулся...