我做的是数据库程序,用的是SQL2000+DELPHI7.0,报表是自带的QRT报表。
在一个窗体中用两个ADOQuery做查询,打印时打印两个ADOQuery的内容。
其中,打印ADOQuery1一个字段内容,打印ADOQuery2的所有内容。
第一次打开查询窗体时,能够能结果进行正常打印,关闭查询窗体,再打开时,打印的内容总是第一次关闭查询窗体前的内容。不对当前查询结果进行打印。
查询:
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('select * from table1 where id='''+Trim(Edit1.text)+'''');
ADOQuery1.open;
在报表窗体里是直接连的这个窗的ADOQuery1
打印窗体调用是对象调用
var TmpForm:TRForm1;
begin
TmpForm:=TRForm1.Create(self);
TmpForm.QuickReport.PreviewModal;
end;
在一个窗体中用两个ADOQuery做查询,打印时打印两个ADOQuery的内容。
其中,打印ADOQuery1一个字段内容,打印ADOQuery2的所有内容。
第一次打开查询窗体时,能够能结果进行正常打印,关闭查询窗体,再打开时,打印的内容总是第一次关闭查询窗体前的内容。不对当前查询结果进行打印。
查询:
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('select * from table1 where id='''+Trim(Edit1.text)+'''');
ADOQuery1.open;
在报表窗体里是直接连的这个窗的ADOQuery1
打印窗体调用是对象调用
var TmpForm:TRForm1;
begin
TmpForm:=TRForm1.Create(self);
TmpForm.QuickReport.PreviewModal;
end;
解决方案 »
- selcet...from..where 语句问题
- Delphi 与 C++ 函数转换
- 难道Inno Setup不可以在"开始菜单"里制作删除接口?(超级郁闷..........)
- 想找份工作,不知道有人要不
- 用IDFTP做FTP客户端的连接问题,代码如下,一运行就死掉,为什么?
- Socket端口的打开与关闭问题
- tree view中怎么将复选框加到选项上面?就想vb中那样!
- sql中怎样限制只显示第十条至第二十条记录?
- 想做个时钟
- delphi如何实现文字纵向打印?
- intraweb 生成的Tiwusersession 中可不可以直接添加ADO访问控件,怎样进行访问??急急急急
- Type Library Editor使用问题
不过你为什么要用窗体打开的时候查询呢?弄个按钮不是更好?
你是不是写在ONFORMSHOW里?这样的话问题是你关闭窗体时没有释放窗体的原因,也就是说你关闭的窗体只是隐藏起来了,你还是不要写在FORM的SHOW事件里,弄个按钮就行了
在QuickRep1里连接ADOQuery
在QuickRep1里连接ADOQuery
begin
TmpForm:=TRForm1.Create(self);
TmpForm.QuickReport.PreviewModal;'
TmpForm.Free ; //增加一个释放试试
end;
试过把adoquery关了再打开,把adoconnection关了,再打开,form.QuickReport.refresh,form.destroy