Meny
Index
Adding external objects to the table
External objects (such as lines, shapes, pictures) can be placed in the cross-tab. You may need to show, for example, some data in a graphical form. Let's look at an example that uses shapes to display a rudimentary progress bar:
 
 
A dark red bar is displayed if the cell value is less than 100, yellow if less than 3000 or  green if more that 3000.
 
Let's start with our report. Place a "DB Cross-tab" object on the report page and set its properties like this:
 
 
Turn off the “Auto-Size” property and set the column widths as shown below:
 
 
Now add the shape object to our table by selecting the “Rectangle” object on the object toolbar and placing it inside the cell:
 
 
Change its height and width to 0.2cm and set its top and left properties. Add two more similar rectangles.
 
Now create a script that will show the correct number of colored shapes (depending on the cell value). To do this select the cell and create an “OnBeforePrint” event handler:
 
 
 
Write the following code in the event handler (pay attention to the shape names, so that they match your objects):
 
procedure DBCross1Cell0OnBeforePrint(Sender: TfrxComponent);
begin
// 'Value' is the current cell's value
if Value < 100 then
begin
  // first shape object
   DBCross1Object1.Color := clMaroon; // dark red
  // second shape object
   DBCross1Object2.Color := clWhite;
  // third shape object
   DBCross1Object3.Color := clWhite;
end
else if Value < 3000 then
begin
   DBCross1Object1.Color := $00CCFF; // yellow
   DBCross1Object2.Color := $00CCFF;
   DBCross1Object3.Color := clWhite;
end
else
begin
   DBCross1Object1.Color := $00CC98; // green
   DBCross1Object2.Color := $00CC98;
   DBCross1Object3.Color := $00CC98;
end;
end;
 
That's all - preview the report, which will be similar to that shown at the top of this section.
 
 
Onlinehjälpen skapades med Dr.Explain