Не заходит в цикл обхода таблицы значений
Доброго времени суток. Есть запрос к таблице значений, но столкнулся с проблемой: отладчик просто пропускает цикл, зайдя в его начало сразу перескакивает на конец процедуры. Подскажите, пожалуйста, в чем может быть проблема? ЗЫ Таблица значений не пустая.
Запрос = Новый Запрос;
МенеджерВТ = Новый МенеджерВременныхТаблиц;
Запрос.МенеджерВременныхТаблиц = МенеджерВТ;
Запрос.УстановитьПараметр("ВнешняяТЗ", ТаблицаЗапроса);
Запрос.УстановитьПараметр("МассивКодов", МассивКодов);
Запрос.Текст =
"Выбрать
|ВнешняяТЗ.Номенклатура Как Номенклатура,
|ВнешняяТЗ.КодНоменклатуры Как КодНоменклатуры,
|ВнешняяТЗ.КодЕдиницИзмерения Как КодЕдиниц,
|ВнешняяТЗ.Штрихкод Как Штрихкод
|Поместить ВнешняяТЗ
|Из &ВнешняяТЗ Как ВнешняяТЗ
|Где
|ВнешняяТЗ.КодНоменклатуры В(&МассивКодов)";
РезультатПакета = Запрос.ВыполнитьПакетСПромежуточнымиДанными();
ТаблицаНоменклатуры = РезультатПакета[0].Выгрузить();
Для Каждого Строка Из ТаблицаНоменклатуры Цикл
Номенклатура = Справочники.Номенклатура.НайтиПоКоду(СокрЛП(Строка.КодНоменклатуры));
Если Номенклатура.Пустая() Тогда
НоваяНоменклатура = Справочники.Номенклатура.СоздатьЭлемент();
НоваяНоменклатура.Наименование = СокрЛП(Строка.Номенклатура);
НоваяНоменклатура.Код = СокрЛП(Строка.КодНоменклатуры);
НоваяНоменклатура.ЕдиницаИзмерения = Справочники.ЕдиницыИзмерения.НайтиПоКоду(СокрЛП(Строка.КодЕдиниц));
НоваяНоменклатура.Записать();
КонецЕсли;
КонецЦикла;
КонецПроцедуры()
ПоказатьПо теме из базы знаний
- Разные хм... неожиданности при работе с УТ 11 и платформой
- Конфигурация Flowcon: Набор инструментов для управления задачами, проектами и бизнесом в 1С
- 1C + Python + Django Rest Framework + Vue.js. Опыт несложной full-stack разработки
- 1С:Ассемблер. Немного летнего веселья!
- Нестандартное использование СКД
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
зачем ВООБЩЕ запрос?
есть таблица и массив кодов, обойдите ее сразу в цикле,
вот код и ни каких запросов не надо!!!
есть таблица и массив кодов, обойдите ее сразу в цикле,
вот код и ни каких запросов не надо!!!
Для Каждого Строка Из ТаблицаЗапроса Цикл
Если МассивКодов.Найти(Строка.КодНоменклатуры) <> Неопределено Тогда
//есть код в массиве, обрабатываем, далее ваш код без изменения
Номенклатура = Справочники.Номенклатура.НайтиПоКоду(СокрЛП(Строка.КодНоменклатуры));
Если Номенклатура.Пустая() Тогда
НоваяНоменклатура = Справочники.Номенклатура.СоздатьЭлемент();
НоваяНоменклатура.Наименование = СокрЛП(Строка.Номенклатура);
НоваяНоменклатура.Код = СокрЛП(Строка.КодНоменклатуры);
НоваяНоменклатура.ЕдиницаИзмерения = Справочники.ЕдиницыИзмерения.НайтиПоКоду(СокрЛП(Строка.КодЕдиниц));
НоваяНоменклатура.Записать();
КонецЕсли;
КонецЕсли;
КонецЦикла;
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот