QuickReport问题:在管理信息系统软件中,怎样提供给用户控制打印、预览当前数据表的当前记录内容或指定范围的记录?(100分)

  • 主题发起人 主题发起人 zmj99
  • 开始时间 开始时间
Z

zmj99

Unregistered / Unconfirmed
GUEST, unregistred user!
在vfp中可以在打印或预览的命令中Record recno()控制打印范围,Delphi中能取得
当前记录号并定位到指定的记录吗?如有,在Query中怎样实现?
怎样提供给用户控制打印、预览当前数据表的当前记录内容或指定范围的记录?
在QuickReport中我不是用Query做数据源,即使用,如何定位当前记录或指定范围的记录?
难道要在Query或Table.filter中逐一判断所有的字段值?
为了做一个通用的打印、预览窗口,必须解决以上问题?
分数不多,多谢指教!!!!
 
要指定打印范围,当然最好还是用Tquery了,例如:
with query1do
begin
close;
sql.clear;
sql.add('select * from dbo.table1 where field1='A'');
open;
end;

在quickreport的数据源指向query1就行了。
 
如何准确定位当前记录,可不可以用记录号定位?
 
不要用记录号定位,这在大多数情况下是不行的,可以参看关于记录号的贴子。
如果需要选出一批记录打印,可以试试把 DBGrid 设为多行选择,然后只打印出选择的
记录。
 
同意fatao, 利用SQL设置一下范围,然后quickreport的数据源指向query
 
fatao说的是zmj99的要求吗?Crab的方法较好.
>>可以试试把 DBGrid 设为多行选择,然后只打印出选择的记录。
~~~~~~~~~~~~~~~~~~~~~~
实现容易吗?
 
Delphi在这方面会表现的更好。
写SQL语句查出所选部分,再打印。
或干脆用过滤。
 
各位的答案不是我想得到的,如果我想做成通用的过程,如何能够
定位到当前数据表的当前记录!!!
Delphi中TQuery无法通过取得当前记录号并定位到数据表的当前记录!!!
Filter也无法实现。
I cando
:
Table1.Moveby(Recno-1),but it isn't my means.
 
附加功能 将问题提前
 
用ehlib 1.55可以打印
用户自动所选择的记录
无需编程
 
推荐在数据库设计时应设置主键,然后根据主键设置打印范围
 
后退
顶部