Для создания внешнего отчёта, обработки или печатной формы нужно поместить в модуль создаваемого объекта одну процедуру и две функции.
Код для всех перечисленных объектов идентичен, разница только в строках:
ПараметрыРегистрации.Вставить("Вид", "ДополнительныйОтчет");
и в строке:
ДобавитьКоманду(ТаблицаКоманд, "Отчет по складским остаткам", "1", "ОткрытиеФормы", Истина, "");
Вместо "ДополнительныйОтчет" может быть "ДополнительнаяОбработка", "ПечатнаяФорма", "ЗаполнениеОбъекта", "Отчет", "СозданиеСвязанныхОбъектов".
Шаблон для внешнего отчёта.
#Область ПрограммныйИнтерфейс // Возвращает сведения о внешней обработке. Функция СведенияОВнешнейОбработке() Экспорт ПараметрыРегистрации = Новый Структура; ПараметрыРегистрации.Вставить("Вид", "ДополнительныйОтчет"); ПараметрыРегистрации.Вставить("Наименование", "Отчет по складским остаткам"); ПараметрыРегистрации.Вставить("Версия", "1.0"); ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина); ПараметрыРегистрации.Вставить("Информация", "Отчет по складским остаткам"); ТаблицаКоманд = ПолучитьТаблицуКоманд(); ДобавитьКоманду(ТаблицаКоманд, "Отчет по складским остаткам", "1", "ОткрытиеФормы", Истина,""); ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд); Возврат ПараметрыРегистрации; КонецФункции Функция ПолучитьТаблицуКоманд() Команды = Новый ТаблицаЗначений; Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка")); Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка")); Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево")); Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка")); Возврат Команды; КонецФункции Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "") НоваяКоманда = ТаблицаКоманд.Добавить(); НоваяКоманда.Представление = Представление; НоваяКоманда.Идентификатор = Идентификатор; НоваяКоманда.Использование = Использование; НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение; НоваяКоманда.Модификатор = Модификатор; КонецПроцедуры #КонецОбласти
Шаблон готов. После этого настраиваем функциональность внешнего отчёта. Когда всё готово, добавляем созданный отчёт в систему 1С:Предприятие. Делается это на вкладке Администрирование --> Дополнительные отчёты и обработки. Предварительно должна быть включена опция "Использование дополнительных отчётов и обработок".
Процедура добавления внешнего отчёта интуитивно понятна. Единственное, о чём нужно помнить - название отчёта в программе будет соответствовать имени варианта отчёта, которое настраивается в СКД. Поэтому нужно указать понятное и информативное имя отчёта уже на стадии его создания в СКД.