Eclipse BIRT Report Object Model (ROM)

ReportElement Element

# Element Overview

Abstract element for user-visible elements.

### Details

Display Name: | Report Element
Since: | 1.0
XML Element: | `None`
Extends: | DesignElement
Extendable: | No
Abstract: | Yes
Name Space: | None
Name Requirement: | Not Supported
Allows User Properties: | Yes
Has Style: | No

### Property Summary

comments
  Information about this element for people who work on the design.
displayName
  Provides a user-friendly name for the element.
displayNameID
  Message ID property for the display name.
eventHandlerClass
  The full qulified name of the event handler class.
extends
  Allows an element to extend another element of the same type.
name
  Internal element name used to reference the element within the report design and in scripts.
newHandlerOnEachEvent
viewAction

### Inherited Properties

customXml, propertyMasks, userProperties

### Description

The abstract report element represents anything that can be named and customized. Most of the major components in ROM derive from the Report Element. These are the elements visible in the GUI: data sets, styles, master pages, report items and so on.

### See Also

ReportItem element

# Property Detail

## comments Property

Information about this element for people who work on the design.

### Details

Type: | string
Since: | 1.0
Required: | No
Display Name: | Comments
JavaScript Type: |
Default Value: | None
Inherited: | Yes
Runtime Settable: | No
Property Sheet Visibility: | Visible
Property Sheet Group: | Top

### Description

The comments provide information about this element for people who work on the design. This text can contain embedded HTML formatting tags; but cannot be localized.

## displayName Property

Provides a user-friendly name for the element.

### Details

Type: | string
Since: | reserved
Required: | No
Display Name: | Display name
JavaScript Type: |
Default Value: | None
Inherited: | Yes
Runtime Settable: | No
Property Sheet Visibility: | Visible
Property Sheet Group: | Top

### Description

The name to show for this element in the UI. Display names are most often used for components put into libraries, or that will be used for the future web reporting tool. The name can be externalized.

The display name is most often provided for reusable components, especially those to be used by casual users within the web report designer.

### See Also

Report Element`name` property

## displayNameID Property

Message ID property for the display name.

### Details

Type: | resourceKey
Since: | reserved
Required: | No
Display Name: | Display name key
JavaScript Type: |
Default Value: | None
Inherited: | Yes
Runtime Settable: | Yes
Property Sheet Visibility: | Visible
Property Sheet Group: | Top

### Description

The display name of the element can be externalized, the ID property will link to an external message key where the user put his message files.

## eventHandlerClass Property

The full qulified name of the event handler class.

### Details

Type: | string
Since: | 2.0
Required: | No
Display Name: | Event handler class
JavaScript Type: |
Default Value: | None
Inherited: | Yes
Runtime Settable: | Yes
Property Sheet Visibility: | Visible
Property Sheet Group: | Top

### Description

Full quilified name of the event handler class, used to specify an external Java class which define the scripting behavior that will be executed at runtime.

## extends Property

Allows an element to extend another element of the same type.

### Details

Type: | extends
Since: | reserved
Required: | No
Display Name: | Extends
JavaScript Type: |
Default Value: | None
Inherited: | No
Runtime Settable: | No
Property Sheet Visibility: | Hidden
Property Sheet Group: | Top

### Description

Most elements can inherit properties, styles and behavior from another element of the same type. For example, a label can inherit from another label. This property identifies the "parent" element by name. The parent must exist. If it does not, the ERD will display an error and the report won’t run.

ROM uses prototype-based inheritance, much like JavaScript. Suppose derived element D extends parent element P. The effective value of the property of element D is found by first looking for the property value in the definition of element D. If the property is not set in element D, then BIRT repeats the search in element P. P may in turn extend yet another element, and the search repeats for P’s parent. The search terminates if when there are no more parent elements to search. In this case, the property takes its default value as defined in this specification.

Style properties use an additional level of search as defined in the style specification.

Some properties do not inherit. These include the Extends property itself, and the Name property. The specification for each property identifies whether or not it inherits.

In Release 1.0, the model and schema supports the extends property, but the GUI does not.

#### XML Summary

<elementName extends="value"…>

## name Property

Internal element name used to reference the element within the report design and in scripts.

### Details

Type: | name
Since: | 1.0
Required: | No
Display Name: | Name
JavaScript Type: |
Default Value: | None
Inherited: | No
Runtime Settable: | No
Property Sheet Visibility: | Visible
Property Sheet Group: | Top

### Description

ROM report elements can have a name. The name is required for some elements, but is optional for most others. Items that require a name are those that exist to be referenced elsewhere: parameters, data sources, data sets, styles, and so on. Other elements are generally not referenced. The developer provides a name only if the s/he finds it convenient to do so. Names also make it easier to work with components in custom scripts. If the name is omitted, the component is anonymous but can still be found in code by traversing the design hierarchy. See the description of the derived concrete elements for details.

This property provides the name for the element used internally in designer and in user scripts. The name cannot be localized. As noted above, the name is optional for most elements. If the name is provided, it must be unique with its name space (as defined for each element.) Names can contain any character from any language, including spaces, punctuation and so on. ROM names are case-sensitive.

#### XML Summary

<elementName name="value" …>

### See Also

`ReportElementDefn.displayName` property

## newHandlerOnEachEvent Property

### Details

Type: | boolean
Since: | 2.5
Required: | No
Display Name: | New handler on each event
JavaScript Type: |
Default Value: | false
Inherited: | Yes
Runtime Settable: | Yes
Property Sheet Visibility: | Visible
Property Sheet Group: | Top

## viewAction Property

### Details

Type: | choice (viewAction)
Since: | 2.1
Required: | No
Display Name: | View action
JavaScript Type: |
Default Value: | NoChange
Inherited: | No
Runtime Settable: | No
Property Sheet Visibility: | Hidden
Property Sheet Group: | Top

### Choices

Name | Display Name | Value | Description
NoChange | No Change | NoChange |
Changed | Changed | Changed |
Added | Added | Added |
Deleted | Deleted | Deleted |