Eclipse BIRT Report Object Model (ROM)

Level Element

# Element Overview

Base element for level elements within a hierarchy.

### Details

Display Name: | Level
Since: | 2.2
XML Element: | `None`
Extends: | ReportElement
Extendable: | No
Abstract: | Yes
Name Space: | Styles
Name Requirement: | Required
Allows User Properties: | Yes
Has Style: | No

### Property Summary

dataType
  Level data type property.
dateTimeFormat
  Date time format applied on this level element.
dateTimeLevelType
  Date time type.
defaultValue
  Default value expression applied on this level.
interval
  When creating intervals, this property allows grouping on a range of contiguous values.
intervalBase
  In conjunction with Interval and IntervalRange, determines how data is divided into groups.
intervalRange
  Number of contiguous groups to merge to create a single group.
levelType
  Type of the level.
staticValues
  Series of rules applied on this level.

### Inherited Properties

comments, customXml, displayName, displayNameID, eventHandlerClass, extends, name, newHandlerOnEachEvent, propertyMasks, userProperties, viewAction

### Description

The Level is an abstract element that defines the basic properties of a OLAP level element. It has two derived classes, one is tabular level and another is ODA level.

Level is the real element which defined the column expression from the dataset. You can set sort, filter, TOC on the level. The column expression defined on the level could be dynamic reference to a dataset, also it could be static that user defined on the level by a value list.

# Property Detail

## dataType Property

Level data type property.

### Details

Type: | choice (columnDataType)
Since: | 2.2
Required: | No
Display Name: | Data type
JavaScript Type: |
Default Value: | None
Inherited: | Yes
Runtime Settable: | No
Property Sheet Visibility: | Visible
Property Sheet Group: | Top

### Choices

Name | Display Name | Value | Description
integer | Integer | integer |
string | String | string |
date-time | Date Time | date-time |
decimal | Decimal | decimal |
float | Float | float |
boolean | Boolean | boolean |
date | Date | date |
time | Time | time |
blob | Blob | blob |
javaObject | Java Object | javaObject |

### Description

This property gives out the data type of the level resulting data.

## dateTimeFormat Property

Date time format applied on this level element.

### Details

Type: | string
Since: | 2.2
Required: | No
Display Name: | Date time format
JavaScript Type: |
Default Value: | None
Inherited: | Yes
Runtime Settable: | No
Property Sheet Visibility: | Visible
Property Sheet Group: | Top

### Description

This property defines how to format the value if the data type of the level is date time.It contains the format pattern, category and locale. If the the data type of the level is date time and you don't set this property, the output is the general string calling toString method in Object.

## dateTimeLevelType Property

Date time type.

### Details

Type: | choice (dateTimeLevelType)
Since: | 2.2
Required: | No
Display Name: | Date time level type
JavaScript Type: |
Default Value: | None
Inherited: | Yes
Runtime Settable: | No
Property Sheet Visibility: | Visible
Property Sheet Group: | Top

### Choices

Name | Display Name | Value | Description
year | Year | year |
quarter | Quarter | quarter |
month | Month | month |
week-of-month | Week Of Month | week-of-month |
week-of-year | Week Of Year | week-of-year |
day-of-week | Day Of Week | day-of-week |
day-of-month | Day Of Month | day-of-month |
day-of-year | Day Of Year | day-of-year |
hour | Hour | hour |
minute | Minute | minute |
second | Second | second |

### Description

This property specifies the detail type if the level is date time. This is used to speed up the performance.

## defaultValue Property

Default value expression applied on this level.

### Details

Type: | expression
Context: |
Expression Type: | None
Since: | 2.3
Required: | No
Display Name: | Default value
JavaScript Type: |
Default Value: | None
Inherited: | Yes
Runtime Settable: | Yes
Property Sheet Visibility: | Visible
Property Sheet Group: | Top

### Description

This property defines.

## interval Property

When creating intervals, this property allows grouping on a range of contiguous values.

### Details

Type: | choice (intervalType)
Since: | 2.2
Required: | No
Display Name: | Interval
JavaScript Type: |
Default Value: | none
Inherited: | Yes
Runtime Settable: | No
Property Sheet Visibility: | Visible
Property Sheet Group: | Interval

### Choices

Name | Display Name | Value | Description
none | No Interval | none | Group on individual values.
prefix | Prefix | prefix | Group on a string prefix
interval | Interval | interval | Group on a numeric interval.

### Description

This property allows the level element to include a range of contiguous values. For example, a monthly sales report may want to summarize a list of individual transactions, each of which has a transaction date. Using the Month interval, BIRT will cause a break to occur each time the transaction dates move into a different calendar month.

Use this property with the `intervalRange` property to select a set of contiguous values. For example, a bi-monthly report would use the Month `interval` with an `intervalRange` of 2.

### See Also

`intervalRange` Property

## intervalBase Property

In conjunction with Interval and IntervalRange, determines how data is divided into groups.

### Details

Type: | string
Since: | 2.2
Required: | No
Display Name: | Interval base
JavaScript Type: |
Default Value: | None
Inherited: | Yes
Runtime Settable: | No
Property Sheet Visibility: | Visible
Property Sheet Group: | Interval

### Description

In conjunction with Interval and IntervalRange, determines how data is divided into groups.

## intervalRange Property

Number of contiguous groups to merge to create a single group.

### Details

Type: | float
Since: | 2.2
Required: | No
Display Name: | Interval range
JavaScript Type: |
Default Value: | None
Inherited: | Yes
Runtime Settable: | No
Property Sheet Visibility: | Visible
Property Sheet Group: | Interval

### Description

When creating intervals, this attribute allows grouping on a range of contiguous values. For example, to show data over the span of three hours, set the grouping interval to hours and the range to 3. The user enters the interval range here.

The following shows the meaning of the range for each interval type.

Interval | Meaning of Range
None | Ignored
Prefix | The number of characters in the prefix.
Date/Time | The number of the units.
Interval | The numeric interval

## levelType Property

Type of the level.

### Details

Type: | choice (levelType)
Since: | 2.2
Required: | No
Display Name: | Level type
JavaScript Type: |
Default Value: | None
Inherited: | Yes
Runtime Settable: | No
Property Sheet Visibility: | Visible
Property Sheet Group: | Top

### Choices

Name | Display Name | Value | Description
dynamic | Dynamic | dynamic | get the query result from data base directly
mirrored | Mirrored | mirrored | get the query result from the data base and then do some mirror handling

### Description

This property indicates whether this level is dynamic or mirrored. If the level is dynamic, you can define a list of level attribute on it to do filter operation on the query result from data base. If the level is mirrored, you can define a list of rules as static values to do mirroring and set an BIRT expression as the default value, which is used as default during mirroring.

## staticValues Property

Series of rules applied on this level.

### Details

Type: | List of Rule Structures
Since: | 2.2
Required: | No
Display Name: | Static values
JavaScript Type: |
Default Value: | None
Inherited: | Yes
Runtime Settable: | No
Property Sheet Visibility: | Hidden
Property Sheet Group: | Top

### Description

This property defines a list of rules. If the level type is mirrored, you can add a list of rule structures as the static values to do mirroring.