dynamic reports
is there a way to optionally hide columns and automatically format the report if certain columns are hidden?
ex.
fields:
field1, field2, field3, field4
FR output:
column1, column2,column3, column4
FR output if field3 has no value (assuming all field3 are empty in table):
colum1,column2,column4
ex.
fields:
field1, field2, field3, field4
FR output:
column1, column2,column3, column4
FR output if field3 has no value (assuming all field3 are empty in table):
colum1,column2,column4
Comments
You should be able to control display of the field and even change the positions of other objects based on the data the field holds.
here is an example of one of mine that controls the display of the field based on the info:
procedure MyDataSetMarksOnBeforePrint(Sender: TfrxComponent);
begin
MyDataSetMarks.Font.Style:=fsbold;
MyDataSetMarks.Font.Color:=clBlack;
if ValidInt(<MyDataSet."Mark">) then
begin
MyDataSetMarks.Color:=clNavy;
MyDataSetMarks.Font.Color:=clWhite;
end
else
begin
if <MyDataSet."Mark"> = 'A' then MyDataSetMarks.Color:=clYellow;
if <MyDataSet."Mark"> = 'B' then MyDataSetMarks.Color:=clLime;
if <MyDataSet."Mark"> = 'C+' then MyDataSetMarks.Color:=clAqua;
if <MyDataSet."Mark"> = 'C' then MyDataSetMarks.Color:=clFuchsia;
if <MyDataSet."Mark"> = 'C-' then MyDataSetMarks.Color:=clRed;
if <MyDataSet."Mark"> = 'I' then
begin
MyDataSetMarks.Font.Color:=clYellow;
MyDataSetMarks.Color:=clRed;
end;
if <MyDataSet."Mark"> = 'F' then
begin
MyDataSetMarks.Color:=clRed;
MyDataSetMarks.Font.Color:=clWhite;
end;
if <MyDataSet."Mark"> = '' then MyDataSetMarks.Color:=clNone;
end;
end;
Kim