Нарастающий итог

отредактировано 14:22 Раздел: FastReport 4.0
Здравствуйте.

Столкнулся с проблемой, которую не могу решить.
Нарастающий итог (может и по другому называется) = это когда на в конце каждой страницы выводится сумма данных этой страницы и предыдущих.
Посчитать нарастающий итог, просто это делает функция: [SUM(<frxDBDataset."JValue">,MasterData1,2)]
А вот в чем вопрос как его вывести НЕ ОТРЫВАЯ ОТ ДАННЫХ?
Его вывожу в PageFooter, так этот бэнд печатается в конце каждой страницы.
Все вроде бы здорово, но этот банд всегда выравнен по концу страницы, то есть прижат к самому низу листа, и поэтому возникает разрыв между данными и бэндом.

Внимание вопрос 1: как вывести значение указанной функции на каждой странице, но без разрыва от данных, то есть это значение должно идти сразу после данных?

Вопрос 2 к разработчикам: Можно ли ввести настройку в PageFooter типа Align = {aTop, aBottom}, то есть куда его прижать либо к низу страницы, как сейчас, либо к данным, как мне надо?

Вопрос 3: Может я вообще все неправильно делаю? Тогда как это сделать правильно?

Формировать руками нарастающий итог и вставлять руками разрывы страниц не предлагать ибо это очень сложно, пока.
FR4.3 final, без исходных текстов.

Комментарии

  • gpigpi
    отредактировано 14:22
    Версия FR- Basic или Standart? Если Standart, то после вывода мастердата запоминайте значение Engine.CurY, а перед печатью подвала страницы восстанавливайте его. Если же у Вас Basic, то ничего сделать не получится, т.к. скрипты в этой версии не поддерживаются
  • отредактировано September 2007
    У меня Standart.
    Большое спасибо, сработало!

    double FooterTop;

    void MasterData1OnAfterCalcHeight(TfrxComponent Sender)
    {
    FooterTop = Engine.CurY;
    }

    void PageFooter1OnBeforePrint(TfrxComponent Sender)
    {
    Engine.CurY = FooterTop;
    }
  • FokewolfFokewolf Киев
    отредактировано 14:22
    А у меня при таком примере Footer налез на последнюю запись бэнда с данными.
  • gpigpi
    отредактировано 14:22
    Используйте MasterData1OnAfterPrint вместо MasterData1OnAfterCalcHeight
  • FokewolfFokewolf Киев
    отредактировано 14:22
    gpi написал: »
    Используйте MasterData1OnAfterPrint вместо MasterData1OnAfterCalcHeight
    Уже выкрутился. Прибавил MasterData1.Height.
  • FokewolfFokewolf Киев
    отредактировано 14:22
    Кстати, а заголовок страницы можно как-то отобразить не в самом верху страницы, а тоже привязать над самим бэндом?

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.