主题:这段代码有什么问题?
pengwei0417
[专家分:0] 发布于 2008-08-11 12:05:00
我不知道该如何给报表设置数据源?
这样好像是不行,请老师指点一下.
SELECT * FROM mandata WHERE ALLTRIM(MANDATA.姓名)=="张三" INTO CURSOR TEMP1
SELECT TEMP1
REPORT FORM reportfile\mandatareport2.FRX TO PRINTER PROMPT NODIALOG PREVIEW
报表的数据环境中没有添加表!
回复列表 (共8个回复)
沙发
cbl518 [专家分:57140] 发布于 2008-08-11 17:04:00
以下语句没错啊:
SELECT * FROM mandata WHERE ALLTRIM(MANDATA.姓名)=="张三" INTO CURSOR TEMP1
SELECT TEMP1
REPORT FORM "reportfile\mandatareport2.FRX" TO PRINTER PROMPT NODIALOG PREVIEW
板凳
cbl518 [专家分:57140] 发布于 2008-08-11 17:09:00
语句没错,不知道出了什么错误:
当数据环境没有表的时候,报表就使用当前表啊!
你检查报表中的,字段名前面的,表别名是否正确!
3 楼
pengwei0417 [专家分:0] 发布于 2008-08-11 19:19:00
cbl518老师您好:
问题是这样:
SELECT MANDATA
REPORT FROM....可以,但
SELECT * FROM mandata WHERE ALLTRIM(MANDATA.姓名)=="张三" INTO CURSOR TEMP1
SELECT TEMP1
REPORT FROM...
就不行,报表预览中表格中都是空记录,不知是为什么?
4 楼
pengwei0417 [专家分:0] 发布于 2008-08-11 19:20:00
另外,CSDN为什么上不去了?
5 楼
cbl518 [专家分:57140] 发布于 2008-08-11 23:35:00
[quote]cbl518老师您好:
问题是这样:
SELECT MANDATA
REPORT FROM....可以,但
SELECT * FROM mandata WHERE ALLTRIM(MANDATA.姓名)=="张三" INTO CURSOR TEMP1
SELECT TEMP1
REPORT FROM...
就不行,[color=FF0000]报表预览中表格中都是空记录[/color],不知是为什么?[/quote]
如果没有错误提示的话,
请查看你的临时表《TEMP1》中,是否有记录?
如果有记录的话:
[quote]语句没错,不知道出了什么错误:
当数据环境没有表的时候,报表就使用当前表啊!
你检查报表中的,字段名前面的,表别名是否正确![/quote]
那原因就是:以上所述了。不可能会有其它原因了!
鼠标指定你的域控件--〉右击键--〉属性 --〉常规页:
在《表达式》的文本框中将:
MANDATA.字段名
改为:
TEMP1.字段名
或去掉表别名,直接写成:
字段名
6 楼
cbl518 [专家分:57140] 发布于 2008-08-11 23:35:00
在不行的话,
请把把你的数据表和报表文件上传!
7 楼
cbl518 [专家分:57140] 发布于 2008-08-12 09:13:00
CSDN 可能被病毒破坏了吧?
8 楼
pengwei0417 [专家分:0] 发布于 2008-08-12 15:36:00
对对对,是表别名的问题?
谢谢老师指教!
我来回复