Доброго времени уток!
В запросе заполняю массив
РезультатЗапроса = Запрос.Выполнить();
Если Не РезультатЗапроса.Пустой() Тогда
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
МассивАртикулов = Новый Массив();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
МассивАртикулов.Добавить(ВыборкаДетальныеЗаписи.НоменклатураАртикул);
КонецЦикла;
КонецЕсли;
Возврат МассивАртикулов; Всё нормально, пока массив не примет значение Неопределено
И далее соответственно ошибка при обходе массива. Так как массив не определён, то и данная проверка вылетает с ошибкой: Значение не является значением объектного типа (Количество)
МассивАртикулов = Новый Массив();
МассивАртикулов = ПолучитьАртикулы(СсылкаНаДок);
Если Не МассивАртикулов.Количество() = 0 Тогда // Значение не является значением объектного типа (Количество)
Для Каждого Артикул Из МассивАртикулов Цикл
НомерЗапчасти.Параметры.Артикул = Артикул;
ТабДок.Вывести(НомерЗапчасти);
КонецЦикла;
Иначе Как правильно организовать проверку?
(0) Вот это вот " МассивАртикулов = Новый Массив();" вынести перед "Если Не РезультатЗапроса.Пустой() Тогда". Тогда в любом случае будет массив. Но иногда пустой. И проверка на Количество() будет проходить всегда.