скачал обработку с инфостара. у нее есть авторегистрация. добавил как внешнюю сделал авторегитрацию. но в справочнике отображается только встроенная форма
---
В публикации, на которую вы дали ссылку есть описание как в пользовательском режиме подключать внешнюю обработку:
Для регистрации внешней печатной формы в Полном интерфейсе заходим Сервис - Дополнительные внешние отчеты и обработки - Печатные формы, создаем новый элемент справочника ВнешниеОбработки и загружаем в него файл Внешней обработки.
Так вот, когда вы загрузили файл внешней обработки, у вас на форме элемента должны заполнится параметры указанные в процедуре СведенияОВнешнейОбработке(). Если в параметрах регистрации в модуле объекта внешней обработки не указаны назначения (или назначения написаны некорректно), то на форме элемента внешней обработки этот параметр назначение (размещение) будет "не определено". Нажимаете на гиперссылку "Не определено" и выбираете из дерева метаданных нужный вам справочник.
Если же назначение на форме заполнено, то вопрос следующий. А вы переоткрывали после добавления (сохранения) внешней обработки формы списка и элемента справочника, к которому подключили печатную форму, чтобы обновился список команд печати?
---
Обычные формы?

UP

Требование авторегистрации:
Нужна экспортная процедура Печать в модуле объекта (Условие выполнено) и реквизит с названием СсылкаНаОбъект с типом, из которого требуется печатать (пришлите скрин реквизитов внешней обработки, там должен быть реквизит с типом СправочникСсылка.РесурсныеСпецификации)

Если все выполнено, но ничего не происходит, возможно нужно закрыть документ, список документов и заново открыть. Открытая форма не в курсе, чтоб вы добавили к ней внешку. Закрыть - Открыть.

Если не поможет, то хз че там не так
---
да
---
Перешел по ссылке, увидел. Дописал в 1 сообщение
---
https://infostart.ru/public/175797/?detail=Y
---
В форме элемента дополнительной обработки, что указано в назначении? Если "Не определено", то укажите необходимый справочник руками. А вообще после добавления внешней обработки перезаходили в формы списка или элемента справочника, чтобы обновился список команд печати?
---
может я чего не понимаю. с таким способом я не сталкивался
---
В публикации, на которую вы дали ссылку есть описание как в пользовательском режиме подключать внешнюю обработку:
Для регистрации внешней печатной формы в Полном интерфейсе заходим Сервис - Дополнительные внешние отчеты и обработки - Печатные формы, создаем новый элемент справочника ВнешниеОбработки и загружаем в него файл Внешней обработки.
Так вот, когда вы загрузили файл внешней обработки, у вас на форме элемента должны заполнится параметры указанные в процедуре СведенияОВнешнейОбработке(). Если в параметрах регистрации в модуле объекта внешней обработки не указаны назначения (или назначения написаны некорректно), то на форме элемента внешней обработки этот параметр назначение (размещение) будет "не определено". Нажимаете на гиперссылку "Не определено" и выбираете из дерева метаданных нужный вам справочник.
Если же назначение на форме заполнено, то вопрос следующий. А вы переоткрывали после добавления (сохранения) внешней обработки формы списка и элемента справочника, к которому подключили печатную форму, чтобы обновился список команд печати?
---
В обычных формах разве используется СведенияОВнешнейОбработке ? Я лет 6 на обычные формы не делал внешки. Поменялось что-то?
---
Не видел, что это неуправляемые формы.
---
нет формы элемента. есть макет. макет авторегистрации. в модуле обработки:

```1c
    // Процедура выводит в табличный документ раздел спецификации.
    //
    Процедура ВывестиРазделСпецификации(ТабДокумент, Макет, ВыборкаСтрок, ТекстЗаголовка)

    Если ВыборкаСтрок.Количество() = 0 Тогда
    Возврат;
    КонецЕсли;

    ДопКолонка = Константы.ДополнительнаяКолонкаПечатныхФормДокументов.Получить();
    Колонка = ";
    Если ДопКолонка = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул Тогда
    ВыводитьКоды = Истина;
    Колонка = "Артикул";
    ИначеЕсли ДопКолонка = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Код Тогда
    ВыводитьКоды = Истина;
    Колонка = "Код";
    Иначе
    ВыводитьКоды = Ложь;
    КонецЕсли;

    ОбластьМакета = Макет.ПолучитьОбласть("ШапкаЗаголовок");
    ОбластьМакета.Параметры.ТекстЗаголовка = ТекстЗаголовка;
    ТабДокумент.Вывести(ОбластьМакета);

    Область = Макет.ПолучитьОбласть(?(ВыводитьКоды, "ШапкаСКодом", "Шапка"));

    Если ВыводитьКоды Тогда
    Область.Параметры.ИмяКолонкиКодов = Колонка;
    КонецЕсли;
    ТабДокумент.Вывести(Область);

    Область = Макет.ПолучитьОбласть(?(ВыводитьКоды, "СтрокаСКодом", "Строка"));

    Ном = 0;

    // Выборка выходных изделий.
    Пока ВыборкаСтрок.Следующий() Цикл

    Если НЕ ЗначениеЗаполнено(ВыборкаСтрок.Номенклатура) Тогда
    ОбщегоНазначения.Сообщение("В одной из строк не заполнено значение номенклатуры - строка при печати пропущена.", СтатусСообщения.Важное);
    Продолжить;
    КонецЕсли;

    Ном = Ном + 1;

    Область.Параметры.Заполнить(ВыборкаСтрок);
    Область.Параметры.НомерСтроки = Ном;
    Если Колонка = "Артикул" Тогда
    Область.Параметры.Артикул = ВыборкаСтрок.Артикул;
    ИначеЕсли Колонка = "Код" Тогда
    Область.Параметры.Артикул = ВыборкаСтрок.Код;
    КонецЕсли;
    Область.Параметры.Номенклатура = СокрЛП(ВыборкаСтрок.Наименование) + ФормированиеПечатныхФорм.ПредставлениеСерий(ВыборкаСтрок);
    Область.Параметры.НоменклатураРасшифровка = ВыборкаСтрок.Номенклатура;
    ТабДокумент.Вывести(Область);

    КонецЦикла;

    // Вывести подвал
    Область = Макет.ПолучитьОбласть("Подвал");
    ТабДокумент.Вывести(Область);

    КонецПроцедуры // ВывестиРазделСпецификации()

    // Функция формирует табличный документ с печатной формой спецификации
    // по ГОСТ 2.106-96.
    //
    // Возвращаемое значение:
    // Табличный документ - печатная форма спецификации
    //
    Функция Печать() Экспорт

    ТабДокумент = Новый ТабличныйДокумент;
    ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_Спецификация";

    Макет = ПолучитьМакет("Спецификация");

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ТекущийЭлемент", СсылкаНаОбъект);
    Запрос.Текст = "
    |ВЫБРАТЬ
    | СпецификацииНоменклатуры.Код КАК Код,
    | СпецификацииНоменклатуры.Наименование КАК Наименование,
    | СпецификацииНоменклатуры.Ответственный.Наименование КАК ОтветственныйНаименование
    |ИЗ
    | Справочник.СпецификацииНоменклатуры КАК СпецификацииНоменклатуры
    |ГДЕ
    | СпецификацииНоменклатуры.Ссылка = &ТекущийЭлемент
    |";

    Шапка = Запрос.Выполнить().Выбрать();
    Шапка.Следующий();

    // Выводим шапку накладной
    ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
    ОбластьМакета.Параметры.ТекстЗаголовка = "Спецификация номенклатуры: " + Шапка.Наименование;
    ТабДокумент.Вывести(ОбластьМакета);

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ТекущийЭлемент", СсылкаНаОбъект);
    Запрос.Текст = "
    |ВЫБРАТЬ
    | СпецификацииНоменклатуры.Номенклатура.Код КАК Код,
    | СпецификацииНоменклатуры.Номенклатура.Артикул КАК Артикул,
    | СпецификацииНоменклатуры.Номенклатура КАК Номенклатура,
    | ВЫРАЗИТЬ(СпецификацииНоменклатуры.Номенклатура.НаименованиеПолное КАК Строка(1000)) КАК Наименование,
    | СпецификацииНоменклатуры.ХарактеристикаНоменклатуры КАК Характеристика,
    | NULL КАК Серия,
    | СпецификацииНоменклатуры.Количество КАК Количество,
    | СпецификацииНоменклатуры.ЕдиницаИзмерения КАК ЕдиницаИзмерения
    |ИЗ
    | Справочник.СпецификацииНоменклатуры.ВыходныеИзделия КАК СпецификацииНоменклатуры
    |ГДЕ
    | СпецификацииНоменклатуры.Ссылка = &ТекущийЭлемент
    |";

    ВыборкаСтрок = Запрос.Выполнить().Выбрать();

    ТекстЗаголовка = "Выходные изделия";
    ВывестиРазделСпецификации(ТабДокумент, Макет, ВыборкаСтрок, ТекстЗаголовка);

    /////////Выходные изделия
    Отбор = Новый Структура("СписаниеКомплектующей", Перечисления.ВариантыСписанияКомплектующих.Всегда);
    ТаблицаКомплектующих = УправлениеПроизводством.ПолучитьМатериалыПоСпецификации(СсылкаНаОбъект, 1, Отбор, ТекущаяДата(), Ложь);

    МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
    Запрос = Новый Запрос;
    Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;

    Запрос.Текст="ВЫБРАТЬ
    | ТаблицаКомплектующих.Номенклатура,
    | ТаблицаКомплектующих.ХарактеристикаНоменклатуры,
    | ТаблицаКомплектующих.ЕдиницаИзмерения,
    | ТаблицаКомплектующих.Количество
    |ПОМЕСТИТЬ ТаблицаКомплектующих
    |ИЗ
    | &ТаблицаКомплектующих КАК ТаблицаКомплектующих";

    Запрос.УстановитьПараметр("ТаблицаКомплектующих", ТаблицаКомплектующих);
    Запрос.Выполнить();

    ////

    Запрос.Текст = "ВЫБРАТЬ
    | ВременнаяТаблица.Номенклатура.Код КАК Код,
    | ВременнаяТаблица.Номенклатура.Артикул КАК Артикул,
    | ВременнаяТаблица.Номенклатура КАК Номенклатура,
    | ВЫБОР
    | КОГДА ВременнаяТаблица.Номенклатура.НаименованиеПолное ЕСТЬ NULL
    | ТОГДА ВременнаяТаблица.Номенклатура
    | ИНАЧЕ ВЫРАЗИТЬ(ВременнаяТаблица.Номенклатура.НаименованиеПолное КАК СТРОКА(1000))
    | КОНЕЦ КАК Наименование,
    | ВременнаяТаблица.ХарактеристикаНоменклатуры КАК Характеристика,
    | NULL КАК Серия,
    | ВременнаяТаблица.Количество КАК Количество,
    | ВременнаяТаблица.ЕдиницаИзмерения КАК ЕдиницаИзмерения
    |ИЗ
    | ТаблицаКомплектующих КАК ВременнаяТаблица
    |
    |УПОРЯДОЧИТЬ ПО
    | Наименование";

    ВыборкаСтрок = Запрос.Выполнить().Выбрать();

    ТекстЗаголовка = "Исходные комплектующие";
    ВывестиРазделСпецификации(ТабДокумент, Макет, ВыборкаСтрок, ТекстЗаголовка);

    //// Возвратные отходы

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ТекущийЭлемент", СсылкаНаОбъект);
    Запрос.Текст = "
    |ВЫБРАТЬ
    | СпецификацииНоменклатуры.Номенклатура.Код КАК Код,
    | СпецификацииНоменклатуры.Номенклатура.Артикул КАК Артикул,
    | СпецификацииНоменклатуры.Номенклатура КАК Номенклатура,
    | ВЫБОР КОГДА СпецификацииНоменклатуры.Номенклатура.НаименованиеПолное ЕСТЬ NULL ТОГДА
    | СпецификацииНоменклатуры.Номенклатура
    | ИНАЧЕ
    | ВЫРАЗИТЬ(СпецификацииНоменклатуры.Номенклатура.НаименованиеПолное КАК Строка(1000))
    | КОНЕЦ КАК Наименование,
    | СпецификацииНоменклатуры.ХарактеристикаНоменклатуры КАК Характеристика,
    | NULL КАК Серия,
    | СпецификацииНоменклатуры.Количество КАК Количество,
    | СпецификацииНоменклатуры.ЕдиницаИзмерения КАК ЕдиницаИзмерения
    |ИЗ
    | Справочник.СпецификацииНоменклатуры.ВозвратныеОтходы КАК СпецификацииНоменклатуры
    |ГДЕ
    | СпецификацииНоменклатуры.Ссылка = &ТекущийЭлемент
    |";

    ВыборкаСтрок = Запрос.Выполнить().Выбрать();

    ТекстЗаголовка = "Возвратные отходы";
    ВывестиРазделСпецификации(ТабДокумент, Макет, ВыборкаСтрок, ТекстЗаголовка);

    // Вывести подписи
    ОбластьМакета = Макет.ПолучитьОбласть("Подписи");
    ОбластьМакета.Параметры.Заполнить(Шапка);
    ТабДокумент.Вывести(ОбластьМакета);

    // Зададим параметры макета.
    ТабДокумент.ОбластьПечати = ТабДокумент.Область(2,2,ТабДокумент.ВысотаТаблицы, ТабДокумент.ШиринаТаблицы);
    ТабДокумент.ПолеСверху = 10;
    ТабДокумент.ПолеСлева = 20;
    ТабДокумент.ПолеСнизу = 10;
    ТабДокумент.ПолеСправа = 10;
    ТабДокумент.РазмерКолонтитулаСверху = 0;
    ТабДокумент.РазмерКолонтитулаСнизу = 0;
    ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Портрет;

    Возврат ТабДокумент;

    КонецФункции // ПечатьСпецификации()
```
---
Покажите карточку регистрации Печатной формы у вас в программе
---
сори. праздники были тяжелыми. регистрировал не как печатную форму