ADOQUERY1.First;
ADOQUERY2.First;
ADOQUERY3.First;
while not ADOQUERYn.Eof do //自己想办法判断哪个ADOQUERY记录最多
begin
ClientDataSet.Append;
if not ADOQUER1.Eof then for I := 0 to n1-1 do
ClientDataSet.Fields[I].AsString := ADOQUER1.Fields[I].AsString;
if not ADOQUER2.Eof then for I := 0 to n2-1 do
ClientDataSet.Fields[n1+I].AsString := ADOQUER2.Fields[I].AsString;
if not ADOQUER3.Eof then for I := 0 to n3-1 do
ClientDataSet.Fields[n1+n2+I].AsString := ADOQUER3.Fields[I].AsString;
ClientDataSet.Post;
ADOQUER1.Next;
ADOQUER2.Next;
ADOQUER3.Next;
end;
最后用ClientDataSet作报表。