|
|
#1 |
|
Участник
|
Резервирование проводок
Добрый день
Встала такая проблема Имеется заказ, строки заказа, у строк заказа естественно есть проводки Как их програмно зарезервировать? Заранее спасибо |
|
|
|
|
#2 |
|
Участник
|
Попробуйте так
Код: InventMovement inventMovement;
inventUpd_Reservation inventUpdReservation;
InventTrans inventTransReserv;
;
inventTransReserv = inventTrans::findTransId(_salesLine.InventTransId);
if ((inventTransReserv.StatusIssue == StatusIssue::ReservPhysical || inventTransReserv.StatusIssue == StatusIssue::Sold) && inventTransReserv.Qty == -_salesLine.SalesQty)
{
info("Уж зарезервировали");
}
else
{
inventMovement = InventMovement::construct(_salesLine);
inventUpdReservation = InventUpd_Reservation::newMovement(inventMovement, inventMovement.transQty(), false );
inventUpdReservation.updateNow();
} |
|
|
|
|
#3 |
|
Участник
|
inventTransReserv = inventTrans::findTransId(_salesLine.InventTransId);
if ((inventTransReserv.StatusIssue == StatusIssue::ReservPhysical || inventTransReserv.StatusIssue == StatusIssue::Sold) && inventTransReserv.Qty == -_salesLine.SalesQty) { info("Уж зарезервировали"); } Чет смущает такая конструкция, а если там два inventTrans - в двух ячейках допустим?.. Кажется если проверку вообще не делать то тож ничего страшного.. |
|
|
|
|
#4 |
|
Участник
|
Ага. проверку добавлял дополнительно.
Должно работать без нее. (Но у меня как раз не хотело - ругалось , что уже зарезервировано) (У нас просто нет номеров лота повторяющихся) |
|
|
|
|
#5 |
|
Участник
|
Спасибо, но все не совсем так
Спасибо, но все не совсем так
У каждой строки заказа несколько проводок, отличающихся складской аналитикой Резервировать надо именно эти проводки Если делать так как предложено - резервируется строка заказа Проводки заменяются на новые |
|
|
|
|
#6 |
|
Участник
|
Цитата:
Сообщение от nikbik
Спасибо, но все не совсем так
У каждой строки заказа несколько проводок, отличающихся складской аналитикой Резервировать надо именно эти проводки Если делать так как предложено - резервируется строка заказа Проводки заменяются на новые |
|
|
|
|
#7 |
|
Участник
|
Спасибо. Уже пробовал
Для проверки поставил inventMovement = InventMovement::construct(inventTransReserv); вместо соответствующего оператора после того как отработало - все проводки исчезли |
|
|
|
|
#8 |
|
Участник
|
Почему у Вас удаляются проводки для меня загадка...
У меня работает в таком варианте: PHP код:
Настройте правильно "отображение аналитики" чтобы убедиться, может в этом дело... |
|
|
|
|
#9 |
|
Участник
|
Спасибо всем
Спасибо всем кто писал
Вроде дело в следующем: В свое время Юникон вставил в InventDim дополнительную аналитику, но не до конца отследил ее использовании при операциях, Поэтому стандартные методы не работали Пришлось воспользоваться тем как устроено ручное резервирование проводок Еще раз всем спасибо |
|
|