Странное поведение Line#
Есть отчёт такой структуры:
GroupHeader1
MasterData1
GroupFooter1
На GroupFooter1 размещён SubReport с MasterData2.
На первом проходе в CountOfLines заносится число строк MasterData1:
Я в GroupFooter1OnBeforePrint присваиваю дополнительной переменной значение Line#, а в GroupFooter1OnAfterPrint сравниваю её с CountOfLines и таким образом решаю проблему.
Хотелось бы знать - это баг или так и должно быть?
GroupHeader1
MasterData1
GroupFooter1
На GroupFooter1 размещён SubReport с MasterData2.
На первом проходе в CountOfLines заносится число строк MasterData1:
procedure ReportSummary1OnBeforePrint(Sender: TfrxComponent);
begin
with ReportSummary1, Engine do
begin
If not FinalPass then
begin
CountOfLines:=<Line#>;
end;
end
end;
А на втором проходе после печати каждой группы проверяется, не достигнут ли конец отчёта, и если не достигнут, то на новой странице выводится ReportTitle1:
procedure GroupFooter1OnAfterPrint(Sender: TfrxComponent);
begin
with GroupFooter1, Engine do
begin
if (FinalPass) and (<Line#><CountOfLines) then
begin
PageHeader1.Visible:=False;
NewPage;
PageHeader1.Visible:=True;
Engine.ShowBand(ReportTitle1);
end;
end;
end;
Проблема в том, что после печати группы в Line# содержится число строк+1 бэнда MasterData2Я в GroupFooter1OnBeforePrint присваиваю дополнительной переменной значение Line#, а в GroupFooter1OnAfterPrint сравниваю её с CountOfLines и таким образом решаю проблему.
Хотелось бы знать - это баг или так и должно быть?
Комментарии
http://rapidshare.de/files/7662943/example.zip.html