怎样设计打印查询结果?先请大虾看看!~~~~~(1分)

  • 主题发起人 主题发起人 hautjie
  • 开始时间 开始时间
H

hautjie

Unregistered / Unconfirmed
GUEST, unregistred user!
我有一个 form1,上面有已经设计好查询的sql语句.
query1.SQL.Clear;
query1.SQL.Add('select 统一编号,学号,姓名,年龄,性别,出生年月,籍贯,父亲,
母亲,学历,所学专业,系别,班级,联系方式,其它情况,家庭住址');//输出选项
query1.SQl.Add('FROM xuesheng');{源表}
query1.sql.add('where '+form3.combobox1.text+'='''+form3.edit1.Text+'''');
try
query1.Prepare;{准备展开query1语句}
query1.Open;
except
showmessage('嘻嘻!~~没有查询到什么,请正确输入查询内容并正确选择查询条件!')
end;

查询结果能在dbgrid里面显示,我现在想把在dbgrid里面显示的查询结果打印出来,怎样设计?
有没有人帮忙给出详细点的方法,我是菜鸟!~``先谢谢了.(问问:)是不是打印报表的问题啊?)

 
建立一个QUICKREPORT
....
QUICKREPORT.PRINT;
 
就是打印报表的问题。
常规做法:
1、放置一个QuickReport,双击设置属性,至少要选择Detail Band等。
2、设置QuickReport的DataSet指向你的那个Query
3、在QuickReport的DetailBand上放置几个QrDBEdit,每个的DataSet都指向那个Query
4、设置个QRDbEdit的FieldName属性为相应字段。
5、使用语句QuickReport1.Preview就可以预览了。
 
我是这样做的,可是老是有提示错误信息.
就是QRDbEdit的相应FieldName找不到。
我想是我的sql写错了,
我前面的查询是这样写的
query1.SQl.Add('FROM xuesheng');{源表}
query1.sql.add('where '+form3.combobox1.text+'='''+form3.edit1.Text+'''');

我新建立的报表上quickrep的dataset是不是要指到我前面查询的那个query,还是在这新建立的
form上,再放一个query,把这个query的写的和前面的那个一样就能打印查询的结果呢?
还有啊,编译的时候的错误提示是:query1:no sql statament aivilable.
这是怎么回事?
 
你的QuickReport的DataSet指向你需要打印里面内容的那个Query。将sQL语句Where以前的那部分
复制到那个Query的SQL里面去。
你FieldName找不到,首先需要设置QrEdit的DataSet,设置完后,再选择FieldName,就能够选择了。
 
接受答案了.
 

Similar threads

D
回复
0
查看
889
DelphiTeacher的专栏
D
D
回复
0
查看
857
DelphiTeacher的专栏
D
D
回复
0
查看
808
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部