Создание бланка = потеря Underline при экспорте

отредактировано 23:24 Раздел: FastReport 4.0
Есть спец бланк.
выглядит так:
1: шапка1
2:разлинеенные
...
12:строки таблицы 1
13:
14: шапка2
15:разлинеенные
...
23:строки таблицы 2

выгребаю из базы строки и ввожу в соотв блоки.
для имитации ручного заполнения соотв. граф бланка, в memoview-ах рисую underline, послеждний банд растягиваю до края "таблицы" скриптом.

при экспорте в rtf не отрисовывается underline и в результате получается один большой банд вместо "разлинеенной таблички".
До недавнего времени это устраивало пользователя. сейчас нет.
есть ли способ, как победить эту трудность, кроме варианта скриптом добавлять к masterdata новые строки, чтобы заполнить расстояние от последней записи до края таблицы 1 и таблицы 2?

Комментарии

  • отредактировано 23:24
    procedure MasterData1OnBeforePrint(Sender: TfrxComponent);
    begin
    if not engine.FinalPass then
    begin
    // showmessage(engine.CurY);
    // showmessage(MasterData1.dataset.recno);
    IF MasterData1.dataset.recno=0 then
    begin
    band_length := engine.CurY;
    showmessage(band_length);
    end;
    end else
    begin
    if <line>=1 then begin
    report.getdataset('frxdbdtst_P2_WKEDU').first;
    masterdata1.rowcount:=masterdata1.rowcount-1;
    end;
    if report.getdataset('frxdbdtst_P2_WKEDU').eof then
    begin
    memo71.underlines:=false;
    memo72.underlines:=false;
    memo73.underlines:=false;
    memo74.underlines:=false;
    memo75.underlines:=false;
    memo36.underlines:=false;
    end else begin
    memo71.underlines:=true;
    memo72.underlines:=true;
    memo73.underlines:=true;
    memo74.underlines:=true;
    memo75.underlines:=true;
    memo36.underlines:=true;
    end;
    if band_length+200<engine.curY then showmessage('!!');
    //memo73.Height:=200;
    end;
    end;

    procedure MasterData1OnAfterPrint(Sender: TfrxComponent);
    begin
    if not engine.FinalPass then
    begin
    if not report.GetDataset('frxdbdtst_P2_WKEDU').eof then
    begin
    masterdata1.rowcount:=masterdata1.rowcount+1;
    // showmessage(masterdata1.datasetname);
    report.GetDataset('frxdbdtst_P2_WKEDU').next;
    // showmessage(band_length);
    // showmessage(engine.CurY - band_length);
    // showmessage('xbrk');
    end else
    begin
    // showmessage('near to finish');
    if engine.CurY - band_length < 200 then
    masterdata1.rowcount:=masterdata1.rowcount+1
    else
    begin
    showmessage('masterdata1.rowcount');
    showmessage(masterdata1.rowcount);
    masterdata1.rowcount := <line>;
    showmessage(masterdata1.rowcount);
    end;
    // showmessage(masterdata1.rowcount);
    end;

    end else
    begin
    if <line> < masterdata1.rowcount then
    report.getdataset('frxdbdtst_P2_WKEDU').next;
    // showmessage(masterdata1.rowcount);
    end;
    end;

    как отключить линия подчеркивания, чтобы не было видно ступеней? то чтобы при экспорте были видны ячейки?
  • отредактировано 23:24
    Приложите fp3 файл. Без него трудно понять, что там за отчёт такой.

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

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