Заполнение пустыми полями свободного места
Здравствуйте!
Подскажите можно ли реализовать следующее:
Страница отчёта разбита на 3 колонки, в каждой находится Column Header, Group Header и Master Data.
Как сделать чтобы после вывода в каждую колонку оставшееся свободное место автоматически заполнялось пустыми полями c рамкой таблицы?
http://s1.ipicture.ru/uploads/20130329/9L7YYX5o.png
Подскажите можно ли реализовать следующее:
Страница отчёта разбита на 3 колонки, в каждой находится Column Header, Group Header и Master Data.
Как сделать чтобы после вывода в каждую колонку оставшееся свободное место автоматически заполнялось пустыми полями c рамкой таблицы?
http://s1.ipicture.ru/uploads/20130329/9L7YYX5o.png
Комментарии
Делаете 2 MasterData. В первом - данные, во втором - точно такие же поля, но пустые.
Далее перед печатью второго MasterData (я делал в GroupHeader2.OnAfterCalcHeight) пишем скрипт:
MasterData2.RowCount :=Round(abs((Engine.FreeSpace - 20) div Memo2.Height));
где Memo2 находится в MasterData2 и занимает всю высоту.
Смысл такой: когда все данные из первого MasterData напечатаны, то необходимо вычислить оставшееся место и разделить его на высоту.
С несколькими колонками не пробовал.
Если не разберётесь, могу прислать fr3 для примера.
каждый раз проверяя, сколько еще места осталось, чтобы случайно вывод на следующую страницу не перескочил (ну, или просто сразу посчитать как Count=СвободноеМесто/ВысотаБэнда)