Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 12:36

Бронирование товара без проведения документа

Автор ilnur75, 16 апр 2017, 17:20

0 Пользователей и 1 гость просматривают эту тему.

ilnur75

Всем привет!
По методичке делаю практикум. Задача в том , чтобы бронировать товар из остатков товаров с учетом уже имеющейся брони на товары. Документ "продажи товаров" при этом не должен быть проведенным.

Что сделано. В форме документа создана кнопка "Бронировать", из модуля формы документа выполнение процедуры бронирования переходит на сервер в процедуру модуля объекта в процедуру "бронирование", но не в процедуру "обработка проведения".

В методичке подробно расписан механизм контроля остатков товаров.По аналогии я сделал для бронирования.

Получилось что код работает,когда достаточно остатков для брони.Неважно сколько строк в таб.части документа заполнено. Бронь заполняется и вычитается из остатков.

Но есть проблема,
когда остаток какого-нибудь товара меньше количества бронируемого товара.
Как это проявляется. Если в таб.части указан один товар, т.е. заполнена одна строка,и количество документа больше остатка , т.е. в нашем случае количество бронь больше остатка, то код срабатывает, строка в регистр бронирования не попадает.

Но если заполнено две строки, и по одной количество брони меньше остатка, то эта строка уже попадает в регистр бронирования, а строка где бронь больше остатка, не попадает в регистр бронирования.
Полагаю, что должен быть отказ в бронировании для этих строк, при условии что бронь больше остатка и в результате в регистре бронирования должна быть пустая строка.

Как это сделать в процедуре модуля объекта? или как из этой процедуры перейти в процедуру "ПередЗаписью" чтобы использовать параметр "Отказ"?

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск