01.08.2006, 17:24 | #1 |
Участник
|
Резервирование проводок
Добрый день
Встала такая проблема Имеется заказ, строки заказа, у строк заказа естественно есть проводки Как их програмно зарезервировать? Заранее спасибо |
|
01.08.2006, 17:29 | #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(); } |
|
01.08.2006, 17:56 | #3 |
Участник
|
inventTransReserv = inventTrans::findTransId(_salesLine.InventTransId);
if ((inventTransReserv.StatusIssue == StatusIssue::ReservPhysical || inventTransReserv.StatusIssue == StatusIssue::Sold) && inventTransReserv.Qty == -_salesLine.SalesQty) { info("Уж зарезервировали"); } Чет смущает такая конструкция, а если там два inventTrans - в двух ячейках допустим?.. Кажется если проверку вообще не делать то тож ничего страшного.. |
|
01.08.2006, 18:12 | #4 |
Участник
|
Ага. проверку добавлял дополнительно.
Должно работать без нее. (Но у меня как раз не хотело - ругалось , что уже зарезервировано) (У нас просто нет номеров лота повторяющихся) |
|
02.08.2006, 10:00 | #5 |
Участник
|
Спасибо, но все не совсем так
Спасибо, но все не совсем так
У каждой строки заказа несколько проводок, отличающихся складской аналитикой Резервировать надо именно эти проводки Если делать так как предложено - резервируется строка заказа Проводки заменяются на новые |
|
02.08.2006, 10:17 | #6 |
Участник
|
Цитата:
Сообщение от nikbik
Спасибо, но все не совсем так
У каждой строки заказа несколько проводок, отличающихся складской аналитикой Резервировать надо именно эти проводки Если делать так как предложено - резервируется строка заказа Проводки заменяются на новые |
|
02.08.2006, 10:47 | #7 |
Участник
|
Спасибо. Уже пробовал
Для проверки поставил inventMovement = InventMovement::construct(inventTransReserv); вместо соответствующего оператора после того как отработало - все проводки исчезли |
|
02.08.2006, 11:51 | #8 |
Участник
|
Почему у Вас удаляются проводки для меня загадка...
У меня работает в таком варианте: PHP код:
Настройте правильно "отображение аналитики" чтобы убедиться, может в этом дело... |
|
02.08.2006, 15:15 | #9 |
Участник
|
Спасибо всем
Спасибо всем кто писал
Вроде дело в следующем: В свое время Юникон вставил в InventDim дополнительную аналитику, но не до конца отследил ее использовании при операциях, Поэтому стандартные методы не работали Пришлось воспользоваться тем как устроено ручное резервирование проводок Еще раз всем спасибо |
|