Здравствуйте.
Подскажите такую вещь, что то не соображу как это делается:
Конфа самописная.
Есть регистр накопления, при поступлении записывается в регистр накопления "ТоварыВПродаже"
При продаже списывается расходом:
Как мне проверить если в остатке, если нету, то процедура завершается Отказ = Ложь;
Подскажите такую вещь, что то не соображу как это делается:
Конфа самописная.
Есть регистр накопления, при поступлении записывается в регистр накопления "ТоварыВПродаже"
При продаже списывается расходом:
Процедура ОбработкаПроведения(Отказ, Режим)
//{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
// регистр ТоварыВПродаже Расход
Движения.ТоварыВПродаже.Записывать = Истина;
Для Каждого ТекСтрокаТовары Из Товары Цикл
Движение = Движения.ТоварыВПродаже.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
Движение.Период = Дата;
Движение.Дата = Дата;
Движение.Товары = ТекСтрокаТовары.Наименование;
Движение.Количество = 1;
Движение.Цена = ТекСтрокаТовары.Цена;
КонецЦикла;
КонецПроцедуры
ПоказатьКак мне проверить если в остатке, если нету, то процедура завершается Отказ = Ложь;
По теме из базы знаний
- Методика оперативного проведения и управляемые блокировки
- Контроль остатков при закрытии чека. Контроль остатков и резерва на складе. Алкоголь и по виду номенклатуры. 1С Розница 2.2.7-2.2.10
- [Расширение] УНФ: Дополнительный контроль остатков (списания) товаров на дату документа (как в 1С:Бухгалтерии)
- Гарантированное проведение документов (подключаемое расширение)
- Контроль остатков по конкретным складам в УНФ
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Я сделал проще:
Процедура ОбработкаПроведения(Отказ, Режим)
//{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
ЕстьНаСкладе = Ложь;
Движения.ТоварыВПродаже.Записывать = Истина;
Для Каждого ТекСтрокаТовары Из Товары Цикл
Товар = ТекСтрокаТовары.Наименование;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ТоварыВПродажеОстатки.Товары,
| ТоварыВПродажеОстатки.КоличествоОстаток
|ИЗ
| РегистрНакопления.ТоварыВПродаже.Остатки КАК ТоварыВПродажеОстатки
|ГДЕ
| ТоварыВПродажеОстатки.Товары = &Товар";
Запрос.УстановитьПараметр("Товар", Товар);
Результат = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = Результат.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
Движение = Движения.ТоварыВПродаже.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
Движение.Период = Дата;
Движение.Дата = Дата;
Движение.Товары = ТекСтрокаТовары.Наименование;
Движение.Количество = 1;
Движение.Цена = ТекСтрокаТовары.Цена;
ЕстьНаСкладе = Истина;
КонецЦикла;
Если НЕ ЕстьНаСкладе Тогда
Отказ = Истина;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот