| User Roles | Admin | Staff contributor | ✗ External Contributor | ✗ Pulse user |
Reports in Silverfin are built from columns representing periods and rows representing data - including formula calculations. This article is a reference guide for every formula type available in report rows, relevant for Admins and Staff Contributors who build or maintain report templates.
Table of contents
Most Used Formulas
Value
Definition: any numerical value can be output
Formula: the numerical value in plain text
Examples: 34.43, -500 or any number
Group value
Definition: the numerical value of a group. It is referenced by it's group Tag.
Formula: use the group tag in plain text
Example: root_group (assuming you have a group with a tag root_group)
Accumulated sum of some account values
Definition: The sum of some account values starting with the same prefix
Formula: # + account prefix(es)
Examples:
- #1 will accumulate the sum of the values of all accounts starting with 1
- #10 will accumulate the sum of the values of all accounts starting with 10
Accumulated sum of the values of a range of accounts
Definition: The sum of some account values starting with a range of prefixes.
Formula: # + account prefix(es) range start + __ + account prefix(es) range end
Examples:
- #1__4 will accumulate the sum of the values of all accounts starting with 1, 2, 3 or 4
- #1234__1238 will accumulate the sum of the values of all accounts starting with 1234, 1235, 1236, 1237 or 1238
Note: A range cannot span more than 200 prefixes. For example, #1__1000 is not permitted.
Less Common Formulas
MAX()
Definition: Maximum value of a list
Formula: MAX(value_1, value_2, value_3) will return the highest of value_1, value_2 or value_3
Example:
MAX(1,2,3,0) => 3
MAX(#1__2, #3, 0, root_group)
MIN()
Definition: Minimum value of a list
Formula: MIN(value_1, value_2, value_3) will return the lowest of value_1, value_2 or value_3
Example:
MIN(1,2,-3,4) => -3
MIN(#1__2, #3, 0, root_group)
ABS()
Definition: Absolute value
Formula: ABS(value)
Examples:
ABS(0) => 0
ABS(34.43) => 34.43
ABS(-23) => 23
:opening modifier
Definition: Will fetch the period opening value for the account, or range of account
Formula: account OR account range + :opening
Examples:
- #1:opening
- #1__4:opening
Access reconciliations result
Definition: Access one reconciliation named result
Formula: reconciliations.$HANDLE.results.$NAMED_RESULT_KEY
Example: reconciliations.2018_disallowed_expenses.results.disallowed_expenses_total
Amount of days since start of year
Definition: As it says, an integer number of number of days since start of year
Formula: period.amount_of_days_since_start_of_year
Example: -1*period.amount_of_days_since_start_of_year
Arithmetic operations
You can combine any of the formulas above using standard arithmetic operators.
| Operation | Symbol | Example |
|---|---|---|
| Addition | + | 10 + #1__9 + root_group |
| Subtraction | - | 10 - #1__9 - root_group |
| Multiplication | * | 10 * #1__9 * root_group |
| Division | / | 10 / #1__9 / root_group |
| Power (exponent) | ** | 10 ** 2 |
| Parentheses | ( ) | 10 ** (#1__9 - (root_group * 3)) |
Parentheses follow standard mathematical rules and can be nested to control the order of calculation.
Admin