Добрый день.

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

    МассивВыводимыхОбластей = Новый Массив;
    МассивВыводимыхОбластей.Добавить(ШапкаЗаголовок);
    МассивВыводимыхОбластей.Добавить(ШапкаТаблицы);

    Для Каждого Заказ из СодержаниеМаршрута Цикл
    //Заполняем параметры
    ........................................
    Если НЕ ТабДокумент.ПроверитьВывод(МассивВыводимыхОбластей) Тогда
    ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;
    Табдокумент.Вывести(ШапкаЗаголовок);
    ТабДокумент.Вывести(ШапкаТаблицы);
    КонецЦикла;

    Если НЕ ТабДокумент.ПроверитьВывод(Подвал) Тогда
    ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;
    ТабДокумент.Вывести(Подвал);
```
---
Не надо ПроверитьВывод(). Есть гораздо более красивый способ.
Когда в макете табдока выделяешь строку и открываешь свойства - то там появляется замечательная закладка "Параграф", на которой есть чудесное свойство "ВместеСоСледующим". Вот в эту сторону и кури. Если сам не допетришь - забей его в поиск.
---
А можешь подробней рассказать как сделать?
Вот на таком макете примерно хотя бы?
---
Я выделил все строки, и нажал это кнопку "ВместеСоСледующим". То есть если хоть одна часть окажется на другой странице он все перенесет на другую. Но что-то не работает(
---
Я выделил все строки
То есть, вы указали что абсолютно все выводимые строки должны выводиться с последующими. И как же ж система должна понять, где начинается следующий комплектовочный? Сними галку с последней строки подвала комплектовочного.
---
Извиняюсь, но что такое комплектовочный? Вы имеете ввиду упаковочный?
---
Да, упаковочный. Оговорился. Что в голове крутилось, то с языка и слетело :)
ЗЫ. Самое смешное, что эта фигня еще в 7.7 была и я про нее не знал, хотя с 7.7 поработать довелось плотно. И когда я уже пару лет на 8-ке был, очередной семерочник спрашивет "а где мол в 8-ке эта фигня?" И вот так совершенно случайно я про нее и узнал. Как-то оно не на слуху, хотя в типовых кое-где использовалось.
---
Вообще очень удобная штука, ПроверитьВывод() - не особо хотелось использовать, так как лишний код. Я уже начал делать через нее, но потом подумал, нафиг, лучше дождусь ответа. Еще раз огромное спасибо за просвящение :)
---
Получилось))) Спасибо огромное, очень крутое решение))
---
Спасибо большущее! Просто спасли сейчас от писанины лишнего кода!
---
А что в параграфе означают другие свойства?
НачалоСтраницы
КонецСтраницы

Всем спасибо.
---
ПроверитьВывод() реально не самый оптимальный метод.
---
Функция прикольная, а программно при выводе можно использовать, у меня к примеру таб часть, если типо Таб часть плюс подвал полностью не влазят на лист, то переносить последнюю строку таб части на другой лист вместе с подвалом?