Siebel Reports Administration Guide > Composite Datastreams >

Datastream Concepts


A datastream component represents the data from one business component. Datastreams and report sections have a one-to-one relationship, and multiple datastreams are common in report designs. These relationships drive many of the techniques that are used in more complex reports.

Each datastream uses a data row component to store variable values and return formatted data in the report instance. In Siebel/Actuate, the data row component represents the list of fields in the report object definition. Each field in the report object definition maps to one variable defined in the data row. A data row object is created for each row of data in the report object definition.

The data row component is a class that is instantiated to create data row objects at run time. The datastream contains the code to extract data; the data row holds the values. Since data rows are almost wholly defined by their variable attributes, you should modify the report object definition and its children and avoid writing code to the data row component.

A data row object, however, is visible to the report section and can be intercepted after it is created and before it populates controls. You can create a local subclass of the datastream and data row components, and override the Fetch method in the datastream (to process the entire record) or the OnRead method in the data row (to process a single field).

Though a datastream component uses only one data row component in its local space (report section), the creation of a global data row can make fields from multiple data rows available to the entire report design. This technique is described in Using Composite Datastreams in Reports.

In Actuate, a datastream is a collection of components that deliver data to the report. Because Siebel data access is done through OLE and the OMU (the Reports Server interface), queries are always executed outside the Actuate environment.

The role of the datastream is to create an interface through OLE or the OMU and deliver the formatted data row to the report design. Siebel Tools defines the variables required to execute the queries, their values being determined by the requirements of the report design. The datastream variables, with their types and functions, are described in Table 3.

Table 3.  Siebel Datastream Class Variables
Variable
Type
Function
ssAppServer
Integer
Pointer to the object created in the ssReport::Build Report () method of the datastream. It identifies the active Siebel application server or model.
ssBO
Integer
Pointer to the object created in the Start method. It identifies the active business component.
ssBusCompName
Integer
Pointers to the master and child business components used to obtain data from the view in the Siebel application.

The overridden datastream methods are covered in Method Reference.


 Siebel Reports Administration Guide, Version 7.5, Rev B 
 Published: 18 April 2003