主题:请教高手关于报表打印的问题
stxinhui
[专家分:0] 发布于 2009-10-17 11:39:00
大家好,谁能帮我一个问题,已知表ABC,,我已建好打印报表,如果要打印其中的某个范围,比如班级一列中有初一1到初一10班,我只要打印其中的一班,其它暂不要打印,请问要怎样处理?
回复列表 (共11个回复)
沙发
Gleam [专家分:3100] 发布于 2009-10-17 16:17:00
在报表的数据环境中添加临时表。使用select语句进行筛选。
板凳
stxinhui [专家分:0] 发布于 2009-10-17 16:28:00
请你帮我写完整好吗?我不会写哦,谢谢!
3 楼
Gleam [专家分:3100] 发布于 2009-10-17 16:38:00
如果你的报表没有控制。那么,你可以在表单中添加“打印报表”按钮。在该按钮中加入代码:
select * from 表名 into table 临时表名 where 条件
其中 表名、临时表名、 条件 都是根据你的实际情况来编写的,至于其他的控制代码,你根据需要编写。
然后,在报表生成器中的数据环境中把你的 临时表名 这个文件添加进去。修改你的报表字段名就可以了。
4 楼
zhaoyufei [专家分:550] 发布于 2009-10-17 20:31:00
为何不用REPORT FORM ?.FRX FOR ??? TO PRINTER
5 楼
stxinhui [专家分:0] 发布于 2009-10-18 01:34:00
请帮到底,比如:已知表A ,班级在bj 列中,现在要打印班级中的初一2班范围报表,要怎样完整地写这个句式才能把表A 中初一2班的数据打印出来,拜托了!
6 楼
sywzs [专家分:5650] 发布于 2009-10-18 06:29:00
只是个数据的筛选问题
用
set filt to bj="初一2班"
或
sele * from 表A where bj="初一2班" into curs repot
REPORT FORM 打印报表 TO PRINTER PROMPT
7 楼
stxinhui [专家分:0] 发布于 2009-10-18 14:30:00
谢谢sywzs高手指点,你的句式已通过,这样会给我以后的报表打印中带来很大的方便!如果要加上页码,还应该加什么句式呢?
8 楼
dfwxj [专家分:270] 发布于 2009-10-18 21:27:00
什么也不加,加一个域控件_pageno
9 楼
stxinhui [专家分:0] 发布于 2009-10-18 23:17:00
单独加这个控件是不行的,我试运行过
10 楼
sywzs [专家分:5650] 发布于 2009-10-19 06:49:00
在发出打印命令之前,用以下两语句获得此次打印的总页数 ZYS,并在报表中调用此变量。
REPORT FORM 报表名 NOCONSOLE
ZYS = _PAGENO
另外,在报表中直接调用系统变量 _PAGENO,就是当前打印的页数。
我来回复