Siebel Reports Administration Guide > Upgrade Instructions for Siebel 7.5.3 > Migrating Pre-Siebel 6 Custom Reports to the Siebel Reports Server >

About sssiebel.bas Library Functions


Communication between Siebel and Actuate software is enabled in Siebel 6.0 and later by library functions in an Actuate Basic file, sssiebel.bas. The sssiebel.bas file has been loaded into the sssiebel.rol library in Siebel 6.0 and later, and does not need to be explicitly included in each design file. The sssiebel.bas functions provide the report with a system-independent interface to communicate with the Siebel Application Server. While sssiebel.bas functions were used in a limited set of roles in pre-Siebel 6.0 reporting, the role of this library file has expanded to include object interface functions.

The object interface functions in sssiebel.bas are designed to be the sole interface to the Siebel Application Server from all reports, whether standard or custom. In standard reports, the appropriate changes have already been made, and these upgraded files are installed when you upgrade the Siebel application. Your custom reports will, in most cases, run successfully on the Reports Server following regeneration of the data supply library file from Siebel Tools and recompilation of the report design in Actuate e.Report Designer Professional.

If a custom report works successfully in client reporting mode and does not work in server reporting mode, you will need to locate and replace any Microsoft Windows-specific and object interface function calls with calls to sssiebel.bas object interface functions.

Changing Object Variables to Integer Variables

The sssiebel.bas functions abstract the Siebel Application Server in terms of four basic objects: model, business object, business component, and property set. These objects can be accessed only using the sssiebel.bas functions. The report uses references of type Integer to these objects.

NOTE:  Model refers to the handle to the top-level object exposed by the interface. In the case of OLE/COM, this is SiebelApplicationServer. The PropertySet object is described in the Siebel Object Interfaces Reference.

All variables of type Object should be changed to type Integer. Functions in sssiebel.bas take these integer references as arguments, using the references to access objects and perform operations on them.

The integer value is a handle to an automation or C++object. Variables such as ssAppServer, ssBO, theBC, and AppServer change from object variables to integer variables. For example,

Set theBC = ssManaged_Person_Forecast

.

.

ssManaged_Person_Forecast.InvokeMethod(...)

changes to

theBC = ssManaged_Person_Forecast

.

.

ssBusCompInvokeMethod (ssManaged_Person_Forecast, ...)

Since all these variables have been converted to type Integer, they can no longer be used as objects with their own methods. Instead, special methods in sssiebel.bas are used to manipulate the objects, such as ssBusCompInvokeMethod in the example. These substitute methods are described in About Method Name Prefixing.

Notice also that since the variables are integers, comparison expressions can no longer use "is Nothing" and need to be changed to "= 0".


 Siebel Reports Administration Guide 
 Published: 18 July 2003