Siebel Reports Administration Guide > Reports Development Environment > About the Siebel Reports Development Environment >
Changing the Relationship Between an Object and the Object's Class
The class assigned to an object in Actuate determines its behavior. When a new object is created, or moved from one location to another, you need to be careful not to alter the relationship between an object and its current class, except when you are explicitly told to do so. The following three concepts are related to changing the relationship between an object and its class:
- Subclassing. Subclassing an object results in the creation of its own class. This class is based on and linked to the class of the original object. Updates to the original object are inherited by your new object, except for updates to the parts you have changed in the subclass. This technique is commonly used in Siebel reports so that your reports inherit new behavior as Siebel products are upgraded.
- Referencing. Referencing means referring to an existing component rather than creating a new component. You use a reference when an existing component meets your needs and you want to use it exactly as it is, no matter how it might change in the future.
- Copying. You can copy a component from one part of a report design to another. After you copy a component, it has no relationship to the component from which it was copied.
See the information on concepts in Developing Advanced e.Reports in the Actuate e.Report Designer Professional documentation for a review of Actuate concepts.
Subclassing an Object
The technique described in this topic is called subclassing an object. You must subclass each object you introduce into a report if you plan to modify the object. Otherwise, the system does not accept your changes.
For more information, see Creating a New Report Compared With Subclassing a Design.
To subclass an object
- In Actuate e.Report Designer Professional, in the Report Structure window, right-click the object you want to subclass.
- Choose Slot Information.
The Single Structure Reference dialog box appears.
- Click Subclass, and then click Close.
In the Report Structure window, you can see that a suffix of 1 is added to the object you subclassed. For example, ssRpt becomes ssRpt1.
Note that the References window in the Single Structure Reference dialog box lists objects defined for the container component. If the object you want to subclass resides within a container that contains multiple objects, you must click the object you want to subclass in the References window, and then click Subclass.
Renaming an Object
It is good design practice to employ meaningful naming conventions for components in your reports.
For example, assume you have added an ssReport library component to a report design, and the new component will contain text about an opportunity. A useful label to use in this case is ssReportOpportunity, as described in the following list:
- The ssReport prefix indicates a report section based on the ssReport library component.
- The Opportunity suffix indicates the master report section in which opportunity records appear.
When renaming an object, it is recommended you derive the prefix from the name of the object's parent library component. For example, when renaming an object whose parent library component is ssTxt, use txt as a prefix for the renamed object, such as txtOpportunity.
To rename an object
- In Actuate e.Report Designer Professional, in the Report Structure window, right-click the component you want to rename.
- Choose Rename.
- In the Rename dialog box, change the text in the New name window.
- Click OK.
Rename may be greyed out when you right-click a component in the Report Structure window. In this case, consider taking the following actions:
- Right-click the corresponding frame for the object in the Layout window, choose Rename, and then enter the new name.
- Specify the object's identifying properties in the Properties window before you attempt to rename the object, such as the ValueExp property.
Including a Library
The Libraries window in Actuate e.Report Designer Professional displays a view of the Included Libraries tree. This view illustrates the hierarchical structure of libraries and library components included in the report design. The Libraries window appears in the lower left corner of the workspace.
To define libraries included in a report design
- In Actuate e.Report Designer Professional, choose View, and then the Libraries menu item.
The Libraries window opens and displays the libraries included for the report design.
- From the application-level menu, choose Tools, and then the Library Organizer menu item.
The Library Organizer dialog box appears.
- If either erd_sample_library or sample_sfdata_library are listed in the Libraries included in your report window, remove them now.
erd_sample_library and sample_sfdata_library are default Actuate libraries that must not be used when defining a report used with Siebel Business Applications. To remove a library, click the library in the top window, and then click the down arrow.
- Click More.
- Click Browse, and then navigate to $\Siebel\RPTSRC\LIB or an equivalent directory.
If the library you want to include does not appear, examine other directories in your system that contain .rol files, such as $\Siebel\RPTSRC\ENU\LIB, or $\Siebel\RPTSRC\STANDARD. For more information, see Siebel Reports Directory Structure.
- Choose the library you want to include, such as sssiebel.rol, click Open, and then click OK.
The library is added to the list in the Libraries included in your report window.
- Repeat Step 4 through Step 6 for any other libraries you want to include.
- Click OK to close the Library Organizer.
The Libraries window refreshes to reflect modifications you made in the Library Organizer.
TIP: When a library is added, an expanded view of the new library appears in the Libraries window. To simplify navigation in the Libraries window, collapse all libraries except the library in which you are currently working.
For more information about libraries used when designing a report, see Actuate Libraries.