12.
Aleksandr_prof
20014.11.19 18:05 Сейчас в теме+0.3 $m
Вот все пишут, что ошибка в коде твоей функции. НО! Вы пишите, что ошибка при попытке прицепить печатную форму. Так вот скорее всего ошибка не в этой функции, а в функции регистрации обработки. Ошибку лучше искать через отладку. Отладкой пользоваться умеете? Или помочь по отладке?
меня вот этот участок смущает, сомневаюсь, что у параметра и/или колонки ТекущаяСтрока в наименовании присутствует буква "ё".
Чтобы проверить: отладка/точка останова/остановка по ошибке и посмотреть через табло или вычислить значение, что кроется в ТекущаяСтрока, а так же на макете в области "Строка" удостоверится в наличие параметра "Счёт".
И ещё, проверьте так же "СсылкаНаОбъект.ПеремещениеТоваров", из-за наличия этой ошибки тоже в нём нет уверенности. Может это и не таблица и её нельзя в цикле перебирать, вот и ошибка.
Всё равно поможет только отладка.
Обращение через итератор к элементам объектов, не являющихся коллекциями – массивам, таблицам значений и другим.
Проблема в СсылкаНаОбъект.ПеремещениеТоваров
У вас точно СсылкаНаОбъект.ПеремещениеТоваров, то есть у вас есть у объекта СсылкаНаОбъект, табличная часть ПеремещениеТоваров или вы название документа "ПеремещениеТоваров" случайно бухнули в свойства СсылкаНаОбъект, как табличную часть?
Если у вас внешняя печатная форма, то для её отладки нужно создать форму в обработке печатной формы, ну и вызвать функцию печати с каким-либо документом
Обычно ещё в сообщении об ошибке указывается сам код, вызывающий оишбку, и номер строки в модуле.
Но ошибка "Итератор для значения не определен" указывает на перебор коллекции.
Здесь я вижу только
Для Каждого ТекущаяСтрока из СсылкаНаОбъект.ПеремещениеТоваров Цикл
А точно у СсылкаНаОбъект есть табличная часть ПеремещениеТоваров?
Больше похоже, что СсылкаНаОбъект и есть ссылка на документ ПеремещениеТоваров, а в цикле нужно перебирать табличную часть "Товары".
Для Каждого ТекущаяСтрока из СсылкаНаОбъект.Товары Цикл
Хотя это тоже не правильно, лучше всего запросом получить данные табличной части и потом их выводить.
(3) Да, вы правы, тут я допустил серьёзную ошибку. Но при замене "ПеремещениеТоваров" на имя табличной части этого документа, ошибка никуда не делась. Мне кажется, дело в том, что "СсылкаНаОбъект" в моём случае не определена, но я ума не приложу, как к этой ссылке подвязать нужный мне документ...
(7) для этого достаточно найти пример реализации внешней печатной формы, чтобы разобраться, как всё работает.
Если разработка ведется для какой-то типовой конфигурации на платформе 8.2 (обычные формы, не управляемые) , то внешняя печатная форма должна содержать реквизит обработки (не формы) с именем "СсылкаНаОбъект" и нужным типом. При вызове такой ВПФ конфигурация сама передает в неё ссылку на документ и вызывает экспортную функцию "Печать" из модуля объекта обработки. Дальше уже всё на совести разработчика.
Самый простой способ отладки - добавить в обработку свою форму, установив её в качестве основной, вывести на форму реквизит СсылкаНаОбъект и в обработчике нажатия кнопки "Выполнить" вызывать функцию "Печать".
Есть обработки типо такой https://infostart.ru/public/73691/ (только посвежее) через которые можно в большинстве случаев делать отладку печатных форм. Must have наряду с консолью запросов. Если стукнешься в личку могу поделиться.
12.
Aleksandr_prof
20014.11.19 18:05 Сейчас в теме+0.3 $m
Вот все пишут, что ошибка в коде твоей функции. НО! Вы пишите, что ошибка при попытке прицепить печатную форму. Так вот скорее всего ошибка не в этой функции, а в функции регистрации обработки. Ошибку лучше искать через отладку. Отладкой пользоваться умеете? Или помочь по отладке?
(12)Кстати говоря, да, ошибка заключалась именно в функции регистрации. Ибо в справке самого предприятия нашёл эталонный вид функции, сделал так же и всё получилось.