Виртуальный DataSet

отредактировано 06:23 Раздел: FastReport 2.xx VCL
Собственно вот задача.
Отчёт на всю страницу
2 Master'а, - ну это не суть важно
отчёт на одну страницу(всегда)
но необходимо чтоб по всей странице шла разлиновка(не зависимо от числа записей в Master'aх)
думаю сделать так.
на мастерах внизу линия
далее идёт мастер с виртуальным источником данных, если бы было можно программно изменять количество строк в нём(в зависимости от числа строк в двух предидущих мастерах, те например так 52-count(master1)-count(master2)), то задача была бы решена?
Может есть другой выход?
ЗЫ FastReport 2.47

Комментарии

  • отредактировано 06:23
    Привяжи это последний мастер-бенд (который будет дорисовывать необходимые линии) к frUserDataSet - и в нем управляй количеством записей.
  • отредактировано 06:23
    Те у виртуального DS управлять кол-ом записей нельзя?
    а кол-ом записей в frUserDataSet нельзя ли управлять из скрипта, наприм Report.OnBeforePrint
  • отредактировано 06:23
    Smirnov Anton написал:
    Те у виртуального DS управлять кол-ом записей нельзя?
    а кол-ом записей в frUserDataSet нельзя ли управлять из скрипта, наприм Report.OnBeforePrint
    СУБД какая?
  • отредактировано 06:23
    я думаю СУБД(MSSQL2000) здесь не поможет, тк я не могу влезать в тексты запросов наборов данных, из принципа не буду, хочется научиться пользовать FR без переделки исходников программы
  • отредактировано 06:23
    собственно проблема решилась достаточно просто с помощью скрипта
    (только что посмотрес стандартные функции, 2-ой день с FR работаю)
    begin
     if [FREESPACE]<20 then
      MasterData2.Visible := false
    end
    
    и выставлением заведомо большого кол-ва строк
  • отредактировано 06:23
    select 1
    union all
    select 2
    union all
    ...
    select N

    Нужное кол-во строк в дата сете.
  • отредактировано 06:23
    2 Shurik:
    написал:
    select 1
    union all
    select 2
    union all
    ...
    select N

    Ты такую траву больше не кури ;) )

    В виртуальном датасете кол-во строк меняется так:
    MasterData1.DataSource:=КОЛИЧЕСТВО_СТРОК;
    
  • отредактировано 06:23
    to Vano
    да ладно, нашлось более правильное решение, см предидущий мой пост
    а за информацию пасибо
  • отредактировано 06:23
    Vano написал:
    Ты такую траву больше не кури ;) )
    иногда полезно ;)
    А за инфу спасибо

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

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