Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > FastReport-Cross таблица - создание в RunTime


Автор: generator 14.9.2007, 05:38
Здравствуйте!

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

Создаю так:

Код

        Band1 := TfrxMasterData.Create(Page);
        Cross := TfrxCrossView.Create(Band1);
        with Сross do
        begin
          ShowColumnTotal := false;
          ShowRowTotal := false;
          ShowCorner := false;
          ShowTitle := false;
          ShowRowHeader := false;
          CellFunctions[0] := cfNone; 
        end;
        frxReport1.Engine.ShowBand(Band1);


Так вот проблема вот в чем: при попытке добавления данных в созданную таблицу таблица расползается по страницам: на одном листе несколько колонок (только шапка), на другом листе только шапка - лист вообще практически чистый, кроме пары ячеек на нем вообще ничего нет, далее та же картина но уже с данными. И еще это все перемешивается с данными, в других бэндах. 

Подскажите, как можно сделать, чтобы таблица целиком вмещалась в одну страницу? Пробовал делать так:

Код

      if FieldCaptions.count <> 0 then
        begin
          Cross.MaxWidth := round(Cross.Parent.Width / FieldCaptions.count );
          Cross.MinWidth := Cross.MaxWidth;
        end;


непомогает.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)