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

1C 8.3. Как сделать так, чтобы у нужных товаров из ТЧ обнулялись резервы?

Автор gulnyr, 20 июн 2023, 14:02

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

gulnyr

Код:

Запрос = Новый Запрос();

Запрос.Текст="Выбрать ЗаказПокупателя.Ссылка Как Ссылка,
|ЗаказПокупателя.Номенклатура,
|ЗаказПокупателя.Количество,
|ЗаказПокупателя.Резерв КАК Резерв,
|ОстатокТоваровКомпании.КоличествоОстаток Как Остаток
|Из Документ.ЗаказПокупателя.Товары КАК ЗаказПокупателя
|ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиТоваровКомпании.Остатки КАК ОстатокТоваровКомпании
|ПО ЗаказПокупателя.Номенклатура.Код = ОстатокТоваровКомпании.Номенклатура.Код
|ГДЕ ЗаказПокупателя.Резерв>0 И ОстатокТоваровКомпании.КоличествоОстаток есть NULL";

ВыполнитьВыбрать = Запрос.Выполнить().Выбрать();

Пока ВыполнитьВыбрать.Следующий() Цикл
ПолучитьОбъект = ВыполнитьВыбрать.Ссылка.ПолучитьОбъект();

//Здесь должен быть код, который обнуляет резервы из нужного товара (из ТЧ),
//который находится в найденном документе

ПолучитьОбъект.Записать();
КонецЦикла;

Как сделать так, чтобы у нужных товаров из ТЧ обнулялись резервы?

Afinogen

ну для начала хотя бы понимать какие из товаров нужные)

gulnyr

Afinogen, данный код выводит весь список, для примера:

Номер документа   Номенклатура   Резерв
115                       Болт1                   0
115                       Шуруп1                1
118                       Шуруп2                0
119                       Шуруп3                0
134                       Болт2                   1
134                       Шуруп4                3

Нужные товары: Шуруп1 (из документа №115), Болт2, Шуруп4 (из документа №134), т.к. у них резервы не нулевые, и их нужно обнулять. Как это сделать?

Максим75

Движения.ОстаткиНаСкладах.Записывать = Истина;

Для Каждого ТекСтрокаТМЦ Из ТМЦ Цикл
Движение = Движения.ОстаткиНаСкладах.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
Движение.Период = Дата;
Движение.ТМЦ = ТекСтрокаТМЦ.Товар;
Движение.НаборСвойств = ТекСтрокаТМЦ.НаборСвойств;
Движение.Склад = Склад;
Движение.Количество = ТекСтрокаТМЦ.Колво;



КонецЦикла;

Вот как-то так, подставить свой регистр, свои измерения, свою итерацию цикла

Теги:

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

Рейтинг@Mail.ru

Поиск