среда, 30 октября 2013 г.

Отладка внешних печатных форм

Разработано на Инфостарте. "Фундамент"

Внешняя печатная форма – это внешняя обработка, у которой должны быть:
1. Реквизит "СсылкаНаОбъект" типа ДокументСсылка неопределенного или определенного (если форма предназначена для одного документа) вида;
2. В модуле обработки должна быть функция Печать() с ключевым словом "Экспорт" (результатом выполнения функции должен быть табличный документ или значение "Неопределено").
3. Если в функцию Печать() мы копируем алгоритм заполнения печатной формы из документа, то все параметры типа ЭтотОбъект.Ссылка мы должны заменить на СсылкаНаОбъект
4. Если нужна авторегистрация формы, то создаётся макет с идентификатором "Параметры_Авторегистрации" в первом столбце которого в каждой строчке можно указать объекты, для которых предназначена печатная форма  (Документы.ЗаказПокупателя).

Т.к. отладку обычным способом произвести нельзя предложен такой вариант:

  1. Добавляем форму.
  2. При создании формы НЕ НАЖИМАТЬ сразу ГОТОВО, нажимать ДАЛЕЕ! Иначе не будет возможности автоматически создать ПолеВвода для выбора значения реквизита СсылкаНаОбъект.
  3. В обработчик нажатия кнопки "Выполнить" добавим вызов функции Печать() с выводом на экран результата.
Процедура КнопкаВыполнитьНажатие(Кнопка)
     Печать().Показать();
КонецПроцедуры

Теперь просто открыв файл внешней печатной формы и выбрав в поле "Ссылка на объект" нужный документ мы нажимаем кнопку Выполнить и печатаем/отлаживаем!!!

И, что самое важное/приятное- именно эту форму (без малейших изменений) можно сразу добавлять в доп. формы, а при необходимости- извлекать и опять отлаживать!

3 комментария:

  1. А вы это сами пробовали?

    ОтветитьУдалить
  2. Да! Не исключаю не принципиальную ошибку в тексте, но принцип верный!

    ОтветитьУдалить
  3. Есть ошибка! И важная. Реквизиту "СсылкаНаОбъект" нужно присвоить тип "ДокументСсылка.ххх"

    ОтветитьУдалить