Здравствуйте, подскажите пожалуйста, мне нужно в обработке найти все объекты, которые имею зарегистрированные печатные формы, как это сделать. Нашел 2 пути
1) Через УправлениеПечатью.СформироватьПечатныеФормы, но не понимаю, как обойти все объекты
2)
_______________________________________________

```1c
    ВсеПФ = Новый ТаблицаЗначений;
    ВсеПФ.Колонки.Добавить("Документ");
    ВсеПФ.Колонки.Добавить("ПФ");
    Для Каждого Документ ИЗ Метаданные.Документы Цикл
    Попытка
    ДанныеПФ = УправлениеПечатью.КомандыПечатиОбъекта(Документ);
    Исключение
    Продолжить;
    КонецПопытки;
    Для Каждого Строка ИЗ ДанныеПФ Цикл
    НоваяСтрока = ВсеПФ.Добавить();
    НоваяСтрока.Документ = Документ;
    НоваяСтрока.ПФ = Строка.Представление;
    КонецЦикла;
    КонецЦикла;
```

______________________________________________
Но вторым способом получаю только документы.
Подскажите куда копать. Конфигурация Типовая УНФ 3.0.
---
Не входит в цикл, значит результат запроса пустой. Т.е. нет зарегистрированных доп.печатных форм.

Возможно, вам нужен список команд печати:

```1c
    ИсточникиКомандПечати = УправлениеПечатью.ИсточникиКомандПечати();
    Для Каждого ИсточникКомандПечати Из ИсточникиКомандПечати Цикл
    ИдентификаторИсточникаКомандПечати = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ИсточникКомандПечати);
    КомандыПечатиОбъекта = УправлениеПечатью.КомандыПечатиОбъекта(ИсточникКомандПечати);
    Для Каждого КомандаПечати Из КомандыПечатиОбъекта Цикл

    КонецЦикла;
    КонецЦикла;
```
---
Доп. печатные формы регистрируются в справочнике ДополнительныеОтчетыИОбработки.

```1c
    ВЫБРАТЬ
    ДополнительныеОтчетыИОбработкиНазначение.ОбъектНазначения КАК ОбъектНазначения,
    ДополнительныеОтчетыИОбработкиНазначение.ОбъектНазначения.ПолноеИмя КАК ОбъектНазначенияПолноеИмя,
    ДополнительныеОтчетыИОбработкиНазначение.Ссылка КАК ПечатнаяФорма,
    ДополнительныеОтчетыИОбработкиНазначение.Ссылка.Вид КАК Вид
    ИЗ
    Справочник.ДополнительныеОтчетыИОбработки.Назначение КАК ДополнительныеОтчетыИОбработкиНазначение
    ГДЕ
    ДополнительныеОтчетыИОбработкиНазначение.Ссылка.Вид = ЗНАЧЕНИЕ(Перечисление.ВидыДополнительныхОтчетовИОбработок.ПечатнаяФорма)
```
---
```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ДополнительныеОтчетыИОбработки.Назначение.(
    | ОбъектНазначения КАК ОбъектНазначения,
    | ОбъектНазначения.ПолноеИмя КАК ОбъектНазначенияПолноеИмя,
    | Ссылка КАК ПечатнаяФорма,
    | Ссылка.Вид КАК Вид
    | ) КАК Назначение
    |ИЗ
    | Справочник.ДополнительныеОтчетыИОбработки КАК ДополнительныеОтчетыИОбработки
    |ГДЕ
    | ДополнительныеОтчетыИОбработки.Назначение.Ссылка.Вид = ЗНАЧЕНИЕ(Перечисление.ВидыДополнительныхОтчетовИОбработок.ПечатнаяФорма)";

    РезультатЗапроса = Запрос.Выполнить();
    Выборка = РезультатЗапроса.Выбрать();
    Пока Выборка.Следующий() Цикл
    //обращение к полям
    Сообщить(Выборка.ОбъектНазначения);
    Сообщить(Выборка.ОбъектНазначенияПолноеИмя);
    Сообщить(Выборка.ПечатнаяФорма);
    Сообщить(Выборка.Вид);
    КонецЦикла;
```

Сделал вот такой код, но не работается, даже в цикл не заходит, что не так?
Заранеее спасибо!
---
Не входит в цикл, значит результат запроса пустой. Т.е. нет зарегистрированных доп.печатных форм.

Возможно, вам нужен список команд печати:

```1c
    ИсточникиКомандПечати = УправлениеПечатью.ИсточникиКомандПечати();
    Для Каждого ИсточникКомандПечати Из ИсточникиКомандПечати Цикл
    ИдентификаторИсточникаКомандПечати = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ИсточникКомандПечати);
    КомандыПечатиОбъекта = УправлениеПечатью.КомандыПечатиОбъекта(ИсточникКомандПечати);
    Для Каждого КомандаПечати Из КомандыПечатиОбъекта Цикл

    КонецЦикла;
    КонецЦикла;
```
---
Спасибо вам! Теперь осталось как то их на форму засунуть:D Буду думать, если подсказки будут, буду рад!
---
Есть общая форма НастройкаКомандПечати, может, она что-то подскажет.