这样吧:
不用分栏功能,根据页面自己添Label等,然后在onNeedData中控制,参考下面的代码:
procedure TFormRepSm.QuickRep2NeedData(Sender: TObject;
var MoreData: Boolean);
var I:Integer;
begin
if not Datamodule1.Query_CKInquire.Eof then
moredata:=True
else
moredata:=false;
for I:= 1 to 2do
begin
case I of
1: begin
if Datamodule1.Query_CKInquire.Eof then
begin
QrLabel4.Caption:='';
QrLabel5.Caption:='';
QrLabel6.Caption:='';
QrLabel7.Caption:='';
QrLabel8.Caption:='';
end
else
begin
QrLabel4.Caption:=Datamodule1.Query_CKInquire.FieldByName('P_code).AsString;
QrLabel5.Caption:=copy(Datamodule1.Query_CKInquire.FieldByName('P_name').AsString,1,22);
QrLabel6.Caption:=FormatFloat('#,###',Datamodule1.Query_CKInquire.FieldByName('P_qty').AsFloat);
QrLabel7.Caption:=FormatFloat('#,###.00;;
',Datamodule1.Query_CKInquire.FieldByName('P_amt').AsFloat);
QrLabel8.Caption:=FormatFloat('#,###.00;;
',Datamodule1.Query_CKInquire.FieldByName('P_avg').AsFloat);
end;
end;
2: begin
if Datamodule1.Query_CKInquire.Eof then
begin
QrLabel19.Caption:='';
QrLabel20.Caption:='';
QrLabel21.Caption:='';
QrLabel22.Caption:='';
QrLabel23.Caption:='';
end
else
begin
QrLabel19.Caption:=Datamodule1.Query_CKInquire.FieldByName('P_code).AsString;
QrLabel20.Caption:=copy(Datamodule1.Query_CKInquire.FieldByName('P_name').AsString,1,22);
QrLabel21.Caption:=FormatFloat('#,###',Datamodule1.Query_CKInquire.FieldByName('P_qty').AsFloat);
QrLabel22.Caption:=FormatFloat('#,###.00;;
',Datamodule1.Query_CKInquire.FieldByName('P_amt').AsFloat);
QrLabel23.Caption:=FormatFloat('#,###.00;;
',Datamodule1.Query_CKInquire.FieldByName('P_avg').AsFloat);
end;
end;
end
Datamodule1.Query_CKInquire.Next;
end;