Здравствуйте! Необходимо создать в одной внешней печатной форме 2 макета, и создать условие при котором один выводится, если указывается организация ИП, а другой макет - если ООО. Подскажите как это сделать?
---
```1c
    Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

    ДокументРезультат = Новый ТабличныйДокумент;

    ДокументРезультат.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ТрудовойДоговор";
    ДокументРезультат.ОриентацияСтраницы= ОриентацияСтраницы.Портрет;
    ДокументРезультат.АвтоМасштаб = Истина;

    //ВалютаУчета = ЗарплатаКадры.ВалютаУчетаЗаработнойПлаты();

    Если ЛЕВ(МассивОбъектов[0].Контрагент.Наименование,2) = "ИП" Тогда
    Макет = ПолучитьМакет("MXL_ТрудовойДоговор");
    ИНАЧЕ
    Макет = ПолучитьМакет("MXL_ТрудовойДоговор1");
    КОНЕЦЕсли

    //ОбластьСтрокаТаблицы = Макет.ПолучитьОбласть("СтрокаТаблицы");
    //ОбластьПодвалПриказа = Макет.ПолучитьОбласть("ПодвалПриказа");

    ДанныеДляПечати = ДанныеДляПечати(МассивОбъектов);

    ПервыйПриказ = Истина;
    Для Каждого ОписаниеПараметров Из ДанныеДляПечати Цикл

    МассивДанныхЗаполнения = ОписаниеПараметров.Значение;
    НомерСтрокиНачало = ДокументРезультат.ВысотаТаблицы + 1;

    Для каждого ПараметрыМакета Из МассивДанныхЗаполнения Цикл

    //Если МассивОбъектов.Количество() = 1
    // И ЗначениеЗаполнено(ПараметрыМакета.EMail) Тогда
    //
    // ПараметрыВывода.ПараметрыОтправки.Получатель = ПараметрыМакета.EMail;
    // ПараметрыВывода.ПараметрыОтправки.Тема = НСтр("ru='Трудовой договор'");
    //
    // Если ЗначениеЗаполнено(ПараметрыМакета.ТрудовойДоговорНомер) Тогда
    // ПараметрыВывода.ПараметрыОтправки.Тема = ПараметрыВывода.ПараметрыОтправки.Тема + " №" + ПараметрыМакета.ТрудовойДоговорНомер;
    // КонецЕсли;
    //
    // Если ЗначениеЗаполнено(ПараметрыМакета.ТрудовойДоговорДата) Тогда
    //
    // ПараметрыВывода.ПараметрыОтправки.Тема = ПараметрыВывода.ПараметрыОтправки.Тема
    // + " " + НСтр("ru='от'") + " " + ПараметрыМакета.ТрудовойДоговорДата;
    //
    // КонецЕсли;
    //
    //КонецЕсли;

    Если Не ПервыйПриказ Тогда
    ДокументРезультат.ВывестиГоризонтальныйРазделительСтраниц();
    Иначе
    ПервыйПриказ = Ложь;
    КонецЕсли;

    Макет.Параметры.Заполнить(ПараметрыМакета);

    ДокументРезультат.Вывести(Макет);

    КонецЦикла;

    УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ДокументРезультат, НомерСтрокиНачало, ОбъектыПечати, ОписаниеПараметров.Ключ);

    КонецЦикла;

    УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ТрудовойДоговорС", "Трудовой договор", ДокументРезультат);
```
---
А вам нужно сделать ее с нуля или есть внешняя печатная форма уже есть?
Если есть , то найдите в модуле обработки использование функции "ПолучитьМакет" и подставьте условие.
---
Есть внешняя печатная форма, в нее еще добавить макет, при условии вызывать их. Проблема в том, что я не знаю, как написать условие, если у меня организация в документе указана ИП, то выводить на печать первый макет, если организация ООО, то выводить второй макет.
---
Код модуля внешней печатной формы покажите

```1c
    Если НашКонтрагент.ФормаСобственности = "ИП" ТОГДА
    Макет = ПолучитьМакет("Макет1");
    Иначе
    Макет = ПолучитьМакет("Макет2");
    КонецЕсли;
```
---
Проверяй условием контрагента и подставляй в параметры функции УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию() обработчик подходящего под условие макета.
---
Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

 ДокументРезультат = Новый ТабличныйДокумент;

 ДокументРезультат.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ТрудовойДоговор";
 ДокументРезультат.ОриентацияСтраницы= ОриентацияСтраницы.Портрет;
 ДокументРезультат.АвтоМасштаб = Истина;

 //ВалютаУчета = ЗарплатаКадры.ВалютаУчетаЗаработнойПлаты();

 Макет = ПолучитьМакет("MXL_ТрудовойДоговор");
 Макет2 = ПолучитьМакет("MXL_ТрудовойДоговор1");

 //ОбластьСтрокаТаблицы = Макет.ПолучитьОбласть("СтрокаТаблицы");
 //ОбластьПодвалПриказа = Макет.ПолучитьОбласть("ПодвалПриказа");

 ДанныеДляПечати = ДанныеДляПечати(МассивОбъектов);

 ПервыйПриказ = Истина;
 Для Каждого ОписаниеПараметров Из ДанныеДляПечати Цикл

  МассивДанныхЗаполнения = ОписаниеПараметров.Значение;
  НомерСтрокиНачало = ДокументРезультат.ВысотаТаблицы + 1;

  Для каждого ПараметрыМакета Из МассивДанныхЗаполнения Цикл

   //Если МассивОбъектов.Количество() = 1
   // И ЗначениеЗаполнено(ПараметрыМакета.EMail) Тогда
   //
   // ПараметрыВывода.ПараметрыОтправки.Получатель = ПараметрыМакета.EMail;
   // ПараметрыВывода.ПараметрыОтправки.Тема = НСтр("ru='Трудовой договор'");
   //
   // Если ЗначениеЗаполнено(ПараметрыМакета.ТрудовойДоговорНомер) Тогда
   // ПараметрыВывода.ПараметрыОтправки.Тема = ПараметрыВывода.ПараметрыОтправки.Тема + " №" + ПараметрыМакета.ТрудовойДоговорНомер;
   // КонецЕсли;
   //
   // Если ЗначениеЗаполнено(ПараметрыМакета.ТрудовойДоговорДата) Тогда
   //
   // ПараметрыВывода.ПараметрыОтправки.Тема = ПараметрыВывода.ПараметрыОтправки.Тема
   // + " " + НСтр("ru='от'") + " " + ПараметрыМакета.ТрудовойДоговорДата;
   //
   // КонецЕсли;
   //
   //КонецЕсли;

   Если Не ПервыйПриказ Тогда
    ДокументРезультат.ВывестиГоризонтальныйРазделительСтраниц();
   Иначе
    ПервыйПриказ = Ложь;
   КонецЕсли;

   Макет.Параметры.Заполнить(ПараметрыМакета);

      ДокументРезультат.Вывести(Макет);

   КонецЦикла;

  УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ДокументРезультат, НомерСтрокиНачало, ОбъектыПечати, ОписаниеПараметров.Ключ);

 КонецЦикла;

 УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ТрудовойДоговорС", "Трудовой договор", ДокументРезультат);
---
```1c
    Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

    ДокументРезультат = Новый ТабличныйДокумент;

    ДокументРезультат.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ТрудовойДоговор";
    ДокументРезультат.ОриентацияСтраницы= ОриентацияСтраницы.Портрет;
    ДокументРезультат.АвтоМасштаб = Истина;

    //ВалютаУчета = ЗарплатаКадры.ВалютаУчетаЗаработнойПлаты();

    Если ЛЕВ(МассивОбъектов[0].Контрагент.Наименование,2) = "ИП" Тогда
    Макет = ПолучитьМакет("MXL_ТрудовойДоговор");
    ИНАЧЕ
    Макет = ПолучитьМакет("MXL_ТрудовойДоговор1");
    КОНЕЦЕсли

    //ОбластьСтрокаТаблицы = Макет.ПолучитьОбласть("СтрокаТаблицы");
    //ОбластьПодвалПриказа = Макет.ПолучитьОбласть("ПодвалПриказа");

    ДанныеДляПечати = ДанныеДляПечати(МассивОбъектов);

    ПервыйПриказ = Истина;
    Для Каждого ОписаниеПараметров Из ДанныеДляПечати Цикл

    МассивДанныхЗаполнения = ОписаниеПараметров.Значение;
    НомерСтрокиНачало = ДокументРезультат.ВысотаТаблицы + 1;

    Для каждого ПараметрыМакета Из МассивДанныхЗаполнения Цикл

    //Если МассивОбъектов.Количество() = 1
    // И ЗначениеЗаполнено(ПараметрыМакета.EMail) Тогда
    //
    // ПараметрыВывода.ПараметрыОтправки.Получатель = ПараметрыМакета.EMail;
    // ПараметрыВывода.ПараметрыОтправки.Тема = НСтр("ru='Трудовой договор'");
    //
    // Если ЗначениеЗаполнено(ПараметрыМакета.ТрудовойДоговорНомер) Тогда
    // ПараметрыВывода.ПараметрыОтправки.Тема = ПараметрыВывода.ПараметрыОтправки.Тема + " №" + ПараметрыМакета.ТрудовойДоговорНомер;
    // КонецЕсли;
    //
    // Если ЗначениеЗаполнено(ПараметрыМакета.ТрудовойДоговорДата) Тогда
    //
    // ПараметрыВывода.ПараметрыОтправки.Тема = ПараметрыВывода.ПараметрыОтправки.Тема
    // + " " + НСтр("ru='от'") + " " + ПараметрыМакета.ТрудовойДоговорДата;
    //
    // КонецЕсли;
    //
    //КонецЕсли;

    Если Не ПервыйПриказ Тогда
    ДокументРезультат.ВывестиГоризонтальныйРазделительСтраниц();
    Иначе
    ПервыйПриказ = Ложь;
    КонецЕсли;

    Макет.Параметры.Заполнить(ПараметрыМакета);

    ДокументРезультат.Вывести(Макет);

    КонецЦикла;

    УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ДокументРезультат, НомерСтрокиНачало, ОбъектыПечати, ОписаниеПараметров.Ключ);

    КонецЦикла;

    УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ТрудовойДоговорС", "Трудовой договор", ДокументРезультат);
```
---
да все получилось, спасибо большое!