Package org.eclipse.birt.report.engine.api.script.element

# Interface IGroup

All Superinterfaces:
  `IDesignElement`

All Known Subinterfaces:
  `IListGroup`, `ITableGroup`

public interface IGroup extends IDesignElement
Script wrapper of GroupHandle

## Method Summary

Modifier and Type
Method
Description
`boolean`
`getHideDetail()`
Returns hide detail.
`String`
`getInterval()`
Returns the interval of this group.
`String`
`getIntervalBase()`
Return the interval base property value of this group.
`double`
`getIntervalRange()`
Returns the interval range of this group.
`String`
`getKeyExpr()`
Gets the expression that defines the group.
`String`
`getName()`
Gets the name of the group.
`String`
`getPageBreakAfter()`
Returns the value for break after property.
`String`
`getPageBreakBefore()`
Returns the value for break before property.
`String`
`getPageBreakInside()`
Gets the value for break inside property.
`String`
`getSortDirection()`
Returns the sort direction of this group.
`String`
`getSortType()`
Return the sort type.
`String`
`getTocExpression()`
Returns the expression evalueated as a table of contents entry for this item.
`boolean`
`hasFooter()`
Checks whether the group footer slot is empty.
`boolean`
`hasHeader()`
Checks whether the group header slot is empty.
`void`
`setHideDetail(boolean hideDetail)`
Sets hide detail
`void`
`setInterval(String interval)`
Returns the interval of this group.
`void`
`setIntervalBase(String intervalBase)`
Sets the base of the interval property of this group.IntervalBase, in conjunction with Interval and IntervalRange, determines how data is divided into groups.
`void`
`setIntervalRange(double intervalRange)`
Returns the interval range of this group.
`void`
`setKeyExpr(String expr)`
Sets the group expression.
`void`
`setName(String name)`
Sets the group name.
`void`
`setPageBreakAfter(String value)`
Sets the value for break after property.
`void`
`setPageBreakBefore(String value)`
Sets the value for break before property.
`void`
`setPageBreakInside(String value)`
Sets the value for the page-break-inside.
`void`
`setSortDirection(String direction)`
Sets the sort direction of this group.
`void`
`setSortType(String sortType)`
Sets the sort type, which indicates the way of sorting
`void`
`setTocExpression(String expression)`
Sets a table of contents entry for this item.

### Methods inherited from interface org.eclipse.birt.report.engine.api.script.element.IDesignElement

`getNamedExpression, getParent, getQualifiedName, getReport, getStyle, getUserProperty, getUserPropertyExpression, setNamedExpression, setUserProperty, setUserProperty`

## Method Details

### getKeyExpr

String getKeyExpr()
Gets the expression that defines the group. This is normally simply a reference to a data set column.

Returns:
  the expression as a string
See Also:
  - `setKeyExpr(String)`

### setKeyExpr

void setKeyExpr(String expr) throws ScriptException
Sets the group expression.

Parameters:
  `expr` - the expression to set
Throws:
  `ScriptException` - If the expression is invalid.
See Also:
  - `getKeyExpr()`

### getName

String getName()
Gets the name of the group.

Returns:
  the name of the group

### setName

void setName(String name) throws ScriptException
Sets the group name.

Parameters:
  `name` - the group name to set
Throws:
  `ScriptException` - if the name is duplicate or the property is locked.

### getIntervalBase

String getIntervalBase()
Return the interval base property value of this group.

Returns:
  interval baseF property value of this group.

### setIntervalBase

void setIntervalBase(String intervalBase) throws ScriptException
Sets the base of the interval property of this group.IntervalBase, in conjunction with Interval and IntervalRange, determines how data is divided into groups.

Parameters:
  `intervalBase` - interval base property value.
Throws:
  `ScriptException` - if the property is locked.

### getInterval

String getInterval()
Returns the interval of this group. The return value is defined in `DesignChoiceConstants` and can be one of:

- `INTERVAL_NONE`
- `INTERVAL_PREFIX`
- `INTERVAL_YEAR`
- `INTERVAL_QUARTER`
- `INTERVAL_MONTH`
- `INTERVAL_WEEK`
- `INTERVAL_DAY`
- `INTERVAL_HOUR`
- `INTERVAL_MINUTE`
- `INTERVAL_SECOND`
- `INTERVAL_INTERVAL`

Returns:
  the interval value as a string

### setInterval

void setInterval(String interval) throws ScriptException
Returns the interval of this group. The input value is defined in `DesignChoiceConstants` and can be one of:

- `INTERVAL_NONE`
- `INTERVAL_PREFIX`
- `INTERVAL_YEAR`
- `INTERVAL_QUARTER`
- `INTERVAL_MONTH`
- `INTERVAL_WEEK`
- `INTERVAL_DAY`
- `INTERVAL_HOUR`
- `INTERVAL_MINUTE`
- `INTERVAL_SECOND`
- `INTERVAL_INTERVAL`

Parameters:
  `interval` - the interval value as a string
Throws:
  `ScriptException` - if the property is locked or the input value is not one of the above.

### getIntervalRange

double getIntervalRange()
Returns the interval range of this group.

Returns:
  the interval range value as a double

### setIntervalRange

void setIntervalRange(double intervalRange) throws ScriptException
Returns the interval range of this group.

Parameters:
  `intervalRange` - the interval range value as a double
Throws:
  `ScriptException` - if the property is locked.

### getSortDirection

String getSortDirection()
Returns the sort direction of this group. The return value is defined in `DesignChoiceConstants` and can be one of:

- `SORT_DIRECTION_ASC`
- `SORT_DIRECTION_DESC`

Returns:
  the sort direction of this group

### setSortDirection

void setSortDirection(String direction) throws ScriptException
Sets the sort direction of this group. The return value is defined in `DesignChoiceConstants` and can be one of:

- `SORT_DIRECTION_ASC`
- `SORT_DIRECTION_DESC`

Parameters:
  `direction` - the sort direction of this group
Throws:
  `ScriptException` - if the property is locked or the input value is not one of the above.

### hasHeader

boolean hasHeader()
Checks whether the group header slot is empty.

Returns:
  true is the header slot is not empty, otherwise, return false.

### hasFooter

boolean hasFooter()
Checks whether the group footer slot is empty.

Returns:
  true is the footer slot is not empty, otherwise, return false.

### getTocExpression

String getTocExpression()
Returns the expression evalueated as a table of contents entry for this item.

Returns:
  the expression evaluated as a table of contents entry for this item
See Also:
  - `setTocExpression(String)`

### setTocExpression

void setTocExpression(String expression) throws ScriptException
Sets a table of contents entry for this item. The TOC property defines an expression that returns a string that is to appear in the Table of Contents for this item or its container.

Parameters:
  `expression` - the expression that returns a string
Throws:
  `ScriptException` - if the TOC property is locked by the property mask.
See Also:
  - `getTocExpression()`

### getSortType

String getSortType()
Return the sort type.

Returns:
  the sort type.

### setSortType

void setSortType(String sortType) throws ScriptException
Sets the sort type, which indicates the way of sorting

Parameters:
  `sortType` - sort type.
Throws:
  `ScriptException` - if the property is locked.

### getHideDetail

boolean getHideDetail()
Returns hide detail.

Returns:
  hide detail.

### setHideDetail

void setHideDetail(boolean hideDetail) throws ScriptException
Sets hide detail

Parameters:
  `hideDetail` - hide detail
Throws:
  `ScriptException` - if the property is locked.

### getPageBreakBefore

String getPageBreakBefore()
Returns the value for break before property. The return value is defined in `DesignChoiceConstants` and can be one of:

- `PAGE_BREAK_BEFORE_AUTO`
- `PAGE_BREAK_BEFORE_ALWAYS`
- `PAGE_BREAK_BEFORE_AVOID`
- `PAGE_BREAK_BEFORE_ALWAYS_EXCLUDING_FIRST`

Returns:
  the value in string

### setPageBreakBefore

void setPageBreakBefore(String value) throws ScriptException
Sets the value for break before property. The input value is defined in `DesignChoiceConstants` and can be one of:

- `PAGE_BREAK_BEFORE_AUTO`
- `PAGE_BREAK_BEFORE_ALWAYS`
- `PAGE_BREAK_BEFORE_AVOID`
- `PAGE_BREAK_BEFORE_ALWAYS_EXCLUDING_FIRST`

Parameters:
  `value` - the page break before value
Throws:
  `ScriptException` - if the value is not one of above choices.

### getPageBreakAfter

String getPageBreakAfter()
Returns the value for break after property. The return value is defined in `DesignChoiceConstants` and can be one of:

- `PAGE_BREAK_AFTER_AUTO`
- `PAGE_BREAK_AFTER_ALWAYS`
- `PAGE_BREAK_AFTER_AVOID`
- `PAGE_BREAK_AFTER_ALWAYS_EXCLUDING_LAST`

Returns:
  the value in string

### setPageBreakAfter

void setPageBreakAfter(String value) throws ScriptException
Sets the value for break after property. The return value is defined in `DesignChoiceConstants` and can be one of:

- `PAGE_BREAK_AFTER_AUTO`
- `PAGE_BREAK_AFTER_ALWAYS`
- `PAGE_BREAK_AFTER_AVOID`
- `PAGE_BREAK_AFTER_ALWAYS_EXCLUDING_LAST`

Parameters:
  `value` - the value to set
Throws:
  `ScriptException` - if the value is not one of above choices.

### getPageBreakInside

String getPageBreakInside()
Gets the value for break inside property. The return value is defined in `DesignChoiceConstants` and can be one of:

- `PAGE_BREAK_INSIDE_AVOID`
- `PAGE_BREAK_INSIDE_AUTO`

Returns:
  the value in string

### setPageBreakInside

void setPageBreakInside(String value) throws ScriptException
Sets the value for the page-break-inside. The return value is defined in `DesignChoiceConstants` and can be one of:

- `PAGE_BREAK_INSIDE_AVOID`
- `PAGE_BREAK_INSIDE_AUTO`

Parameters:
  `value` - the value to set
Throws:
  `ScriptException`