|
Цикл Для каждого. Итератор для значения не определен | ☑ | ||
---|---|---|---|---|
0
nlv-lara
28.11.16
✎
14:22
|
Добрый день.
Выпадает ошибка в стандартном модуле разработчика при отправке документа на печать - итератор для значения не определен. Эта ошибка возникает только на одном документе (документ добавлялся в конфу), при этом все нормально срабатывает на всех остальных документах (также добавленных в конфу самостоятельно). Код перепроверен сто раз. Конфигурация 1C:CRM, редакция 2.0 (2.0.12.7) В чем может быть причина? |
|||
1
Fish
28.11.16
✎
14:23
|
Отладчик знает.
|
|||
2
Волшебник
модератор
28.11.16
✎
14:23
|
Отправьте модуль разработчику на доработку
|
|||
3
nlv-lara
28.11.16
✎
14:25
|
(2) Невозможно, конфа не на поддержке.
|
|||
4
FIXXXL
28.11.16
✎
14:25
|
(0) причина в коде
но ты его не показывай |
|||
5
nlv-lara
28.11.16
✎
14:29
|
Функция СформироватьПечатнуюФормуБСО(МассивОбъектов, ОбъектыПечати)
УстановитьПривилегированныйРежим(Истина); ТабДок = Новый ТабличныйДокумент; ТабДок.АвтоМасштаб = Истина; ТабДок.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_БСО"; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ПКО.Дата, | ПКО.Номер, | ПКО.НомерЗаказа КАК Заказ, | ПКО.Плательщик КАК Клиент, | ПКО.Сумма |ИЗ | Документ.ПКО КАК ПКО |ГДЕ | ПКО.Ссылка В(&МассивОбъектов)"; Запрос.УстановитьПараметр("МассивОбъектов", МассивОбъектов); Макет = УправлениеПечатью.ПолучитьМакет("Документ.ПКО.БСО"); Выборка = Запрос.Выполнить().Выбрать(); ................ |
|||
6
nlv-lara
28.11.16
✎
14:31
|
(5) Процедура СформироватьПечатныеФормы(ИмяМенеджераПечати, Знач ИменаМакетов, МассивОбъектов, ПараметрыПечати,
КоллекцияПечатныхФорм, ОбъектыПечати = Неопределено, ПараметрыВывода) Экспорт СписокПолучателей = Новый СписокЗначений; Для Каждого Док из МассивОбъектов Цикл // Здесь вылетает ................ |
|||
7
Fish
28.11.16
✎
14:32
|
(6) Поставь здесь точку останова, и посмотри в отладчике, чему равен МассивОбъектов. Вангую, что в случае вылета, там не массив.
|
|||
8
nlv-lara
28.11.16
✎
14:34
|
(7) Все верно, во время вылета там не Массив, а ссылка на документ.
Но разобраться почему, не могу. |
|||
9
Fish
28.11.16
✎
14:35
|
(8) Надо смотреть, откуда вызывается СформироватьПечатныеФормы() и где происходит инициализация переменной МассивОбъектов.
|
|||
10
catena
28.11.16
✎
14:36
|
(8)Поставь точку останова, дождись остановки и посмотри стек вызовов.
|
|||
11
Сияющий Асинхраль
28.11.16
✎
14:43
|
Варианта два, один уже сказали, второй проще: проверять тип объекта МассивОбъектов, если он не представляет собой массив, обработывать отдельно. Первый вариант будет правильнее, второй вариант - для ленивых...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |