## Built-in functions for bursting

Two built-in functions are added in formulas for controlling bursting report result.

- Boolean isRunBursting()
  Returns true if the report is running based on bursting schema, else returns false.
- String currentBurstingSchema()
  Returns the names of the currently applied bursting schemas. When isRunBursting() returns false, the returned value for currentBurstingSchema() is NULL.

Note: Formulas referring isRunBursting() or currentBurstingSchema() are not allowed to be used in queries or datasets.

The following is an example of using the two functions.

Suppose that a report is first grouped by VP, and next by Manager as follows:

Group by VP,

Group by Manager,

detail

To distribute relative results to all VPs and managers, you can define two schemas as follows and apply them together in a task:

Bursting Schema | Bursting Key | Recipient
--- | --- | ---
VP | VP | VPs
Manager | VP, Manager | Managers

Then write a formula:

`if ( isRunBursting() && currentBurstingSchema() != "VP" )`

`return true`

`else`

`return false;`

Next use the formula to control the Suppress property of the group headers and group footers in the VP group panel.

Then all results to the managers will hide the VP level.