Итератор значения не определен(Проценты на цены)
Здравствуйте. Я создал кнопку, которая задает процент для уменьшения цен одного столбца табличной части "Материалы" из документа. Я использовал окно ввода и цикл, но происходит ошибка "Итератор значения не определен" после того как я нажимаю на 'ОК' после ввода значения на окне. Вот код, который я использовал
&НаКлиенте
Процедура Проценты(Команда)
Процент = "";
ПоказатьВводЗначения(Новый ОписаниеОповещения("ПроцентыЗавершение", ЭтаФорма, Новый Структура("Процент", Процент)), Процент);
КонецПроцедуры
&НаКлиенте
Процедура ПроцентыЗавершение(Значение, ДополнительныеПараметры) Экспорт
Процент = ?(Значение = Неопределено, ДополнительныеПараметры.Процент, Значение);
Для каждого СтрокаТЧ из Элементы.Материалы.ТекущиеДанные Цикл
СтрокаТЧ.Цена = СтрокаТЧ.Цена * (1 - (Процент/100));
КонецЦикла;
КонецПроцедуры ПоказатьНайденные решения
(1)
Ошибка «Итератор для значения не определён»
Возникает, когда используют конструкцию не для коллекции.
т.е. ее можно использовать для массива, для списказначений, для структуры, для соответствия, для таблицы значений и т.д.... в общем что-то состоящее из нескольких составных частей.
эти составные части и начинают перебираться все по очереди.
Кроме этого надо понимать, что есть данныеФормы и есть элементыФормы.
ДанныеФормы - это информация с которой мы работаем.
ЭлементыФормы - это красивости и "бантики" как мы эту информацию рисуем/отображаем на форме.(например цвет ячейки, размер шрифта, подчеркивание, галочки и т.д и т.п)
В данном случае вы хотите работать с даннымиФормы, а пытаетесь перебирать ЭлементыФормы - так ничего не получится.
вам надо обращаться либо к Объект.Материалы либо к Материалы - в зависимости от того является ли таблица Реквизитом формы или Объекта.
что-то типа того:
Ошибка «Итератор для значения не определён»
Возникает, когда используют конструкцию не для коллекции.
Для Каждого Итератор из Коллекция Цикл
...
КонецЦиклат.е. ее можно использовать для массива, для списказначений, для структуры, для соответствия, для таблицы значений и т.д.... в общем что-то состоящее из нескольких составных частей.
эти составные части и начинают перебираться все по очереди.
Кроме этого надо понимать, что есть данныеФормы и есть элементыФормы.
ДанныеФормы - это информация с которой мы работаем.
ЭлементыФормы - это красивости и "бантики" как мы эту информацию рисуем/отображаем на форме.(например цвет ячейки, размер шрифта, подчеркивание, галочки и т.д и т.п)
В данном случае вы хотите работать с даннымиФормы, а пытаетесь перебирать ЭлементыФормы - так ничего не получится.
вам надо обращаться либо к Объект.Материалы либо к Материалы - в зависимости от того является ли таблица Реквизитом формы или Объекта.
что-то типа того:
Для Каждого СтрокаМатериал из Материалы Цикл
СтрокаМатериал.Цена = СтрокаМатериал.Цена * (1 - (Процент/100));
Цикл;Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) что ты ожидаешь получить в Элементы.Материалы.ТекущиеДанные ? Коллекцию?
Ошибка «Итератор для значения не определён» в системе «1С» указывает на попытку использовать циклический оператор (итератор) с объектом, который не поддерживает итерацию (последовательный перебор его элементов)
(1)
Ошибка «Итератор для значения не определён»
Возникает, когда используют конструкцию не для коллекции.
т.е. ее можно использовать для массива, для списказначений, для структуры, для соответствия, для таблицы значений и т.д.... в общем что-то состоящее из нескольких составных частей.
эти составные части и начинают перебираться все по очереди.
Кроме этого надо понимать, что есть данныеФормы и есть элементыФормы.
ДанныеФормы - это информация с которой мы работаем.
ЭлементыФормы - это красивости и "бантики" как мы эту информацию рисуем/отображаем на форме.(например цвет ячейки, размер шрифта, подчеркивание, галочки и т.д и т.п)
В данном случае вы хотите работать с даннымиФормы, а пытаетесь перебирать ЭлементыФормы - так ничего не получится.
вам надо обращаться либо к Объект.Материалы либо к Материалы - в зависимости от того является ли таблица Реквизитом формы или Объекта.
что-то типа того:
Ошибка «Итератор для значения не определён»
Возникает, когда используют конструкцию не для коллекции.
Для Каждого Итератор из Коллекция Цикл
...
КонецЦиклат.е. ее можно использовать для массива, для списказначений, для структуры, для соответствия, для таблицы значений и т.д.... в общем что-то состоящее из нескольких составных частей.
эти составные части и начинают перебираться все по очереди.
Кроме этого надо понимать, что есть данныеФормы и есть элементыФормы.
ДанныеФормы - это информация с которой мы работаем.
ЭлементыФормы - это красивости и "бантики" как мы эту информацию рисуем/отображаем на форме.(например цвет ячейки, размер шрифта, подчеркивание, галочки и т.д и т.п)
В данном случае вы хотите работать с даннымиФормы, а пытаетесь перебирать ЭлементыФормы - так ничего не получится.
вам надо обращаться либо к Объект.Материалы либо к Материалы - в зависимости от того является ли таблица Реквизитом формы или Объекта.
что-то типа того:
Для Каждого СтрокаМатериал из Материалы Цикл
СтрокаМатериал.Цена = СтрокаМатериал.Цена * (1 - (Процент/100));
Цикл;
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот