Здравствуйте. Подскажите, как сделать вывод макета для каждого документа из выборки на новый лист. Пробовал ПроверитьВывод(МассивОбластей) , но не вышло.

```1c
    Документ.НачатьАвтогруппировкуСтрок();

    ОбластьДок = Макет.ПолучитьОбласть("СтрокаДокумент");
    ОбластьСтрока = Макет.ПолучитьОбласть("Строка");
    ОбластьПодСтрокой = Макет.ПолучитьОбласть("ПодСтрокой");

    Пока Выборка.Следующий() Цикл

    ОбластьДок .Параметры.Заполнить(Выборка);
    Документ.Вывести(ОбластьДок);///////////////////////// Сюда попадает документ, и надо выводить макет на новый лист, когда документ другой

    Для Каждого Строка Из Выборка.ДокСсылка.ТоварыЦикл

    ОбластьСтрока .Параметры.Номенклатура= Строка.Наименование;
    ОбластьСтрока .Параметры.Колво= Строка.Количество;

    Документ.Вывести(ОбластьСтрока ,1);

    КонецЦикла;

    Для Каждого Стр из ВыборкаДетальныеЗаписи.Спецификация.ПриходМатериалов Цикл

    ОбластьПодСтрокой .Параметры.Материал = Стр.Наименование;
    ОбластьПодСтрокой .Параметры.Сумма= Стр.Количество * Выборка.Цена;
    Документ.Вывести(ОбластьПодСтрокой ,2);
    КонецЦикла;
```
---
Всем спасибо, разобрался. Решение вот :

```1c
    &НаКлиенте
    Процедура Сформировать(Команда)

    МассивДокументов = ПолучитьМассивДокументов();

    Для Каждого Объект Из МассивДокументов Цикл

    Документ = СформироватьНаСервере(Объект);
    Документ .Показать("Отчет");

    КонецЦикла;

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

ВывестиГоризонтальныйРазделительСтраниц (PutHorizontalPageBreak)
Синтаксис:
ВывестиГоризонтальныйРазделительСтраниц()
Описание:
Вставляет в результирующую таблицу горизонтальный разделитель страниц.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
---
Спасибо. Я это уже пробовал. Не разделяет. Делал вот так

```1c
    Документ.НачатьАвтогруппировкуСтрок();

    ОбластьДок = Макет.ПолучитьОбласть("СтрокаДокумент");
    ОбластьСтрока = Макет.ПолучитьОбласть("Строка");
    ОбластьПодСтрокой = Макет.ПолучитьОбласть("ПодСтрокой");
    МассивДокументов = Новый Массив;

    Пока Выборка.Следующий() Цикл

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

    Для Каждого Объект Из МассивДокументов Цикл

    ОбластьДок .Параметры.Заполнить(Выборка);
    Документ.Вывести(ОбластьДок);///////////////////////// Сюда попадает документ, и надо выводить макет на новый лист, когда документ другой

    Для Каждого Строка Из Выборка.ДокСсылка.ТоварыЦикл

    ОбластьСтрока .Параметры.Номенклатура= Строка.Наименование;
    ОбластьСтрока .Параметры.Колво= Строка.Количество;

    Документ.Вывести(ОбластьСтрока ,1);

    КонецЦикла;

    Для Каждого Стр из ВыборкаДетальныеЗаписи.Спецификация.ПриходМатериалов Цикл

    ОбластьПодСтрокой .Параметры.Материал = Стр.Наименование;
    ОбластьПодСтрокой .Параметры.Сумма= Стр.Количество * Выборка.Цена;
    Документ.Вывести(ОбластьПодСтрокой ,2);
    КонецЦикла;

    ТабДок.ВывестиГоризонтальныйРазделительСтраниц();

    КонецЦикла;
```
---
да вот же проще все

```1c
    ОбластьДок = Макет.ПолучитьОбласть("СтрокаДокумент");
    ОбластьСтрока = Макет.ПолучитьОбласть("Строка");
    ОбластьПодСтрокой = Макет.ПолучитьОбласть("ПодСтрокой");

    ЭтоПервыйДокумент = Истина;

    Пока Выборка.Следующий() Цикл

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

    ОбластьДок .Параметры.Заполнить(Выборка);
    Документ.Вывести(ОбластьДок);///////////////////////// Сюда попадает документ, и надо выводить макет на новый лист, когда документ другой

    Для Каждого Строка Из Выборка.ДокСсылка.ТоварыЦикл

    ОбластьСтрока .Параметры.Номенклатура= Строка.Наименование;
    ОбластьСтрока .Параметры.Колво= Строка.Количество;

    Документ.Вывести(ОбластьСтрока ,1);

    КонецЦикла;

    Для Каждого Стр из ВыборкаДетальныеЗаписи.Спецификация.ПриходМатериалов Цикл

    ОбластьПодСтрокой .Параметры.Материал = Стр.Наименование;
    ОбластьПодСтрокой .Параметры.Сумма= Стр.Количество * Выборка.Цена;
    Документ.Вывести(ОбластьПодСтрокой ,2);
    КонецЦикла;
```
---
Спасибо. Так я тоже пробовал. Видимо я неправильно задачу сформулировал. Мне нужно чтоб каждый документ открывался в новой вкладке, как это можно реализовать?
---
в новой вкладке,

 в новой вкладке - чего?
а зачем?
проще, сделайте вывод в новом окне (правда если 1000 доков выведете будет весело)
---
Не знаю, зачем, но мне такую задачу поставили)) Спасибо,разобрался)
---
Хм...сделайте генерацию отчета в форме, прикреплённой к форме списка документов.
Чтобы при выборе строки отражался в ней новый табдок. не думаю, что он будет ресурсоёмкий, к тому же можно кэшировать
---
Спасибо. Я разобрался.)
---
Всем спасибо, разобрался. Решение вот :

```1c
    &НаКлиенте
    Процедура Сформировать(Команда)

    МассивДокументов = ПолучитьМассивДокументов();

    Для Каждого Объект Из МассивДокументов Цикл

    Документ = СформироватьНаСервере(Объект);
    Документ .Показать("Отчет");

    КонецЦикла;

    КонецПроцедуры
```