2012年(106)
分类: 嵌入式
2012-05-07 18:16:45
QuickReport1
步骤一:开始---程序---Borland Delphi 6---BDE---Object---New---OK(默认STANDARD)---PATH---设置为含有数据库文件的目录下。
步骤二:向Form1中添加Table组件(DBE组中),DatabaseName---STANDARD1(上一步创建的),TableName---Pza.DBF。
添加1个QuickRep组件(QReport组中),DataSet---Table1。添加4个QRBand(QReport组中),分别命名为QRBand1, QRBand2,QRBand3,QRBand4,QRBand1的BandType---rbTitle , QRBand2的BandType---rbColumnHeader, QRBand3的BandType---rbDetail, QRBand4的BandType---rbPageFooter。QRBand1---Frame---DrawBottom,DrawLeft,DrawRight,DrawTop设置为true, 其他QRBand2和QRBand3---Frame---DrawBottom,DrawLeft,DrawRight设置为 true。
向QRBand1中,添加1个QRLabel组件(QReport组中), Caption---报表。 向QRBand2中,添加3个QRLabel组件(QReport组中),Caption----分别设置为 编号,日期,备忘录。向QRBand3中,添加3个QRDBText组件(QReport组中),DataSet----都设置为Table1,DataField---分别设置为 NO, DATE,
MEMO。向QRBand4中,添加1个QRSysdata组件(QReport组中),Data----qrsPageNumber。
添加5个Edit(依次为Edit1至Edit5),两个用于查询编号,两个用于查询日期,一个用于查询备忘录。3个Lable组件,用于标示这5个Edit的功能。1个Button,Caption----打印。
步骤三: Button1(打印):
vars:string;
begin
s:='';
ifedit1.Text<>'' then s:=s+'NO>='+edit1.text+' and ';
ifedit2.Text<>'' then s:=s+'NO<='+edit2.Text+' and ';
if(edit1.Text<>'') or (edit2.Text<>'') then s:=copy(s,1,length(s)-5);
if(edit3.Text<>'') or (edit4.Text<>'') then
ifs<>'' then s:=s+' and ';
ifedit3.Text<>'' then s:=s+'DATE>='+edit3.Text+' and ';
ifedit4.Text<>'' then s:=s+'DATE<='+edit4.Text+' and ';
if(edit3.Text<>'') or (edit4.Text<>'') then s:=copy(s,1,length(s)-5);
if(edit5.Text<>'')then
begin
ifs<>'' then s:=s+' and ';
s:=s+'MEMO='''+edit5.Text+'*''';
end;
table1.Filtered:=false;
table1.Filter:=s;
table1.Filtered:=true;
QuickRep1.Preview;
end;