W
wordpress
Unregistered / Unconfirmed
GUEST, unregistred user!
最近做一个电力系统的调度操作票形如
顺序 单位 操作内容 发令人 备注
1 变电所 123 专职 123
2 变电所 123 专职 123
3......................................
4......................................
因为数据有时只有几行,有时有几十行,总之在最后页要打出空表格补全一页。
在GOOGLE里找了半天都无果,3.15的DEMO里也没找到像2.X版的DEMO里的"Print Empty grid"
后朋友说用如下代码:
var
PageLine: integer;
//在現在頁列印到第幾行
PageMaxRow: integer=15;
//設定每頁列數
procedure MasterData1OnBeforePrint(Sender: TfrxComponent);
begin
PageLine := <line> mod PageMaxRow;
if (PageLine = 1) and (<line> > 1) then
Engine.newpage;
end;
//Footer1高度設為0
procedure Footer1OnBeforePrint(Sender: TfrxComponent);
var
i: integer;
begin
i := iif(PageLine=0, PageMaxRow, PageLine);
while i < PageMaxRowdo
begin
i := i + 1;
Engine.ShowBand(Child1);
//印空白表格
end;
end;
可还是没实现,特别是:
i := iif(PageLine=0, PageMaxRow, PageLine);
while i < PageMaxRowdo
begin
i := i + 1;
Engine.ShowBand(Child1);
//印空白表格
end;
这一段搞不懂,后来用如下实现:
procedure Footer1OnBeforePrint(Sender: TfrxComponent);
begin
while Engine.freespace >90do
Engine.showband(bandname)
end;
可空表是打出来了,也刚好补全一页,可是当数据数大于一页的最大数时,要翻页,第二页它就不打了。晕死啊。我都急翻了,达人们帮忙啊。如果分不够可以再加一百。小弟新来只有这些分!
顺序 单位 操作内容 发令人 备注
1 变电所 123 专职 123
2 变电所 123 专职 123
3......................................
4......................................
因为数据有时只有几行,有时有几十行,总之在最后页要打出空表格补全一页。
在GOOGLE里找了半天都无果,3.15的DEMO里也没找到像2.X版的DEMO里的"Print Empty grid"
后朋友说用如下代码:
var
PageLine: integer;
//在現在頁列印到第幾行
PageMaxRow: integer=15;
//設定每頁列數
procedure MasterData1OnBeforePrint(Sender: TfrxComponent);
begin
PageLine := <line> mod PageMaxRow;
if (PageLine = 1) and (<line> > 1) then
Engine.newpage;
end;
//Footer1高度設為0
procedure Footer1OnBeforePrint(Sender: TfrxComponent);
var
i: integer;
begin
i := iif(PageLine=0, PageMaxRow, PageLine);
while i < PageMaxRowdo
begin
i := i + 1;
Engine.ShowBand(Child1);
//印空白表格
end;
end;
可还是没实现,特别是:
i := iif(PageLine=0, PageMaxRow, PageLine);
while i < PageMaxRowdo
begin
i := i + 1;
Engine.ShowBand(Child1);
//印空白表格
end;
这一段搞不懂,后来用如下实现:
procedure Footer1OnBeforePrint(Sender: TfrxComponent);
begin
while Engine.freespace >90do
Engine.showband(bandname)
end;
可空表是打出来了,也刚好补全一页,可是当数据数大于一页的最大数时,要翻页,第二页它就不打了。晕死啊。我都急翻了,达人们帮忙啊。如果分不够可以再加一百。小弟新来只有这些分!