Welcome, Guest. Please login or register.
Did you miss your activation email?

Author Topic: Разбивка таблицы по страницам  (Read 11120 times)

Fynjy

  • Newbie
  • *
  • Posts: 23
    • View Profile
Разбивка таблицы по страницам
« on: June 19, 2018, 12:33:17 pm »
Ай-ай-ай, как давно на форуме не был))) Привет Всем!
С удовольствием использую LimeReport, автору огромная благодарность.
В свое время делал проект который автоматически генерировал отчет. Проект сделан, щас идет его сопровождение. Ну и вопрос. DataBand генерит таблицу из переменной $D{reportstagetablemodel.2}. Ну суть её такова что она формирует строки таблицы. Сколько в источнике будет строк столько она и повторится по вертикали(пишу так очевидно, на всякий чтоб понятно было). В конце этой таблицы, вернее в дизайнере после этого DataBand'а идут DataHeaderBand1 и DataBand1. В DataBand1 я вставил поля с подписями людей, а DataHeaderBand1 служит тупо для отступа от всей таблицы от DataBand. Так вот, иногда получается так, что таблица содержит столько строк что она полностью помещается на страницу, а на следующую попадает DataHeaderBand1 и DataBand1, что в отчете проявляется как последний лист и на нем только подписи, что не есть айс! Нет ли каких нибудь инструментов, скажем что-то наподобие автоматического определения в каком месте заканчивается таблица относительно нижнего конца листа, чтобы можно было прикинуть так её разбиение(постраничное), чтобы на последнем листе были по крайней мере две-три строчки таблицы, а не одни подписи? Уф! Надеюсь понятно описал проблему)
« Last Edit: June 19, 2018, 12:38:48 pm by Fynjy »

Arin Alex

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 1005
    • View Profile
Re: Разбивка таблицы по страницам
« Reply #1 on: June 19, 2018, 12:59:13 pm »
Приветствую
В случае использования разных DataBand это сделать не получится.
А вот если подписи выводить в DataFooterBand, что как мне кажется довольно логично :) То можно использовать свойство keepFooterTogether у DataBand и в этом случае футер будет уходить на следующую страницу прихватив с собой последний DataBand.   

Fynjy

  • Newbie
  • *
  • Posts: 23
    • View Profile
Re: Разбивка таблицы по страницам
« Reply #2 on: June 19, 2018, 03:55:53 pm »
Да, сделал. Спасибо. Но что-то DataFooterBand у меня не повторился несколько раз. В него выведена переменная список.
Попутный вопрос: Можно ли вывести последующие строки из списка $D{joblist.1}?
« Last Edit: June 19, 2018, 03:59:07 pm by Fynjy »

Subst

  • Sr. Member
  • ****
  • Posts: 450
    • View Profile
Re: Разбивка таблицы по страницам
« Reply #3 on: June 19, 2018, 04:04:48 pm »
Дата футер и не должен несколько раз повторяться вобщем-то.
Зачем это надо?

Или подпись должна быть на каждом листе?

Ты можешь показать свой отчет изначальный?
Покумекаем...

Fynjy

  • Newbie
  • *
  • Posts: 23
    • View Profile
Re: Разбивка таблицы по страницам
« Reply #4 on: June 19, 2018, 04:15:49 pm »
Вот отчет. Да я решил убрать список, так от руки еще две переменных решил добавить.

Subst

  • Sr. Member
  • ****
  • Posts: 450
    • View Profile
Re: Разбивка таблицы по страницам
« Reply #5 on: June 19, 2018, 04:52:42 pm »
Вот это Оператор, Работник 1, Работник 2 - на каждой странице нужно али как?

Fynjy

  • Newbie
  • *
  • Posts: 23
    • View Profile
Re: Разбивка таблицы по страницам
« Reply #6 on: June 20, 2018, 07:52:45 am »
нет. Они нужны по окончании всей таблицы. Ну на последней странице только.
Сегодня сделал отчет, как вы написали,(т.е с футером) и теперь на последней странице вывелась строка таблицы но без шапки. Ну а в остальном всё нормально. Вот сейчас шапку как-то надо вернуть
PS: Заметил такую фишку - если на последнюю страницу попадает две строки таблицы, то шапка рисуется, но ежли только одна то шапки нет (аттач ниже)
« Last Edit: June 20, 2018, 08:19:21 am by Fynjy »

Subst

  • Sr. Member
  • ****
  • Posts: 450
    • View Profile
Re: Разбивка таблицы по страницам
« Reply #7 on: June 20, 2018, 10:35:08 am »
Попоробуй printAlways выставить
« Last Edit: June 20, 2018, 10:41:48 am by Subst »

Fynjy

  • Newbie
  • *
  • Posts: 23
    • View Profile
Re: Разбивка таблицы по страницам
« Reply #8 on: June 20, 2018, 12:23:14 pm »
да, выставил. Но в одном отчете все норм, а в другом так же без шапки. Не понимаю в чем разница. Думал зависит от количества "невходящих" строк или от высоты этой строки, от четности/нечетности количества строк. Но нет...

Arin Alex

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 1005
    • View Profile
Re: Разбивка таблицы по страницам
« Reply #9 on: June 20, 2018, 12:32:24 pm »
Это по всей видимости это я не предусмотрел такой вариант, что надо шапку печатать если футер утащил строку :) поправлю :)

Fynjy

  • Newbie
  • *
  • Posts: 23
    • View Profile
Re: Разбивка таблицы по страницам
« Reply #10 on: June 20, 2018, 12:33:43 pm »
хорошо, спасибо. А мне потом какие файлы следует заменить?

Arin Alex

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 1005
    • View Profile
Re: Разбивка таблицы по страницам
« Reply #11 on: June 20, 2018, 12:36:35 pm »
Исходники с гитхаба пересобрать, полученную limereport.dll заменить

Subst

  • Sr. Member
  • ****
  • Posts: 450
    • View Profile
Re: Разбивка таблицы по страницам
« Reply #12 on: June 20, 2018, 02:10:20 pm »
To Alex: накосячил, накосячил :)
у тебя все в порядке с локализацией русской в мастере? А то я у себя нашел косячек, не знаю, это мой конкретно перевод или я его и тебе кидал? именно в мастере, не в девелопере

Arin Alex

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 1005
    • View Profile
Re: Разбивка таблицы по страницам
« Reply #13 on: June 20, 2018, 07:35:45 pm »
Поправил :) Пушнул :)
Subst Ну вроде в глаза ничего не бросается :)
Ты мне скажи, что у себя нашел, я внимательнее посмотрю.

Subst

  • Sr. Member
  • ****
  • Posts: 450
    • View Profile
Re: Разбивка таблицы по страницам
« Reply #14 on: June 20, 2018, 08:35:58 pm »
У меня было repeatOnEachRow переведено как Печатать на каждой странице... глаз замылен был, чтолЕ