Изменение номенклатуры в поступлениях через запросник
Добрый день. Грузил обработкой поступления в 1С Комлексная автоматизация. В результате из-за неверного кода номенклатуры в большом количестве документов проставилась неверная номенклатура. Перегружать не вариант, так как обработка не подтягивает склады, их приходилось проставлять вручную, а у нас их очень много. Просьба помочь с алгоритмом для изменения номенклатуры.
Сам я пока дошел только до вот этого:
Для Каждого Стр Из Объект1с.Товары Цикл
Стр.Номенклатура = СтрокаРезультата.НоменклатураНов;
КонецЦикла;
Но так он меняет вообще всю номенклатуру в документе, несмотря на то, что запросом я отбираю только нужную номенклатуру.
Нужно видимо проставить условия, но я не знаю какие.
PS В нашей версии 1С КА нет изменения выделенных документов(
Сам я пока дошел только до вот этого:
Для Каждого Стр Из Объект1с.Товары Цикл
Стр.Номенклатура = СтрокаРезультата.НоменклатураНов;
КонецЦикла;
Но так он меняет вообще всю номенклатуру в документе, несмотря на то, что запросом я отбираю только нужную номенклатуру.
Нужно видимо проставить условия, но я не знаю какие.
PS В нашей версии 1С КА нет изменения выделенных документов(
Найденные решения
Если Вы отобрали нужную номенклатуру. Дальше Вам необходимо в табличной части ТОВАРЫ, находить неправильный товар и его заменять. Т.е. у вас должно быть список неправильной номенклатуры:
типа такого
Для Каждого Стр Из Объект1с.Товары Цикл
Если Стр.Номенклатура = НоменклатураНеправильная Тогда
Стр.Номенклатура = СтрокаРезультата.НоменклатураНов;
КонецЕсли;
КонецЦикла;
типа такого
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Если Вы отобрали нужную номенклатуру. Дальше Вам необходимо в табличной части ТОВАРЫ, находить неправильный товар и его заменять. Т.е. у вас должно быть список неправильной номенклатуры:
типа такого
Для Каждого Стр Из Объект1с.Товары Цикл
Если Стр.Номенклатура = НоменклатураНеправильная Тогда
Стр.Номенклатура = СтрокаРезультата.НоменклатураНов;
КонецЕсли;
КонецЦикла;
типа такого
(2)
(2)
Странно в таком варианте он выдает ошибку, требуя поставить "Тогда", хотя "тогда" уже есть.
Попробовал взять неправильную номенклатуру в кавычки, стал требовать "конецесли". Допроставил "конецесли", алгоритм отрабатывает, хотя в самом документе ничего не меняется. При этом изначальный запрос номенклатуру менял. Чудеса.
Вот так он работает, но ничего не меняет.
А вот так выдает ошибку неизвестный модуль 15,32 ожидается ключевое слово "Тогда"
Если Стр.Номенклатура = НоменклатураНеправильная Тогда
Стр.Номенклатура = СтрокаРезультата.НоменклатураНов;
КонецЕсли;
Стр.Номенклатура = СтрокаРезультата.НоменклатураНов;
КонецЕсли;
(2)
Странно в таком варианте он выдает ошибку, требуя поставить "Тогда", хотя "тогда" уже есть.
Попробовал взять неправильную номенклатуру в кавычки, стал требовать "конецесли". Допроставил "конецесли", алгоритм отрабатывает, хотя в самом документе ничего не меняется. При этом изначальный запрос номенклатуру менял. Чудеса.
Вот так он работает, но ничего не меняет.
Для Каждого Стр Из Объект1с.Товары Цикл
Если Стр.Номенклатура = "Бублик с маком" Тогда
Стр.Номенклатура = СтрокаРезультата.НоменклатураНов;
КонецЕсли;
КонецЦикла;
А вот так выдает ошибку неизвестный модуль 15,32 ожидается ключевое слово "Тогда"
Для Каждого Стр Из Объект1с.Товары Цикл
Если Стр.Номенклатура = Бублик с маком Тогда
Стр.Номенклатура = СтрокаРезультата.НоменклатураНов;
КонецЦикла;
(3)
Все, кажется разобрался. Нужно было допроставить
Наверное поиск по наименование не самое лучшее решение, но мне сейчас сойдет.
Спасибо за помощь.
Все, кажется разобрался. Нужно было допроставить
Для Каждого Стр Из Объект1с.Товары Цикл
Если Стр.Номенклатура.Наименование = "Бублик с маком" Тогда
Стр.Номенклатура = СтрокаРезультата.НоменклатураНов;
КонецЕсли;
КонецЦикла;
Наверное поиск по наименование не самое лучшее решение, но мне сейчас сойдет.
Спасибо за помощь.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот