LimeReport Forum

General Category | Основное => Discussion | Обсуждение => Topic started by: Иван on March 03, 2018, 03:09:06 PM

Title: Печать footer на каждой странице
Post by: Иван on March 03, 2018, 03:09:06 PM
Как можно организовать печать футера для под итога страницы?
Т.е. получается, если данных много, то нужно разорвать данные и вывести под данными итого на данной странице отчета.
Как это сделать? Т.е. по сути, нужно reprintOnEachPage для footer
Для примера, такой отчет нужен для формирования накладной ТОРГ-12
Title: Re: Печать footer на каждой странице
Post by: Arin Alex on March 04, 2018, 12:45:17 PM
С промежуточными итогами есть определенные трудности, но я подумаю, как это можно исправить. В принципе, есть pagefooter, и он как раз печатается на каждой странице, но  агрегатные функции в pagefooter работают криво в силу определенных причин.
Title: Re: Печать footer на каждой странице
Post by: Arin Alex on March 05, 2018, 11:02:32 AM
Посмотрел Торг 12, действительно нужно датафутер на каждой странице печатать, буду думать :)
Title: Re: Печать footer на каждой странице
Post by: Arin Alex on March 15, 2018, 11:46:30 PM
В develop ветке прикрутил возможность вычислять групповые функции по странице
Code: [Select]
$S{SUM($D{orderitems.Quantity},"SubDetailBand1", currentPage)}

Соответственно для формирования ТОРГ 12 нужно
1. На pagefooter'e разместить вычисление значений по странице
2. На datafooter'e разместить вычисление и по странице и по всей накладной
3. Отключить печать pagefooter на последней странице
Важно, чтобы databand не был splittable! 
Пример прилагаю
Title: Re: Печать footer на каждой странице
Post by: Иван on April 11, 2018, 12:28:27 PM
Благодарю за помощь. Я сейчас сделал пока форму УПД, там нет той хреновни с подитогами на каждой странице. Но скоро доберусь таки и ТОРГа, что бы закончить все это безобразие.

Единственный момент, очень неудобно редактировать такие огромные шаблоны. Возможно ли сделать какие то вертикальные направляющие, что бы по ним делать привязку полей? Получается, если мы меняем ширину какой то колонки в таблице, то это нужно перетащить колонки которые возле нее стоят(а перетаскивать тоже гемор, нужно выделять по одному полю, а когда их 20, и нужно не 1 раз перетащить, работа превращается в ад)
Было бы удобно (как в фотошопе) горизонтальные и вертикальные направляющие, к которым можно было бы привязать поля, и тогда что бы сдвинуть поле, или изменить ширину его, можно было бы просто перетащить направляющую.

В приложении форма УПД (наполовину готовая), посмотрите на тот ужас, который нужно иногда делать)
Title: Re: Печать footer на каждой странице
Post by: Arin Alex on April 11, 2018, 07:21:48 PM
Согласен, с большими шаблонами работать утомительно.
Quote
а перетаскивать тоже гемор, нужно выделять по одному полю
Можно выделить группу полей и перемещать их совместно.
Зажимаем Ctrl и продолжаем выделять элементы отчета, формируя таким образом группу.
Можно зажать Shift и мышью выбрать область выделения.
Также для таблиц есть горизонтальная группировка, она позволяет перемещать все поля внутри
группировки при изменении размера одного из полей, входящего в состав группировки.
У горизонтальной группировки есть два режима работы:
  1. Layout - при изменении размера элемента группировки,
     группировка соответствующим образом меняет свой размер
  2. Table - при изменении размера элемента происходит перераспределение
     пространства группировки между остальными её элементами 
Для создания горизонтальной группировки нужно выделить несколько элементов и нажать на (http://limereport.ru/images/HorizontalLayout.png)
Title: Re: Печать footer на каждой странице
Post by: Иван on April 12, 2018, 12:50:28 PM
Подсказка века!):o
Стало гораздо удобнее редактировать. Благодарю!