procedure TForm1.frxReport1BeforePrint(Sender: TfrxReportComponent);
var
Cross : TfrxCrossView;
i,j : integer;
begin
if Sender is TfrxCrossView then
begin
Cross := TfrxCrossView(Sender);
Table1.First;
i := 0;
while not Table1.Eof do
begin
for j := 0 to Table1.Fields.Count - 1 do
if not table1.Fields[j].IsNull then
begin
if table1.Fields[j].DataType in [ftSmallint, ftInteger, ftWord,ftFloat,ftAutoInc] then
begin
Cross.AddValue([i], [Table1.Fields[j].DisplayLabel], [Table1.Fields[j].AsFloat ]);
end
else if table1.Fields[j].DataType in [ftDate, ftTime, ftDateTime] then
begin
Cross.AddValue([i], [Table1.Fields[j].DisplayLabel], [Table1.Fields[j].AsDateTime]);
end
else if table1.Fields[j].DataType in [ftstring] then
begin
Cross.AddValue([i], [Table1.Fields[j].DisplayLabel], [Table1.Fields[j].AsString]);
end;
end;
Table1.Next;
Inc(i);
end;
end;