Для создания внешнего отчёта, обработки или печатной формы нужно поместить в модуль создаваемого объекта одну процедуру и две функции.

Код для всех перечисленных объектов идентичен, разница только в строках: 

ПараметрыРегистрации.Вставить("Вид", "ДополнительныйОтчет");

и в строке:

 ДобавитьКоманду(ТаблицаКоманд, "Отчет по складским остаткам", "1", "ОткрытиеФормы", Истина, "");

Вместо "ДополнительныйОтчет" может быть "ДополнительнаяОбработка", "ПечатнаяФорма", "ЗаполнениеОбъекта", "Отчет", "СозданиеСвязанныхОбъектов". 

Шаблон для внешнего отчёта.

#Область ПрограммныйИнтерфейс

// Возвращает сведения о внешней обработке.
Функция СведенияОВнешнейОбработке() Экспорт
	
	ПараметрыРегистрации = Новый Структура;
    ПараметрыРегистрации.Вставить("Вид", "ДополнительныйОтчет");

    ПараметрыРегистрации.Вставить("Наименование", "Отчет по складским остаткам");
    ПараметрыРегистрации.Вставить("Версия", "1.0");
    ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина);
    ПараметрыРегистрации.Вставить("Информация", "Отчет по складским остаткам");
    ТаблицаКоманд = ПолучитьТаблицуКоманд();
    ДобавитьКоманду(ТаблицаКоманд,
    "Отчет по складским остаткам",
    "1",
    "ОткрытиеФормы",
    Истина,"");
    ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
    Возврат ПараметрыРегистрации;
	
КонецФункции


Функция ПолучитьТаблицуКоманд()
    Команды = Новый ТаблицаЗначений;
    Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
    Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));
    Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));
    Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
    Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
    Возврат Команды;
КонецФункции


Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
    НоваяКоманда = ТаблицаКоманд.Добавить();
    НоваяКоманда.Представление = Представление;
    НоваяКоманда.Идентификатор = Идентификатор;
    НоваяКоманда.Использование = Использование;
    НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
    НоваяКоманда.Модификатор = Модификатор;
КонецПроцедуры

#КонецОбласти

Шаблон готов. После этого настраиваем функциональность внешнего отчёта. Когда всё готово,  добавляем созданный отчёт в систему 1С:Предприятие. Делается это на вкладке Администрирование --> Дополнительные отчёты и обработки. Предварительно должна быть включена опция "Использование дополнительных отчётов и обработок".

Процедура добавления внешнего отчёта интуитивно понятна. Единственное, о чём нужно помнить - название отчёта в программе будет соответствовать имени варианта отчёта, которое настраивается в СКД. Поэтому нужно указать понятное и информативное имя отчёта уже на стадии его создания в СКД.