Вниз
Скачать: CL | DM;

Проблема с изменением ориентации страницы в отчете   Найти похожие ветки 

← →
madmech ©   (2009-05-22 19:57) [0]

Использую FastReport4, в котором хочу изменять ориентацию страницы с портретной на альбомную в случае определенного размера кросс-таба, выходящего за границы страницы, для чего использую следующий скрипт:
var DBCrossWidth: extended;
procedure EnumReportOnStartReport(Sender: TfrxComponent);
begin
 if Engine.FinalPass then                                                    
   if DBCrossWidth > 680 then
     Page1.Orientation := poLandscape;            
end;

procedure Enum_DBCrossOnAfterPrint(Sender: TfrxComponent);
begin
 DBCrossWidth := Enum_DBCross.Width;  
end;

Как не сложно догадаться, использую двухпроходной отчет, при запуске которого на первом шаге я запоминаю (заношу в спец. переменную) ширину кросс-таба, а на втором в случае необходимости изменяю ориентацию страницы. Но! Так должно происходить по теории. :) А на деле ровным счетом ничего не происходит. В чем проблема?


← →
KilkennyCat ©   (2009-05-22 21:20) [1]


> Enum_DBCrossOnAfterPrint

это случайно не переводится как "после печати"? тогда, наверное, надо сунуть листик обратно.


← →
madm   (2009-05-22 22:02) [2]

http://www.sql.ru/forum/actualthread.aspx?tid=666261


← →
AndreyV ©   (2009-05-22 22:41) [3]

Да на втором проходе можно ли менять - поплывёт же всё - вычисленные суммы по страницам для вывода в заголовках, например, и т.п.. Проверять не хочется.


← →
Нат   (2009-05-22 23:54) [4]

printer.Orientation:=poLandscape;
frReport1.ShowReport ;


← →
madmech ©   (2009-05-24 13:12) [5]

KilkennyCat, а ведь точно: событие вызывается после печати таблицы. :)
madm, и что?
AndreyV, и что Вы предлагаете?
Нат, мне ориентацию надо менять ВНУТРИ отчета, в самом скрипте.

Вопрос с пояснением еще раз всем: на этапе разработки я еще не знаю, каковы окажутся размеры таблицы. Это станет известно после формирования отчета. Поэтому вопрос переформулирую следующим образом: в какой момент становится известна ширина кросс-таба? В каком обработчике лучше заносить ширину таблицы в переменную? В каком обработчике лучше менять ориентацию? Теперь, думаю, задача стала более понятной и доступной.


← →
AndreyV ©   (2009-05-24 13:42) [6]

> [5] madmech ©   (24.05.09 13:12)

Задача была понятна из [0]. В ФР4 не пробовал решить с бесконечной шириной и или длинной и печатью с разбивкой. Повторю, в ФР4.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.008 c
2-1242901915
Desyatnik
2009-05-21 14:31
2009.07.19
фильтрация


2-1243007821
madmech
2009-05-22 19:57
2009.07.19
Проблема с изменением ориентации страницы в отчете


15-1242305980
Сергей М.
2009-05-14 16:59
2009.07.19
Про глюки Лазаря


15-1242562061
SHM
2009-05-17 16:07
2009.07.19
Что за технология применяется в One Note (MS Office)


2-1243338367
dmitrot
2009-05-26 15:46
2009.07.19
Как убрать вертикальный и горизонтальный скролбары в DBGrid ?




   Наверх