On this page you will find the specifications regarding the Model: General Ledger and Fact Table: GL ANALYSIS MEASURES.
Represents all measures related to GL ANALYSIS.
Attribute | Description (where applicable) |
Aggregation of measures is based on SUM if not explicitly noted.
This section describes the basic measures in the cube. These are either measures defined in the core Information Source, in the model itself or in the ETL process. The columns have the following meaning:
Measure | Calculated Y/N | Contains Time Intelligence Y/N | Definition/Note (where applicable) | Aggregation Type | Hidden Y/N | Measure Expression |
ACT OB | Y | N | Actual OB | SUM | N | IF(ISBLANK([ACT YTD]) , BLANK() ,([ACT YTD] - [ACT])) // ACT YTD - ACT = Opening balance in Accounting Currency, use Reporting calendar. |
ACTOBPeriodZero | Y | Y | ActualOBPeriodZero | SUM | N | //Calulcates the incoming balance related to [ACT], acc period 0, as defined in the underlying data source // The idea is to calculate the same value for all periods VAR UntilDate = MAX('REPORTING PERIOD'[Period Until Date]) VAR LastDatePY = MAX('REPORTING PERIOD'[Max Reporting Date PY]) VAR DiffInDays = DATEDIFF(LastDatePY, UntilDate, DAY) RETURN CALCULATE ( // go back to last data in previous reporting year + 1 [ACT OB], DATEADD('REPORTING PERIOD'[ID],-DiffInDays+1, DAY) ) |
BUD OB | Y | N | BUD OB | SUM | N | IF(ISBLANK([BUD YTD]) , BLANK() ,([BUD YTD] - [BUD])) // BUD YTD - BUD = Opening balance |
BUDOBPeriodZero | Y | Y | BudgetOBPeriodZero | SUM | N | //Calulcates the incoming balance related to [BUD], acc period 0, as defined in the underlying data source // The idea is to calculate the same value for all periods VAR UntilDate = MAX('REPORTING PERIOD'[Period Until Date]) VAR LastDatePY = MAX('REPORTING PERIOD'[Max Reporting Date PY]) VAR DiffInDays = DATEDIFF(LastDatePY, UntilDate, DAY) RETURN CALCULATE ( // go back to last data in previous reporting year + 1 [BUD OB], DATEADD('REPORTING PERIOD'[ID],-DiffInDays+1, DAY) ) |
CFC OB | Y | N | CFC OB | SUM | N | IF(ISBLANK([CFC YTD]) , BLANK() ,([CFC YTD] - [CFC])) // CFC YTD - CFC = Opening balance |
CFCOBPeriodZero | Y | Y | Current ForecastOBPeriodZero | SUM | N | //Calulcates the incoming balance related to [CFC], acc period 0, as defined in the underlying data source // The idea is to calculate the same value for all periods VAR UntilDate = MAX('REPORTING PERIOD'[Period Until Date]) VAR LastDatePY = MAX('REPORTING PERIOD'[Max Reporting Date PY]) VAR DiffInDays = DATEDIFF(LastDatePY, UntilDate, DAY) RETURN CALCULATE ( // go back to last data in previous reporting year + 1 [CFC OB], DATEADD('REPORTING PERIOD'[ID],-DiffInDays+1, DAY) ) |
NFC OB | Y | N | NFC OB | SUM | N | IF(ISBLANK([NFC YTD]) , BLANK() ,([NFC YTD] - [NFC])) // NFC YTD - NFC = Opening balance |
NFCOBPeriodZero | Y | Y | Next ForecastOBPeriodZero | SUM | N | //Calulcates the incoming balance related to [NFC], acc period 0, as defined in the underlying data source // The idea is to calculate the same value for all periods VAR UntilDate = MAX('REPORTING PERIOD'[Period Until Date]) VAR LastDatePY = MAX('REPORTING PERIOD'[Max Reporting Date PY]) VAR DiffInDays = DATEDIFF(LastDatePY, UntilDate, DAY) RETURN CALCULATE ( // go back to last data in previous reporting year + 1 [NFC OB], DATEADD('REPORTING PERIOD'[ID],-DiffInDays+1, DAY) ) |
ACT Credit | Y | N | Actual Credit | SUM | N | SUM('GL ANALYSIS'[ACT_PERIOD_CREDIT_DOM]) // ACTUAL CREDIT in Accounting Currency, use Reporting calendar. |
ACT Debit | Y | N | Actual Debit | SUM | N | SUM('GL ANALYSIS'[ACT_PERIOD_DEBET_DOM]) // ACTUAL DEBIT in Accounting Currency, use Reporting calendar. |
BUD | Y | N | BUD | SUM | N | SUM('GL ANALYSIS'[BUD_PERIOD_DOM]) // BUDGET in Accounting Currency, use Reporting calendar. |
CFC | Y | N | CFC | SUM | N | SUM('GL ANALYSIS'[CFC_PERIOD_DOM]) // CURRENT FORECAST in Accounting Currency, use Reporting calendar. |
NFC | Y | N | NFC | SUM | N | SUM('GL ANALYSIS'[NFC_PERIOD_DOM]) // NEXT FORECAST in Accounting Currency, use Reporting calendar. |
Switch Actual | Y | N | Selects a version of actual measure | N | [Selected DisplayUnit Switch] * SWITCH([Selected Actual Measure], "ACT", [ACT], "ACT YTD", [ACT YTD], "ACT R12", [ACT R12], "ACT Trans", [ACT Trans], "ACT YTD Trans", [ACT YTD Trans], "ACT R12 Trans", [ACT R12 Trans], "ACT XR1 (Period Based)", [ACT XR1 (Period Based)], "ACT YTD XR1 (Period Based)", [ACT YTD XR1 (Period Based)], "ACT R12 XR1 (Period Based)", [ACT R12 XR1 (Period Based)], "ACT XR2 (Period Based)", [ACT XR2 (Period Based)], "ACT YTD XR2 (Period Based)", [ACT YTD XR2 (Period Based)], "ACT R12 XR2 (Period Based)", [ACT R12 XR2 (Period Based)], "ACT XR1 (YTD Based)", [ACT XR1 (YTD Based)], "ACT YTD XR1 (YTD Based)", [ACT YTD XR1 (YTD Based)], "ACT R12 XR1 (YTD Based)", [ACT R12 XR1 (YTD Based)], "ACT XR2 (YTD Based)", [ACT XR2 (YTD Based)], "ACT YTD XR2 (YTD Based)", [ACT YTD XR2 (YTD Based)], "ACT R12 XR2 (YTD Based)", [ACT R12 XR2 (YTD Based)] ) // Complete list of measures to switch between, the list includes all available ACTUAL measures. // NOTE: This measures can have performance issue. Then instead use the other 'Switch Actual ...'-measures with shorter list of switches, like eg 'Switch XR1 (Period Based)' and so on. Best performance is obtained by using a slicer on column 'Actual Measure Name' in table 'MEASURE LIST ACTUAL'. A slicer in which you then choose between the different measure names instead of using slicers on SWITCH CURRENCY TYPE etc. // Mandatory to filter a single value from tables SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Actual (For Drill Through) | Y | N | Copy of Switch Actual for when not always want to allow for drill through functionality in Power BI report | N | [Switch Actual] // Same as Switch Actual (For Drill Through) 2, but to be able to have different target reports for the drill through. For example use one for Income statement and the second for Balance sheet reports. | |
Switch Comp (ActPY) | Y | N | Selects a version of actual previous year measure | N | [Selected DisplayUnit Switch] * SWITCH([Selected ActPY Measure], "ACT PY", [ACT PY], "ACT PY Trans", [ACT PY Trans], "ACT PY XR1 (Period Based)", [ACT PY XR1 (Period Based)], "ACT PY XR2 (Period Based)", [ACT PY XR2 (Period Based)], "ACT PY XR1 (YTD Based)", [ACT PY XR1 (YTD Based)], "ACT PY XR2 (YTD Based)", [ACT PY XR2 (YTD Based)], "ACT PY YTD", [ACT PY YTD], "ACT PY YTD Trans", [ACT PY YTD Trans], "ACT PY YTD XR1 (Period Based)", [ACT PY YTD XR1 (Period Based)], "ACT PY YTD XR2 (Period Based)", [ACT PY YTD XR2 (Period Based)], "ACT PY YTD XR1 (YTD Based)", [ACT PY YTD XR1 (YTD Based)], "ACT PY YTD XR2 (YTD Based)", [ACT PY YTD XR2 (YTD Based)], "ACT PY R12", [ACT PY R12], "ACT PY R12 Trans", [ACT PY R12 Trans], "ACT PY R12 XR1 (Period Based)", [ACT PY R12 XR1 (Period Based)], "ACT PY R12 XR2 (Period Based)", [ACT PY R12 XR2 (Period Based)], "ACT PY R12 XR1 (YTD Based)", [ACT PY R12 XR1 (YTD Based)], "ACT PY R12 XR2 (YTD Based)", [ACT PY R12 XR2 (YTD Based)] ) // To be used when to switch between all the different ACT PY measures as the benchmark for comparison. // Mandatory to filter a single value from tables SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Comp (Bud) | Y | N | Selects a version of budget measure | N | [Selected DisplayUnit Switch] * SWITCH([Selected Bud Measure], "BUD", [BUD], "BUD Trans", [BUD Trans], "BUD XR1 (Period Based)", [BUD XR1 (Period Based)], "BUD XR2 (Period Based)", [BUD XR2 (Period Based)], "BUD XR1 (YTD Based)", [BUD XR1 (YTD Based)], "BUD XR2 (YTD Based)", [BUD XR2 (YTD Based)], "BUD YTD", [BUD YTD], "BUD YTD Trans", [BUD YTD Trans], "BUD YTD XR1 (Period Based)", [BUD YTD XR1 (Period Based)], "BUD YTD XR2 (Period Based)", [BUD YTD XR2 (Period Based)], "BUD YTD XR1 (YTD Based)", [BUD YTD XR1 (YTD Based)], "BUD YTD XR2 (YTD Based)", [BUD YTD XR2 (YTD Based)], "BUD R12", [BUD R12], "BUD R12 Trans", [BUD R12 Trans], "BUD R12 XR1 (Period Based)", [BUD R12 XR1 (Period Based)], "BUD R12 XR2 (Period Based)", [BUD R12 XR2 (Period Based)], "BUD R12 XR1 (YTD Based)", [BUD R12 XR1 (YTD Based)], "BUD R12 XR2 (YTD Based)", [BUD R12 XR2 (YTD Based)] ) // To be used when to switch between all the different BUDGET measures as the benchmark for comparison. // Mandatory to filter a single value from tables SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Comp (CFC) | Y | N | Selects a version of current forecast measure | N | [Selected DisplayUnit Switch] * SWITCH([Selected CFC Measure], "CFC", [CFC], "CFC Trans", [CFC Trans], "CFC XR1 (Period Based)", [CFC XR1 (Period Based)], "CFC XR2 (Period Based)", [CFC XR2 (Period Based)], "CFC XR1 (YTD Based)", [CFC XR1 (YTD Based)], "CFC XR2 (YTD Based)", [CFC XR2 (YTD Based)], "CFC YTD", [CFC YTD], "CFC YTD Trans", [CFC YTD Trans], "CFC YTD XR1 (Period Based)", [CFC YTD XR1 (Period Based)], "CFC YTD XR2 (Period Based)", [CFC YTD XR2 (Period Based)], "CFC YTD XR1 (YTD Based)", [CFC YTD XR1 (YTD Based)], "CFC YTD XR2 (YTD Based)", [CFC YTD XR2 (YTD Based)], "CFC R12", [CFC R12], "CFC R12 Trans", [CFC R12 Trans], "CFC R12 XR1 (Period Based)", [CFC R12 XR1 (Period Based)], "CFC R12 XR2 (Period Based)", [CFC R12 XR2 (Period Based)], "CFC R12 XR1 (YTD Based)", [CFC R12 XR1 (YTD Based)], "CFC R12 XR2 (YTD Based)", [CFC R12 XR2 (YTD Based)] ) // To be used when to switch between all the different CURRENT FORECAST measures as the benchmark for comparison. // Mandatory to filter a single value from tables SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Comp (NFC) | Y | N | Selects a version of next forecast measure | N | [Selected DisplayUnit Switch] * SWITCH([Selected NFC Measure], "NFC", [NFC], "NFC Trans", [NFC Trans], "NFC XR1 (Period Based)", [NFC XR1 (Period Based)], "NFC XR2 (Period Based)", [NFC XR2 (Period Based)], "NFC XR1 (YTD Based)", [NFC XR1 (YTD Based)], "NFC XR2 (YTD Based)", [NFC XR2 (YTD Based)], "NFC YTD", [NFC YTD], "NFC YTD Trans", [NFC YTD Trans], "NFC YTD XR1 (Period Based)", [NFC YTD XR1 (Period Based)], "NFC YTD XR2 (Period Based)", [NFC YTD XR2 (Period Based)], "NFC YTD XR1 (YTD Based)", [NFC YTD XR1 (YTD Based)], "NFC YTD XR2 (YTD Based)", [NFC YTD XR2 (YTD Based)], "NFC R12", [NFC R12], "NFC R12 Trans", [NFC R12 Trans], "NFC R12 XR1 (Period Based)", [NFC R12 XR1 (Period Based)], "NFC R12 XR2 (Period Based)", [NFC R12 XR2 (Period Based)], "NFC R12 XR1 (YTD Based)", [NFC R12 XR1 (YTD Based)], "NFC R12 XR2 (YTD Based)", [NFC R12 XR2 (YTD Based)] ) // To be used when to switch between all the different NEXT FORECAST measures as the benchmark for comparison. // Mandatory to filter a single value from tables SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Comparison | Y | N | Selects a version among all comparison measures | N | [Selected DisplayUnit Switch] * SWITCH([Selected Comparison Measure], "ACT PY", [ACT PY], "BUD", [BUD], "CFC", [CFC], "NFC", [NFC], "ACT PY Trans", [ACT PY Trans], "BUD Trans", [BUD Trans], "CFC Trans", [CFC Trans], "NFC Trans", [NFC Trans], "ACT PY XR1 (Period Based)", [ACT PY XR1 (Period Based)], "BUD XR1 (Period Based)", [BUD XR1 (Period Based)], "CFC XR1 (Period Based)", [CFC XR1 (Period Based)], "NFC XR1 (Period Based)", [NFC XR1 (Period Based)], "ACT PY XR2 (Period Based)", [ACT PY XR2 (Period Based)], "BUD XR2 (Period Based)", [BUD XR2 (Period Based)], "CFC XR2 (Period Based)", [CFC XR2 (Period Based)], "NFC XR2 (Period Based)", [NFC XR2 (Period Based)], "ACT PY XR1 (YTD Based)", [ACT PY XR1 (YTD Based)], "BUD XR1 (YTD Based)", [BUD XR1 (YTD Based)], "CFC XR1 (YTD Based)", [CFC XR1 (YTD Based)], "NFC XR1 (YTD Based)", [NFC XR1 (YTD Based)], "ACT PY XR2 (YTD Based)", [ACT PY XR2 (YTD Based)], "BUD XR2 (YTD Based)", [BUD XR2 (YTD Based)], "CFC XR2 (YTD Based)", [CFC XR2 (YTD Based)], "NFC XR2 (YTD Based)", [NFC XR2 (YTD Based)], "ACT PY YTD", [ACT PY YTD], "BUD YTD", [BUD YTD], "CFC YTD", [CFC YTD], "NFC YTD", [NFC YTD], "ACT PY YTD Trans", [ACT PY YTD Trans], "BUD YTD Trans", [BUD YTD Trans], "CFC YTD Trans", [CFC YTD Trans], "NFC YTD Trans", [NFC YTD Trans], "ACT PY YTD XR1 (Period Based)", [ACT PY YTD XR1 (Period Based)], "BUD YTD XR1 (Period Based)", [BUD YTD XR1 (Period Based)], "CFC YTD XR1 (Period Based)", [CFC YTD XR1 (Period Based)], "NFC YTD XR1 (Period Based)", [NFC YTD XR1 (Period Based)], "ACT PY YTD XR2 (Period Based)", [ACT PY YTD XR2 (Period Based)], "BUD YTD XR2 (Period Based)", [BUD YTD XR2 (Period Based)], "CFC YTD XR2 (Period Based)", [CFC YTD XR2 (Period Based)], "NFC YTD XR2 (Period Based)", [NFC YTD XR2 (Period Based)], "ACT PY YTD XR1 (YTD Based)", [ACT PY YTD XR1 (YTD Based)], "BUD YTD XR1 (YTD Based)", [BUD YTD XR1 (YTD Based)], "CFC YTD XR1 (YTD Based)", [CFC YTD XR1 (YTD Based)], "NFC YTD XR1 (YTD Based)", [NFC YTD XR1 (YTD Based)], "ACT PY YTD XR2 (YTD Based)", [ACT PY YTD XR2 (YTD Based)], "BUD YTD XR2 (YTD Based)", [BUD YTD XR2 (YTD Based)], "CFC YTD XR2 (YTD Based)", [CFC YTD XR2 (YTD Based)], "NFC YTD XR2 (YTD Based)", [NFC YTD XR2 (YTD Based)], "ACT PY R12", [ACT PY R12], "BUD R12", [BUD R12], "CFC R12", [CFC R12], "NFC R12", [NFC R12], "ACT PY R12 Trans", [ACT PY R12 Trans], "BUD R12 Trans", [BUD R12 Trans], "CFC R12 Trans", [CFC R12 Trans], "NFC R12 Trans", [NFC R12 Trans], "ACT PY R12 XR1 (Period Based)", [ACT PY R12 XR1 (Period Based)], "BUD R12 XR1 (Period Based)", [BUD R12 XR1 (Period Based)], "CFC R12 XR1 (Period Based)", [CFC R12 XR1 (Period Based)], "NFC R12 XR1 (Period Based)", [NFC R12 XR1 (Period Based)], "ACT PY R12 XR2 (Period Based)", [ACT PY R12 XR2 (Period Based)], "BUD R12 XR2 (Period Based)", [BUD R12 XR2 (Period Based)], "CFC R12 XR2 (Period Based)", [CFC R12 XR2 (Period Based)], "NFC R12 XR2 (Period Based)", [NFC R12 XR2 (Period Based)], "ACT PY R12 XR1 (YTD Based)", [ACT PY R12 XR1 (YTD Based)], "BUD R12 XR1 (YTD Based)", [BUD R12 XR1 (YTD Based)], "CFC R12 XR1 (YTD Based)", [CFC R12 XR1 (YTD Based)], "NFC R12 XR1 (YTD Based)", [NFC R12 XR1 (YTD Based)], "ACT PY R12 XR2 (YTD Based)", [ACT PY R12 XR2 (YTD Based)], "BUD R12 XR2 (YTD Based)", [BUD R12 XR2 (YTD Based)], "CFC R12 XR2 (YTD Based)", [CFC R12 XR2 (YTD Based)], "NFC R12 XR2 (YTD Based)", [NFC R12 XR2 (YTD Based)] ) // Complete list of comparison measures to switch between, the list includes all available COMPARISON measures. // NOTE: This measures can have performance issue. Then instead use the other 'Switch Comp ...'-measures with shorter list of switches, like eg Switch Comp (ActPY) and so on. Best performance is obtained by using a slicer on column 'Comparison Measure Name' in table 'MEASURE LIST COMPARISON'. A slicer in which you then choose between the different measure names instead of using slicers on SWITCH CURRENCY TYPE etc. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE, SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff | Y | N | Calculates the difference between selected Actual and Comparison measure | N | [Switch Actual] - [Switch Comparison] // Calculates the difference between the SWITCH ACTUAL and the SWITCH COMPARISON measures. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE, SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (%) | Y | N | Calculates the (%) difference between selected Actual and Comparison measure | N | DIVIDE([Switch Diff],ABS([Switch Comparison]), Blank()) // Calculates the % difference between the SWITCH ACTUAL and the SWITCH COMPARISON measures. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE, SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (ActPY%) | Y | N | Calculates the (%) difference between selected Actual and Act PY measure | N | DIVIDE([Switch Diff (ActPY)],ABS([Switch Comp (ActPY)]), Blank()) // Calculates the % difference between the SWITCH ACTUAL and the SWITCH COMP (ActPY). // Mandatory to filter a single value from tables SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (ActPY) | Y | N | Calculates the difference between selected Actual and Act PY measure | N | [Switch Actual] - [Switch Comp (ActPY)] // Calculates the difference between the SWITCH ACTUAL and the SWITCH COMP (ActPY). // Mandatory to filter a single value from tables SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (Bud%) | Y | N | Calculates the (%) difference between selected Actual and Budget measure | N | DIVIDE([Switch Diff (Bud)],ABS([Switch Comp (Bud)]), Blank()) // Calculates the % difference between the SWITCH ACTUAL and the SWITCH COMP (Bud). // Mandatory to filter a single value from tables SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (Bud) | Y | N | Calculates the difference between selected Actual and Budget measure | N | [Switch Actual] - [Switch Comp (Bud)] // Calculates the difference between the SWITCH ACTUAL and the SWITCH COMP (Bud). // Mandatory to filter a single value from tables SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff XR (Period Based) | Y | N | Calculates the difference between selected XR1 (Period Based) and XR2 (Period Based) measure | N | [Switch Actual (XR1 Period Based)] - [Switch Actual (XR2 Period Based)] // Calculates the difference between the SWITCH ACTUAL (XR1 Period Based) and the SWITCH COMP (XR2 Period Based). // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff XR (Period Based) (%) | Y | N | Calculates the (%) difference between selected XR1 (Period Based) and XR2 (Period Based) measure | N | DIVIDE([Switch Diff XR (Period Based)],ABS([Switch Actual (XR2 Period Based)]), Blank()) // Calculates the % difference between the SWITCH ACTUAL (XR1 Period Based) and the SWITCH COMP (XR2 Period Based). // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Actual (XR1 Period Based) | Y | N | Selects one of the Actual measure in XR1 (Period Based) Currency | N | [Selected DisplayUnit Switch] * SWITCH([Selected Actual XR1 (Period Based) Measure], "ACT XR1 (Period Based)", [ACT XR1 (Period Based)], "ACT YTD XR1 (Period Based)", [ACT YTD XR1 (Period Based)], "ACT R12 XR1 (Period Based)", [ACT R12 XR1 (Period Based)] ) // List of measures to switch between, the list includes ACTUAL measures on XR1 (Period Based) currency. // Mandatory to filter a single value from table SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Actual (XR2 Period Based) | Y | N | Selects one of the Actual measure in XR2 (Period Based) Currency | N | [Selected DisplayUnit Switch] * SWITCH([Selected Actual XR2 (Period Based) Measure], "ACT XR2 (Period Based)", [ACT XR2 (Period Based)], "ACT YTD XR2 (Period Based)", [ACT YTD XR2 (Period Based)], "ACT R12 XR2 (Period Based)", [ACT R12 XR2 (Period Based)] ) // List of measures to switch between, the list includes ACTUAL measures on XR2 (Period Based) currency. // Mandatory to filter a single value from table SWITCH TIME PERSPECTIVE for this measure to function. | |
ACT OB Trans | Y | N | Actual OB Trans | SUM | N | IF(ISBLANK([ACT YTD Trans]) , BLANK() ,([ACT YTD Trans] - [ACT Trans])) // ACT YTD Trans - ACT Trans = Opening balance in Transaction Currency, use Reporting calendar. |
BUD OB Trans | Y | N | Budget OB Trans | SUM | N | IF(ISBLANK([BUD YTD Trans]) , BLANK() ,([BUD YTD Trans] - [BUD Trans])) // BUD YTD Trans - BUD Trans = Opening balance in Transaction Currency, use Reporting calendar. |
CFC OB Trans | Y | N | Current Forecast OB Trans | SUM | N | IF(ISBLANK([CFC YTD Trans]) , BLANK() ,([CFC YTD Trans] - [CFC Trans])) // CFC YTD Trans - CFC Trans = Opening balance in Transaction Currency, use Reporting calendar. |
NFC OB Trans | Y | N | Next Forecast OB Trans | SUM | N | IF(ISBLANK([NFC YTD Trans]) , BLANK() ,([NFC YTD Trans] - [NFC Trans])) // NFC YTD Trans - NFC Trans = Opening balance in Transaction Currency, use Reporting calendar. |
ACT PY Trans | Y | Y | Actual PY Trans | SUM | N | CALCULATE([ACT Trans], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACTUAL PREVIOUS YEAR in Transaction Currency, use Reporting calendar. |
BUD PY Trans | Y | Y | Budget PY Trans | SUM | N | CALCULATE([BUD Trans], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUDGET PREVIOUS YEAR in Transaction Currency, use Reporting calendar. |
ACT PY R12 Trans | Y | Y | Actual PY R12 Trans | SUM | N | CALCULATE([ACT R12 Trans], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY R12 Trans: This measure displays the last available value if presented for multiple periods, eg by quarter then the value in quarter 1 will be the value from March. |
BUD PY R12 Trans | Y | Y | Budget PY R12 Trans | SUM | N | CALCULATE([BUD R12 Trans], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY R12 Trans: This measure displays the last available value if presented for multiple periods, eg by quarter then the value in quarter 1 will be the value from March. |
ACT PY YTD Trans | Y | Y | Actual PY YTD Trans | SUM | N | CALCULATE([ACT YTD Trans], DATEADD('REPORTING PERIOD'[ID],-12,month)) // Previous year ACTUAL YTD value in Transaction Currency, use Reporting calendar. |
BUD PY YTD Trans | Y | Y | Budget PY YTD Trans | SUM | N | CALCULATE([BUD YTD Trans], DATEADD('REPORTING PERIOD'[ID],-12,month)) // Previous year BUDGET YTD value in Transaction Currency, use Reporting calendar. |
ACT R12 Trans | Y | Y | Actual R12 Trans | SUM | N | VAR First_Period = CALCULATE(MAX('REPORTING PERIOD'[Reporting Year Period]), DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) VAR Last_Period = MAX ( 'REPORTING PERIOD'[Reporting Year Period] ) RETURN CALCULATE ( [ACT Trans], FILTER ( ALL ( 'REPORTING PERIOD' ), 'REPORTING PERIOD'[Reporting Year Period] >= First_Period && 'REPORTING PERIOD'[Reporting Year Period] <= Last_Period ) ) // ACT R12 Trans: This measure displays the last available value if presented for multiple periods, eg by quarter then the value in quater 1 will be the value from March. |
BUD R12 Trans | Y | Y | Budget R12 Trans | SUM | N | VAR First_Period = CALCULATE(MAX('REPORTING PERIOD'[Reporting Year Period]), DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) VAR Last_Period = MAX ( 'REPORTING PERIOD'[Reporting Year Period] ) RETURN CALCULATE ( [BUD Trans], FILTER ( ALL ( 'REPORTING PERIOD' ), 'REPORTING PERIOD'[Reporting Year Period] >= First_Period && 'REPORTING PERIOD'[Reporting Year Period] <= Last_Period ) ) // BUD R12 Trans: This measure displays the last available value if presented for multiple periods, eg by quarter then the value in quater 1 will be the value from March. |
CFC R12 Trans | Y | Y | Current Forecast R12 Trans | SUM | N | VAR First_Period = CALCULATE(MAX('REPORTING PERIOD'[Reporting Year Period]), DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) VAR Last_Period = MAX ( 'REPORTING PERIOD'[Reporting Year Period] ) RETURN CALCULATE ( [CFC Trans], FILTER ( ALL ( 'REPORTING PERIOD' ), 'REPORTING PERIOD'[Reporting Year Period] >= First_Period && 'REPORTING PERIOD'[Reporting Year Period] <= Last_Period ) ) // CFC R12 Trans: This measure displays the last available value if presented for multiple periods, eg by quarter then the value in quater 1 will be the value from March. |
NFC R12 Trans | Y | Y | Next Forecast R12 Trans | SUM | N | VAR First_Period = CALCULATE(MAX('REPORTING PERIOD'[Reporting Year Period]), DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) VAR Last_Period = MAX ( 'REPORTING PERIOD'[Reporting Year Period] ) RETURN CALCULATE ( [NFC Trans], FILTER ( ALL ( 'REPORTING PERIOD' ), 'REPORTING PERIOD'[Reporting Year Period] >= First_Period && 'REPORTING PERIOD'[Reporting Year Period] <= Last_Period ) ) // NFC R12 Trans: This measure displays the last available value if presented for multiple periods, eg by quarter then the value in quater 1 will be the value from March. |
ACT Credit YTD Trans | Y | Y | Actual Credit YTD Trans | SUM | N | CALCULATE([ACT Credit Trans], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('GL ANALYSIS'[ACT_OB_PERIOD_CREDIT_CURR]), DATESYTD('REPORTING PERIOD'[ID])) // ACTUAL CREDIT YTD in Transaction Currency, use Reporting calendar. |
ACT Debit YTD Trans | Y | Y | Actual Debit YTD Trans | SUM | N | CALCULATE([ACT Debit Trans], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('GL ANALYSIS'[ACT_OB_PERIOD_DEBET_CURR]), DATESYTD('REPORTING PERIOD'[ID])) // ACTUAL DEBIT YTD in Transaction Currency, use Reporting calendar. |
ACT YTD Trans | Y | Y | Actual YTD Trans | SUM | N | CALCULATE([ACT Trans], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('GL ANALYSIS'[ACT_OB_PERIOD_CURR]), DATESYTD('REPORTING PERIOD'[ID])) // ACTUAL YTD in Transaction Currency, use Reporting calendar. |
BUD YTD Trans | Y | Y | Budget YTD Trans | SUM | N | CALCULATE([BUD Trans], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('GL ANALYSIS'[BUD_OB_PERIOD_CURR]), DATESYTD('REPORTING PERIOD'[ID])) // BUDGET YTD in Transaction Currency, use Reporting calendar. |
CFC YTD Trans | Y | Y | Current Forecast YTD Trans | SUM | N | CALCULATE([CFC Trans], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('GL ANALYSIS'[CFC_OB_PERIOD_CURR]), DATESYTD('REPORTING PERIOD'[ID])) // CFC YTD in Transaction Currency, use Reporting calendar. |
NFC YTD Trans | Y | Y | Next Forecast YTD Trans | SUM | N | CALCULATE([NFC Trans], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('GL ANALYSIS'[NFC_OB_PERIOD_CURR]), DATESYTD('REPORTING PERIOD'[ID])) // NFC YTD in Transaction Currency, use Reporting calendar. |
ACT Credit Trans | Y | N | Actual Credit Trans | SUM | N | SUM('GL ANALYSIS'[ACT_PERIOD_CREDIT_CURR]) // ACTUAL CREDIT in Transaction Currency, use Reporting calendar. |
ACT Debit Trans | Y | N | Actual Debit Trans | SUM | N | SUM('GL ANALYSIS'[ACT_PERIOD_DEBET_CURR]) // ACTUAL DEBIT in Transaction Currency, use Reporting calendar. |
ACT Trans | Y | N | Actual Trans | SUM | N | SUM('GL ANALYSIS'[ACT_PERIOD_CURR]) // ACTUAL in Transaction Currency, use Reporting calendar. |
BUD Trans | Y | N | BUD Trans | SUM | N | SUM('GL ANALYSIS'[BUD_PERIOD_CURR]) // BUDGET in Transaction Currency, use Reporting calendar. |
CFC Trans | Y | N | CFC Trans | SUM | N | SUM('GL ANALYSIS'[CFC_PERIOD_CURR]) // CURRENT FORECAST in Transaction Currency, use Reporting calendar. |
NFC Trans | Y | N | NFC Trans | SUM | N | SUM('GL ANALYSIS'[NFC_PERIOD_CURR]) // NEXT FORECAST in Transaction Currency, use Reporting calendar. |
ACT OB XR1 (Period Based) | Y | N | Actual OB XR1 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [ACT OB]*[Conversion rate XR1])) // ACT OB X-rate (Period Based): [ACT OB] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. |
ACTOBPeriodZeroXR1 | Y | Y | ActualOBPeriodZeroXR1 | SUM | N | IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'GL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'GL ANALYSIS'[ACT_OB_PERIOD_DOM] ) ), "@XRATE", CALCULATE ( SELECTEDVALUE ( 'X-RATES 1'[PREV_YEAR_LAST_PERIOD_RATE]) ) ) VAR XAmount = SUMX ( RestatedAmount, [@GLAmount] * [@XRATE] ) RETURN XAmount ) // ACTOBPeriodZeroXR1: Calculates the OB X-rate value buy sum all OB-values and multiply with the last rate from previous year. // NOTE: If OB values exists on other periods than the start of the year, then they also is multiplied with the last rate from previous year (not previous period). |
BUD OB XR1 (Period Based) | Y | N | Budget OB XR1 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [BUD OB]*[Conversion rate XR1])) // BUD OB X-rate (Period Based): [BUD OB] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. |
BUDOBPeriodZeroXR1 | Y | Y | BudgetOBPeriodZeroXR1 | SUM | N | IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'GL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'GL ANALYSIS'[BUD_OB_PERIOD_DOM] ) ), "@XRATE", CALCULATE ( SELECTEDVALUE ( 'X-RATES 1'[PREV_YEAR_LAST_PERIOD_RATE]) ) ) VAR XAmount = SUMX ( RestatedAmount, [@GLAmount] * [@XRATE] ) RETURN XAmount ) // BUDOBPeriodZeroXR1: Calculates the OB X-rate value buy sum all OB-values and multiply with the last rate from previous year. // NOTE: If OB values exists on other periods than the start of the year, then they also is multiplied with the last rate from previous year (not previous period). |
CFC OB XR1 (Period Based) | Y | N | Current Forecast OB XR1 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [CFC OB]*[Conversion rate XR1])) // CFC OB X-rate (Period Based): [CFC OB] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. |
CFCOBPeriodZeroXR1 | Y | Y | Current ForecastOBPeriodZeroXR1 | SUM | N | IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'GL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'GL ANALYSIS'[CFC_OB_PERIOD_DOM] ) ), "@XRATE", CALCULATE ( SELECTEDVALUE ( 'X-RATES 1'[PREV_YEAR_LAST_PERIOD_RATE]) ) ) VAR XAmount = SUMX ( RestatedAmount, [@GLAmount] * [@XRATE] ) RETURN XAmount ) // CFCOBPeriodZeroXR1: Calculates the OB X-rate value buy sum all OB-values and multiply with the last rate from previous year. // NOTE: If OB values exists on other periods than the start of the year, then they also is multiplied with the last rate from previous year (not previous period). |
NFC OB XR1 (Period Based) | Y | N | Next Forecast OB XR1 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [NFC OB]*[Conversion rate XR1])) // NFC OB X-rate (Period Based): [NFC OB] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. |
NFCOBPeriodZeroXR1 | Y | Y | Next ForecastOBPeriodZeroXR1 | SUM | N | IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'GL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'GL ANALYSIS'[NFC_OB_PERIOD_DOM] ) ), "@XRATE", CALCULATE ( SELECTEDVALUE ( 'X-RATES 1'[PREV_YEAR_LAST_PERIOD_RATE]) ) ) VAR XAmount = SUMX ( RestatedAmount, [@GLAmount] * [@XRATE] ) RETURN XAmount ) // NFCOBPeriodZeroXR1: Calculates the OB X-rate value buy sum all OB-values and multiply with the last rate from previous year. // NOTE: If OB values exists on other periods than the start of the year, then they also is multiplied with the last rate from previous year (not previous period). |
ACT PY XR1 (Period Based) | Y | Y | Actual PY XR1 (Period Based) | SUM | N | CALCULATE([ACT XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY X-rate (Period Based): ACT X-rate from the same reporting period previous year. |
BUD PY XR1 (Period Based) | Y | Y | Budget PY XR1 (Period Based) | SUM | N | CALCULATE([BUD XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY X-rate (Period Based): BUD X-rate from the same reporting period previous year. |
ACT PY R12 XR1 (Period Based) | Y | Y | Actual PY R12 XR1 (Period Based) | SUM | N | CALCULATE([ACT R12 XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY R12 X-rate (Period Based): R12 X-rate from the same period previous year. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
BUD PY R12 XR1 (Period Based) | Y | Y | Budget PY R12 XR1 (Period Based) | SUM | N | CALCULATE([BUD R12 XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY R12 X-rate (Period Based): R12 X-rate from the same period previous year. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
ACT PY YTD XR1 (Period Based) | Actual PY YTD XR1 (Period Based) | N | CALCULATE ( [ACT YTD XR1 (Period Based)], DATEADD ( 'REPORTING PERIOD'[ID], -12, MONTH ) ) // ACT PY YTD X-rate (Period Based): ACT YTD Xrate from the same reporting period previous year. | |||
ACT R12 XR1 (Period Based) | Y | Y | Actual R12 XR1 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), [ACT XR1 (Period Based)] + CALCULATE([ACT XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([ACT XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([ACT XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([ACT XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([ACT XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([ACT XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([ACT XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([ACT XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([ACT XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([ACT XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([ACT XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // ACT R12 X-rate (Period Based): The sum of [ACT XR1 (Period Based)] for the current month and [ACT XR1 (Period Based)] values from each of the previous 11 months. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
BUD R12 XR1 (Period Based) | Y | Y | Budget R12 XR1 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), [BUD XR1 (Period Based)] + CALCULATE([BUD XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([BUD XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([BUD XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([BUD XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([BUD XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([BUD XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([BUD XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([BUD XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([BUD XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([BUD XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([BUD XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // BUD R12 X-rate (Period Based): The sum of [BUD XR1 (Period Based)] for the current month and [BUD XR1 (Period Based)] values from each of the previous 11 months. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
CFC R12 XR1 (Period Based) | Y | Y | Current Forecast R12 XR1 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), [CFC XR1 (Period Based)] + CALCULATE([CFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([CFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([CFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([CFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([CFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([CFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([CFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([CFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([CFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([CFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([CFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // CFC R12 X-rate (Period Based): The sum of [CFC XR1 (Period Based)] for the current month and [CFC XR1 (Period Based)] values from each of the previous 11 months. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
NFC R12 XR1 (Period Based) | Y | Y | Next Forecast R12 XR1 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), [NFC XR1 (Period Based)] + CALCULATE([NFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([NFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([NFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([NFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([NFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([NFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([NFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([NFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([NFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([NFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([NFC XR1 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // NFC R12 X-rate (Period Based): The sum of [NFC XR1 (Period Based)] for the current month and [NFC XR1 (Period Based)] values from each of the previous 11 months. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
ACT YTD XR1 (Period Based) | Y | Y | Actual YTD XR1 (Period Based) | SUM | N | CALCULATE ( [ACTOBPeriodZeroXR1], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [ACT XR1 (Period Based)], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // ACT YTD X-rate (Period Based): This YTD value includes the sum of both OB and ACT values. |
BUD YTD XR1 (Period Based) | Y | Y | Budget YTD XR1 (Period Based) | SUM | N | CALCULATE ( [BUDOBPeriodZeroXR1], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [BUD XR1 (Period Based)], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // BUD YTD X-rate (Period Based): This YTD value includes the sum of both OB and BUD values. |
CFC YTD XR1 (Period Based) | Y | Y | Current Forecast YTD XR1 (Period Based) | SUM | N | CALCULATE ( [CFCOBPeriodZeroXR1], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [CFC XR1 (Period Based)], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // CFC YTD X-rate (Period Based): This YTD value includes the sum of both OB and CFC values. |
NFC YTD XR1 (Period Based) | Y | Y | Next Forecast YTD XR1 (Period Based) | SUM | N | CALCULATE ( [NFCOBPeriodZeroXR1], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [NFC XR1 (Period Based)], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // NFC YTD X-rate (Period Based): This YTD value includes the sum of both OB and NFC values. |
ACT Credit XR1 (Period Based) | Y | N | Actual Credit XR1 (Period Based) | SUM | N | IF(HASONEVALUE('CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('GL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code]) ,"@GLAmount",CALCULATE([ACT Credit]) ,"@XRates" ,CALCULATE(SELECTEDVALUE('X-RATES 1'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount ) // ACTUAL CREDIT in X-rate 1 Currency, use Reporting calendar. |
ACT Debit XR1 (Period Based) | Y | N | Actual Debit XR1 (Period Based) | SUM | N | IF(HASONEVALUE('CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('GL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code]) ,"@GLAmount",CALCULATE([ACT Debit]) ,"@XRates" ,CALCULATE(SELECTEDVALUE('X-RATES 1'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount ) // ACTUAL DEBIT in X-rate 1 Currency, use Reporting calendar. |
ACT XR1 (Period Based) | Y | N | Actual XR1 (Period Based) | SUM | N | IF(HASONEVALUE('CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('GL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code]) ,"@GLAmount",CALCULATE([ACT]) ,"@XRates" ,CALCULATE(SELECTEDVALUE('X-RATES 1'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount ) // ACTUAL in X-rate 1 Currency, use Reporting calendar. |
BUD XR1 (Period Based) | Y | N | Budget XR1 (Period Based) | SUM | N | IF(HASONEVALUE('CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('GL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code]) ,"@GLAmount",CALCULATE([BUD]) ,"@XRates" ,CALCULATE(SELECTEDVALUE('X-RATES 1'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount ) // BUDGET in X-rate 1 Currency, use Reporting calendar. |
CFC XR1 (Period Based) | Y | N | Current Forecast XR1 (Period Based) | SUM | N | IF(HASONEVALUE('CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('GL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code]) ,"@GLAmount",CALCULATE([CFC]) ,"@XRates" ,CALCULATE(SELECTEDVALUE('X-RATES 1'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount ) // CFC in X-rate 1 Currency, use Reporting calendar. |
NFC XR1 (Period Based) | Y | N | Next Forecast XR1 (Period Based) | SUM | N | IF(HASONEVALUE('CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('GL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code]) ,"@GLAmount",CALCULATE([NFC]) ,"@XRates" ,CALCULATE(SELECTEDVALUE('X-RATES 1'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount ) // NFC in X-rate 1 Currency, use Reporting calendar. |
ACT OB XR1 (YTD Based) | Y | Y | Actual OB XR1 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([ACT OB XR1 (Period Based)]), CALCULATE([ACT YTD XR1 (YTD Based)], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // ACT OB X-rate (YTD Based): The YTD value from previous period, part from period 1 in which calculation is OB*rate. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
BUD OB XR1 (YTD Based) | Y | Y | Budget OB XR1 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([BUD OB XR1 (Period Based)]), CALCULATE([BUD YTD XR1 (YTD Based)], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // BUD OB X-rate (YTD Based): The YTD value from previous period, part from period 1 in which calculation is OB*rate. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
CFC OB XR1 (YTD Based) | Y | Y | Current Forecast OB XR1 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([CFC OB XR1 (Period Based)]), CALCULATE([CFC YTD XR1 (YTD Based)], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // CFC OB X-rate (YTD Based): The YTD value from previous period, part from period 1 in which calculation is OB*rate. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
NFC OB XR1 (YTD Based) | Y | Y | Next Forecast OB XR1 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([NFC OB XR1 (Period Based)]), CALCULATE([NFC YTD XR1 (YTD Based)], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // NFC OB X-rate (YTD Based): The YTD value from previous period, part from period 1 in which calculation is OB*rate. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
ACT PY XR1 (YTD Based) | Y | Y | Actual PY XR1 (YTD Based) | SUM | N | CALCULATE([ACT XR1 (YTD Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY X-rate (YTD Based): The value from the same period last year. |
BUD PY XR1 (YTD Based) | Y | Y | Budget PY XR1 (YTD Based) | SUM | N | CALCULATE([BUD XR1 (YTD Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY X-rate (YTD Based): The value from the same period last year. |
ACT PY R12 XR1 (YTD Based) | Y | Y | Actual PY R12 XR1 (YTD Based) | SUM | N | CALCULATE([ACT R12 XR1 (YTD Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY R12 X-rate (YTD Based): R12 from the same period previous year. |
BUD PY R12 XR1 (YTD Based) | Y | Y | Budget PY R12 XR1 (YTD Based) | SUM | N | CALCULATE([BUD R12 XR1 (YTD Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY R12 X-rate (YTD Based): R12 from the same period previous year. |
ACT PY YTD XR1 (YTD Based) | Y | Y | Actual PY YTD XR1 (YTD Based) | SUM | N | CALCULATE([ACT YTD XR1 (YTD Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY YTD X-rate (YTD Based): The YTD value for the same period last year. |
BUD PY YTD XR1 (YTD Based) | Y | Y | Budget PY YTD XR1 (YTD Based) | SUM | N | CALCULATE([BUD YTD XR1 (YTD Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY YTD X-rate (YTD Based): The YTD value for the same period last year. |
ACT R12 XR1 (YTD Based) | Y | Y | Actual R12 XR1 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), [ACT R12]*[Conversion rate XR1]) // ACT R12 X-rate (YTD Based): The R12-value multiplied with the rate at the that specific Reporting period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. |
BUD R12 XR1 (YTD Based) | Y | Y | Budget R12 XR1 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), [BUD R12]*[Conversion rate XR1]) // BUD R12 X-rate (YTD Based): The R12-value multiplied with the rate at the that specific Reporting period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. |
CFC R12 XR1 (YTD Based) | Y | Y | Current Forecast R12 XR1 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), [CFC R12]*[Conversion rate XR1]) // CFC R12 X-rate (YTD Based): The R12-value multiplied with the rate at the that specific Reporting period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. |
NFC R12 XR1 (YTD Based) | Y | Y | Next Forecast R12 XR1 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), [NFC R12]*[Conversion rate XR1]) // NFC R12 X-rate (YTD Based): The R12-value multiplied with the rate at the that specific Reporting period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. |
ACT YTD XR1 (YTD Based) | Y | Y | Actual YTD XR1 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[ACT YTD]*[Conversion rate XR1])) // ACT YTD X-rate (YTD Based): The YTD value multiplied with the current rate. // LASTNONBLANKVALUE to handle TOTALS at Quarter and Year level to be the value from the last period within the quarter or year. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. // If ever to update this code: Heads up on verifing the results on Quarter and Year level in the multi-company scenario. |
BUD YTD XR1 (YTD Based) | Y | Y | Budget YTD XR1 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[BUD YTD]*[Conversion rate XR1])) // BUD YTD X-rate (YTD Based): The YTD value multiplied with the current rate. // LASTNONBLANKVALUE to handle TOTALS at Quarter and Year level to be the value from the last period within the quarter or year. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. // If ever to update this code: Heads up on verifing the results on Quarter and Year level in the multi-company scenario. |
CFC YTD XR1 (YTD Based) | Y | Y | Current Forecast YTD XR1 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[CFC YTD]*[Conversion rate XR1])) // CFC YTD X-rate (YTD Based): The YTD value multiplied with the current rate. // LASTNONBLANKVALUE to handle TOTALS at Quarter and Year level to be the value from the last period within the quarter or year. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. // If ever to update this code: Heads up on verifing the results on Quarter and Year level in the multi-company scenario. |
NFC YTD XR1 (YTD Based) | Y | Y | Next Forecast YTD XR1 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[NFC YTD]*[Conversion rate XR1])) // NFC YTD X-rate (YTD Based): The YTD value multiplied with the current rate. // LASTNONBLANKVALUE to handle TOTALS at Quarter and Year level to be the value from the last period within the quarter or year. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. // If ever to update this code: Heads up on verifing the results on Quarter and Year level in the multi-company scenario. |
ACT XR1 (YTD Based) | Y | Y | Actual XR1 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([ACT]*[Conversion rate XR1]) ), SUMX (VALUES ( COMPANY[ID] ), ([ACT YTD]*[Conversion rate XR1]) - ([ACT OB]*[Conversion rate PP XR1])) ) ) // ACT X-rate (YTD Based): (ACT YTD X-rate) minus (OB * rate in previous period). Note that OB is the same as the YTD-value in the previous period. // In case no addition of ACT from previous period, this is just the effect of the same YTD value being multiplied with rate in previous period compared with the rate in this period. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. HasOnValuePeriod is to ensure Blank values. |
BUD XR1 (YTD Based) | Y | Y | Budget XR1 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([BUD]*[Conversion rate XR1]) ), SUMX (VALUES ( COMPANY[ID] ), ([BUD YTD]*[Conversion rate XR1]) - ([BUD OB]*[Conversion rate PP XR1])) ) ) // BUD X-rate (YTD Based): (BUD YTD X-rate) minus (OB * rate in previous period). Note that OB is the same as the YTD-value in the previous period. // In case no addition of BUD from previous period, this is just the effect of the same YTD value being multiplied with rate in previous period compared with the rate in this period. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. HasOnValuePeriod is to ensure Blank values. |
CFC XR1 (YTD Based) | Y | Y | Current Forecast XR1 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([CFC]*[Conversion rate XR1]) ), SUMX (VALUES ( COMPANY[ID] ), ([CFC YTD]*[Conversion rate XR1]) - ([CFC OB]*[Conversion rate PP XR1])) ) ) // CFC X-rate (YTD Based): (CFC YTD X-rate) minus (OB * rate in previous period). Note that OB is the same as the YTD-value in the previous period. // In case no addition of CFC from previous period, this is just the effect of the same YTD value being multiplied with rate in previous period compared with the rate in this period. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. HasOnValuePeriod is to ensure Blank values. |
NFC XR1 (YTD Based) | Y | Y | Next Forecast XR1 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([NFC]*[Conversion rate XR1]) ), SUMX (VALUES ( COMPANY[ID] ), ([NFC YTD]*[Conversion rate XR1]) - ([NFC OB]*[Conversion rate PP XR1])) ) ) // NFC X-rate (YTD Based): (NFC YTD X-rate) minus (OB * rate in previous period). Note that OB is the same as the YTD-value in the previous period. // In case no addition of NFC from previous period, this is just the effect of the same YTD value being multiplied with rate in previous period compared with the rate in this period. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. HasOnValuePeriod is to ensure Blank values. |
ACT OB XR2 (Period Based) | Y | N | Actual OB XR2 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [ACT OB]*[Conversion rate XR2])) // ACT OB X-rate (Period Based): [ACT OB] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. |
ACTOBPeriodZeroXR2 | Y | Y | ActualOBPeriodZeroXR2 | SUM | N | IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'GL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'GL ANALYSIS'[ACT_OB_PERIOD_DOM] ) ), "@XRATE", CALCULATE ( SELECTEDVALUE ( 'X-RATES 2'[PREV_YEAR_LAST_PERIOD_RATE]) ) ) VAR XAmount = SUMX ( RestatedAmount, [@GLAmount] * [@XRATE] ) RETURN XAmount ) // ACTOBPeriodZeroXR2: Calculates the OB X-rate value buy sum all OB-values and multiply with the last rate from previous year. // NOTE: If OB values exists on other periods than the start of the year, then they also is multiplied with the last rate from previous year (not previous period). |
BUD OB XR2 (Period Based) | Y | N | Budget OB XR2 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [BUD OB]*[Conversion rate XR2])) // BUD OB X-rate (Period Based): [BUD OB] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. |
BUDOBPeriodZeroXR2 | Y | Y | BudgetOBPeriodZeroXR2 | SUM | N | IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'GL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'GL ANALYSIS'[BUD_OB_PERIOD_DOM] ) ), "@XRATE", CALCULATE ( SELECTEDVALUE ( 'X-RATES 2'[PREV_YEAR_LAST_PERIOD_RATE]) ) ) VAR XAmount = SUMX ( RestatedAmount, [@GLAmount] * [@XRATE] ) RETURN XAmount ) // BUDOBPeriodZeroXR2: Calculates the OB X-rate value buy sum all OB-values and multiply with the last rate from previous year. // NOTE: If OB values exists on other periods than the start of the year, then they also is multiplied with the last rate from previous year (not previous period). |
CFC OB XR2 (Period Based) | Y | N | Current Forecast OB XR2 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [CFC OB]*[Conversion rate XR2])) // CFC OB X-rate (Period Based): [CFC OB] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. |
CFCOBPeriodZeroXR2 | Y | Y | Current ForecastOBPeriodZeroXR2 | SUM | N | IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'GL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'GL ANALYSIS'[CFC_OB_PERIOD_DOM] ) ), "@XRATE", CALCULATE ( SELECTEDVALUE ( 'X-RATES 2'[PREV_YEAR_LAST_PERIOD_RATE]) ) ) VAR XAmount = SUMX ( RestatedAmount, [@GLAmount] * [@XRATE] ) RETURN XAmount ) // CFCOBPeriodZeroXR2: Calculates the OB X-rate value buy sum all OB-values and multiply with the last rate from previous year. // NOTE: If OB values exists on other periods than the start of the year, then they also is multiplied with the last rate from previous year (not previous period). |
NFC OB XR2 (Period Based) | Y | N | Next Forecast OB XR2 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [NFC OB]*[Conversion rate XR2])) // NFC OB X-rate (Period Based): [NFC OB] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. |
NFCOBPeriodZeroXR2 | Y | Y | Next ForecastOBPeriodZeroXR2 | SUM | N | IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'GL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'GL ANALYSIS'[NFC_OB_PERIOD_DOM] ) ), "@XRATE", CALCULATE ( SELECTEDVALUE ( 'X-RATES 2'[PREV_YEAR_LAST_PERIOD_RATE]) ) ) VAR XAmount = SUMX ( RestatedAmount, [@GLAmount] * [@XRATE] ) RETURN XAmount ) // NFCOBPeriodZeroXR2: Calculates the OB X-rate value buy sum all OB-values and multiply with the last rate from previous year. // NOTE: If OB values exists on other periods than the start of the year, then they also is multiplied with the last rate from previous year (not previous period). |
ACT PY XR2 (Period Based) | Y | Y | Actual PY XR2 (Period Based) | SUM | N | CALCULATE([ACT XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY X-rate (Period Based): ACT X-rate from the same reporting period previous year. |
BUD PY XR2 (Period Based) | Y | Y | Budget PY XR2 (Period Based) | SUM | N | CALCULATE([BUD XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY X-rate (Period Based): BUD X-rate from the same reporting period previous year. |
ACT PY R12 XR2 (Period Based) | Y | Y | Actual PY R12 XR2 (Period Based) | SUM | N | CALCULATE([ACT R12 XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY R12 X-rate (Period Based): R12 X-rate from the same period previous year. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
BUD PY R12 XR2 (Period Based) | Y | Y | Budget PY R12 XR2 (Period Based) | SUM | N | CALCULATE([BUD R12 XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY R12 X-rate (Period Based): R12 X-rate from the same period previous year. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
ACT PY YTD XR2 (Period Based) | Actual PY YTD XR2 (Period Based) | N | CALCULATE ( [ACT YTD XR2 (Period Based)], DATEADD ( 'REPORTING PERIOD'[ID], -12, MONTH ) ) // ACT PY YTD X-rate (Period Based): ACT YTD Xrate from the same reporting period previous year. | |||
ACT R12 XR2 (Period Based) | Y | Y | Actual R12 XR2 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), [ACT XR2 (Period Based)] + CALCULATE([ACT XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([ACT XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([ACT XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([ACT XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([ACT XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([ACT XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([ACT XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([ACT XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([ACT XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([ACT XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([ACT XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // ACT R12 X-rate (Period Based): The sum of [ACT XR2 (Period Based)] for the current month and [ACT XR2 (Period Based)] values from each of the previous 11 months. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
BUD R12 XR2 (Period Based) | Y | Y | Budget R12 XR2 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), [BUD XR2 (Period Based)] + CALCULATE([BUD XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([BUD XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([BUD XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([BUD XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([BUD XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([BUD XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([BUD XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([BUD XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([BUD XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([BUD XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([BUD XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // BUD R12 X-rate (Period Based): The sum of [BUD XR2 (Period Based)] for the current month and [BUD XR2 (Period Based)] values from each of the previous 11 months. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
CFC R12 XR2 (Period Based) | Y | Y | Current Forecast R12 XR2 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), [CFC XR2 (Period Based)] + CALCULATE([CFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([CFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([CFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([CFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([CFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([CFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([CFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([CFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([CFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([CFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([CFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // CFC R12 X-rate (Period Based): The sum of [CFC XR2 (Period Based)] for the current month and [CFC XR2 (Period Based)] values from each of the previous 11 months. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
NFC R12 XR2 (Period Based) | Y | Y | Next Forecast R12 XR2 (Period Based) | SUM | N | IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), [NFC XR2 (Period Based)] + CALCULATE([NFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([NFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([NFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([NFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([NFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([NFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([NFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([NFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([NFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([NFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([NFC XR2 (Period Based)], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // NFC R12 X-rate (Period Based): The sum of [NFC XR2 (Period Based)] for the current month and [NFC XR2 (Period Based)] values from each of the previous 11 months. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
ACT YTD XR2 (Period Based) | Y | Y | Actual YTD XR2 (Period Based) | SUM | N | CALCULATE ( [ACTOBPeriodZeroXR2], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [ACT XR2 (Period Based)], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // ACT YTD X-rate (Period Based): This YTD value includes the sum of both OB and ACT values. |
BUD YTD XR2 (Period Based) | Y | Y | Budget YTD XR2 (Period Based) | SUM | N | CALCULATE ( [BUDOBPeriodZeroXR2], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [BUD XR2 (Period Based)], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // BUD YTD X-rate (Period Based): This YTD value includes the sum of both OB and BUD values. |
CFC YTD XR2 (Period Based) | Y | Y | Current Forecast YTD XR2 (Period Based) | SUM | N | CALCULATE ( [CFCOBPeriodZeroXR2], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [CFC XR2 (Period Based)], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // CFC YTD X-rate (Period Based): This YTD value includes the sum of both OB and CFC values. |
NFC YTD XR2 (Period Based) | Y | Y | Next Forecast YTD XR2 (Period Based) | SUM | N | CALCULATE ( [NFCOBPeriodZeroXR2], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [NFC XR2 (Period Based)], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // NFC YTD X-rate (Period Based): This YTD value includes the sum of both OB and NFC values. |
ACT Credit XR2 (Period Based) | Y | N | Actual Credit XR2 (Period Based) | SUM | N | IF(HASONEVALUE('CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('GL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code]) ,"@GLAmount",CALCULATE([ACT Credit]) ,"@XRates" ,CALCULATE(SELECTEDVALUE('X-RATES 2'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount ) // ACTUAL CREDIT in X-rate 2 Currency, use Reporting calendar. |
ACT Debit XR2 (Period Based) | Y | N | Actual Debit XR2 (Period Based) | SUM | N | IF(HASONEVALUE('CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('GL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code]) ,"@GLAmount",CALCULATE([ACT Debit]) ,"@XRates" ,CALCULATE(SELECTEDVALUE('X-RATES 2'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount ) // ACTUAL DEBIT in X-rate 2 Currency, use Reporting calendar. |
ACT XR2 (Period Based) | Y | N | Actual XR2 (Period Based) | SUM | N | IF(HASONEVALUE('CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('GL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code]) ,"@GLAmount",CALCULATE([ACT]) ,"@XRates" ,CALCULATE(SELECTEDVALUE('X-RATES 2'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount ) // ACTUAL in X-rate 2 Currency, use Reporting calendar. |
BUD XR2 (Period Based) | Y | N | Budget XR2 (Period Based) | SUM | N | IF(HASONEVALUE('CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('GL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code]) ,"@GLAmount",CALCULATE([BUD]) ,"@XRates" ,CALCULATE(SELECTEDVALUE('X-RATES 2'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount ) // BUDGET in X-rate 2 Currency, use Reporting calendar. |
CFC XR2 (Period Based) | Y | N | Current Forecast XR2 (Period Based) | SUM | N | IF(HASONEVALUE('CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('GL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code]) ,"@GLAmount",CALCULATE([CFC]) ,"@XRates" ,CALCULATE(SELECTEDVALUE('X-RATES 2'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount ) // CFC in X-rate 2 Currency, use Reporting calendar. |
NFC XR2 (Period Based) | Y | N | Next Forecast XR2 (Period Based) | SUM | N | IF(HASONEVALUE('CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('GL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code]) ,"@GLAmount",CALCULATE([NFC]) ,"@XRates" ,CALCULATE(SELECTEDVALUE('X-RATES 2'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount ) // NFC in X-rate 2 Currency, use Reporting calendar. |
ACT OB XR2 (YTD Based) | Y | Y | Actual OB XR2 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([ACT OB XR2 (Period Based)]), CALCULATE([ACT YTD XR2 (YTD Based)], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // ACT OB X-rate (YTD Based): The YTD value from previous period, part from period 1 in which calculation is OB*rate. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
BUD OB XR2 (YTD Based) | Y | Y | Budget OB XR2 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([BUD OB XR2 (Period Based)]), CALCULATE([BUD YTD XR2 (YTD Based)], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // BUD OB X-rate (YTD Based): The YTD value from previous period, part from period 1 in which calculation is OB*rate. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
CFC OB XR2 (YTD Based) | Y | Y | Current Forecast OB XR2 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([CFC OB XR2 (Period Based)]), CALCULATE([CFC YTD XR2 (YTD Based)], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // CFC OB X-rate (YTD Based): The YTD value from previous period, part from period 1 in which calculation is OB*rate. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
NFC OB XR2 (YTD Based) | Y | Y | Next Forecast OB XR2 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([NFC OB XR2 (Period Based)]), CALCULATE([NFC YTD XR2 (YTD Based)], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // NFC OB X-rate (YTD Based): The YTD value from previous period, part from period 1 in which calculation is OB*rate. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. |
ACT PY XR2 (YTD Based) | Y | Y | Actual PY XR2 (YTD Based) | SUM | N | CALCULATE([ACT XR2 (YTD Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY X-rate (YTD Based): The value from the same period last year. |
BUD PY XR2 (YTD Based) | Y | Y | Budget PY XR2 (YTD Based) | SUM | N | CALCULATE([BUD XR2 (YTD Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY X-rate (YTD Based): The value from the same period last year. |
ACT PY R12 XR2 (YTD Based) | Y | Y | Actual PY R12 XR2 (YTD Based) | SUM | N | CALCULATE([ACT R12 XR2 (YTD Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY R12 X-rate (YTD Based): R12 from the same period previous year. |
BUD PY R12 XR2 (YTD Based) | Y | Y | Budget PY R12 XR2 (YTD Based) | SUM | N | CALCULATE([BUD R12 XR2 (YTD Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY R12 X-rate (YTD Based): R12 from the same period previous year. |
ACT PY YTD XR2 (YTD Based) | Y | Y | Actual PY YTD XR2 (YTD Based) | SUM | N | CALCULATE([ACT YTD XR2 (YTD Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY YTD X-rate (YTD Based): The YTD value for the same period last year. |
BUD PY YTD XR2 (YTD Based) | Y | Y | Budget PY YTD XR2 (YTD Based) | SUM | N | CALCULATE([BUD YTD XR2 (YTD Based)], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY YTD X-rate (YTD Based): The YTD value for the same period last year. |
ACT R12 XR2 (YTD Based) | Y | Y | Actual R12 XR2 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[ACT R12]*[Conversion rate XR2])) // ACT R12 X-rate (YTD Based): The R12-value multiplied with the rate at the that specific Reporting period. // The calculation is done for one company at the time due to difference in base_currency. // LASTBLANKVALUE function is used to present the value from the last available Reporting period when presenting on Quarter, Half year or Year level. |
BUD R12 XR2 (YTD Based) | Y | Y | Budget R12 XR2 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[BUD R12]*[Conversion rate XR2])) // BUD R12 X-rate (YTD Based): The R12-value multiplied with the rate at the that specific Reporting period. // The calculation is done for one company at the time due to difference in base_currency. // LASTBLANKVALUE function is used to present the value from the last available Reporting period when presenting on Quarter, Half year or Year level. |
CFC R12 XR2 (YTD Based) | Y | Y | Current Forecast R12 XR2 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[CFC R12]*[Conversion rate XR2])) // CFC R12 X-rate (YTD Based): The R12-value multiplied with the rate at the that specific Reporting period. // The calculation is done for one company at the time due to difference in base_currency. // LASTBLANKVALUE function is used to present the value from the last available Reporting period when presenting on Quarter, Half year or Year level. |
NFC R12 XR2 (YTD Based) | Y | Y | Next Forecast R12 XR2 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[NFC R12]*[Conversion rate XR2])) // NFC R12 X-rate (YTD Based): The R12-value multiplied with the rate at the that specific Reporting period. // The calculation is done for one company at the time due to difference in base_currency. // LASTBLANKVALUE function is used to present the value from the last available Reporting period when presenting on Quarter, Half year or Year level. |
ACT YTD XR2 (YTD Based) | Y | Y | Actual YTD XR2 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[ACT YTD]*[Conversion rate XR2])) // ACT YTD X-rate (YTD Based): The YTD value multiplied with the current rate. // LASTNONBLANKVALUE to handle TOTALS at Quarter and Year level to be the value from the last period within the quarter or year. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. // If ever to update this code: Heads up on verifing the results on Quarter and Year level in the multi-company scenario. |
BUD YTD XR2 (YTD Based) | Y | Y | Budget YTD XR2 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[BUD YTD]*[Conversion rate XR2])) // BUD YTD X-rate (YTD Based): The YTD value multiplied with the current rate. // LASTNONBLANKVALUE to handle TOTALS at Quarter and Year level to be the value from the last period within the quarter or year. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. // If ever to update this code: Heads up on verifing the results on Quarter and Year level in the multi-company scenario. |
CFC YTD XR2 (YTD Based) | Y | Y | Current Forecast YTD XR2 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[CFC YTD]*[Conversion rate XR2])) // CFC YTD X-rate (YTD Based): The YTD value multiplied with the current rate. // LASTNONBLANKVALUE to handle TOTALS at Quarter and Year level to be the value from the last period within the quarter or year. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. // If ever to update this code: Heads up on verifing the results on Quarter and Year level in the multi-company scenario. |
NFC YTD XR2 (YTD Based) | Y | Y | Next Forecast YTD XR2 (YTD Based) | SUM | N | SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[NFC YTD]*[Conversion rate XR2])) // NFC YTD X-rate (YTD Based): The YTD value multiplied with the current rate. // LASTNONBLANKVALUE to handle TOTALS at Quarter and Year level to be the value from the last period within the quarter or year. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates. // If ever to update this code: Heads up on verifing the results on Quarter and Year level in the multi-company scenario. |
ACT XR2 (YTD Based) | Y | Y | Actual XR2 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([ACT]*[Conversion rate XR2]) ), SUMX (VALUES ( COMPANY[ID] ), ([ACT YTD]*[Conversion rate XR2]) - ([ACT OB]*[Conversion rate PP XR2])) ) ) // ACT X-rate (YTD Based): (ACT YTD X-rate) minus (OB * rate in previous period). Note that OB is the same as the YTD-value in the previous period. // In case no addition of ACT from previous period, this is just the effect of the same YTD value being multiplied with rate in previous period compared with the rate in this period. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. HasOnValuePeriod is to ensure Blank values. |
BUD XR2 (YTD Based) | Y | Y | Budget XR2 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([BUD]*[Conversion rate XR2]) ), SUMX (VALUES ( COMPANY[ID] ), ([BUD YTD]*[Conversion rate XR2]) - ([BUD OB]*[Conversion rate PP XR2])) ) ) // BUD X-rate (YTD Based): (BUD YTD X-rate) minus (OB * rate in previous period). Note that OB is the same as the YTD-value in the previous period. // In case no addition of BUD from previous period, this is just the effect of the same YTD value being multiplied with rate in previous period compared with the rate in this period. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. HasOnValuePeriod is to ensure Blank values. |
CFC XR2 (YTD Based) | Y | Y | Current Forecast XR2 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([CFC]*[Conversion rate XR2]) ), SUMX (VALUES ( COMPANY[ID] ), ([CFC YTD]*[Conversion rate XR2]) - ([CFC OB]*[Conversion rate PP XR2])) ) ) // CFC X-rate (YTD Based): (CFC YTD X-rate) minus (OB * rate in previous period). Note that OB is the same as the YTD-value in the previous period. // In case no addition of CFC from previous period, this is just the effect of the same YTD value being multiplied with rate in previous period compared with the rate in this period. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. HasOnValuePeriod is to ensure Blank values. |
NFC XR2 (YTD Based) | Y | Y | Next Forecast XR2 (YTD Based) | SUM | N | VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('GL ANALYSIS MEASURES'[HasOneValuePeriod] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([NFC]*[Conversion rate XR2]) ), SUMX (VALUES ( COMPANY[ID] ), ([NFC YTD]*[Conversion rate XR2]) - ([NFC OB]*[Conversion rate PP XR2])) ) ) // NFC X-rate (YTD Based): (NFC YTD X-rate) minus (OB * rate in previous period). Note that OB is the same as the YTD-value in the previous period. // In case no addition of NFC from previous period, this is just the effect of the same YTD value being multiplied with rate in previous period compared with the rate in this period. // NOTE: This measure can only to be presented on Reporting Period level. Can not be used on Quarter, Half year or Year level. HasOnValuePeriod is to ensure Blank values. |
Switch Actual (For Drill Through) 2 | Y | N | Copy of Switch Actual for when not always want to allow for drill through functionality in Power BI report | N | [Switch Actual] // Same as Switch Actual (For Drill Through), but to be able to have different target reports for the drill through. For example use one for Income statement and the second for Balance sheet reports. | |
ACT (Acc Calendar) | Actual, to be presented by Accounting calendar | N | IF (HASONEVALUE('ACCOUNTING PERIOD'[Accounting Year]), SUMX('GL ANALYSIS', [ACT_OB_PERIOD_DOM] + [ACT_PERIOD_DOM])) // ACTUAL in Accounting currency. // Mandatory to use Accounting calendar for this measure to function. // Uses the HASONEVALUE function to suppress display of totals that sum up multiple years. | |||
ACT OB (Acc Calendar) | Actual OB, to be presented by Accounting calendar | N | VAR CurrAccYear = SELECTEDVALUE('ACCOUNTING PERIOD'[Accounting Year]) // Uses the SELECTEDVALUE function to suppress display of totals that sum up multiple years. Var CurrAccPeriod = IF( SELECTEDVALUE('ACCOUNTING PERIOD'[Accounting Period No]) = 0, 1, SELECTEDVALUE('ACCOUNTING PERIOD'[Accounting Period No])) VAR RunningTotal= CALCULATE( [ACT (Acc Calendar)], FILTER(ALL('ACCOUNTING PERIOD'), 'ACCOUNTING PERIOD'[Accounting Year]=CurrAccYear && 'ACCOUNTING PERIOD'[Accounting Period No]< CurrAccPeriod)) RETURN RunningTotal // ACTUAL Opening Balance in Accounting currency. // Mandatory to use Accounting calendar for this measure to function. | |||
ACT YTD (Acc Calendar) | Actual YTD, to be presented by Accounting calendar | N | VAR CurrentAccPeriodNo = MAX('ACCOUNTING PERIOD'[Accounting Period No]) VAR CurrentAccYear = MAX('ACCOUNTING PERIOD'[Accounting Year]) VAR RunningTotal = CALCULATE([ACT (Acc Calendar)], FILTER(ALL('ACCOUNTING PERIOD'), 'ACCOUNTING PERIOD'[Accounting Year] = CurrentAccYear && 'ACCOUNTING PERIOD'[Accounting Period No] <= CurrentAccPeriodNo)) RETURN IF( HASONEVALUE('ACCOUNTING PERIOD'[Accounting Year]), RunningTotal) // ACTUAL YTD in Accounting currency. // Mandatory to use Accounting calendar for this measure to function. // Uses the HASONEVALUE function to suppress display of totals that sum up multiple years. | |||
Switch Actual (Acc Calendar) | Y | N | Selects a version of actual measure when using the accounting calendar | N | [Selected DisplayUnit Switch] * SWITCH([Selected Actual Acc Curr Measure], "ACT", [ACT (Acc Calendar)], "ACT YTD", [ACT YTD (Acc Calendar)] ) // Two measures to switch between, ACT and ACT YTD. // Mandatory to use Accounting calendar for this measure to function. // Mandatory to filter a single value from tables SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Conversion rate XR1 | Y | Y | Currency rate current period - for XR1 | N/A | N | IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1] ), VAR SelectedXrateType = SELECTEDVALUE('RATE TYPE X-RATE 1'[Rate Type Code X-Rate 1]) VAR SelectedToCurrency = SELECTEDVALUE ('CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1] ) VAR selected_company = SELECTEDVALUE(COMPANY[ID]) VAR base_currency = CALCULATE( SELECTEDVALUE('GL ANALYSIS'[company_base_currency]), COMPANY[ID] = selected_company, ALL('REPORTING PERIOD') ) VAR LastReportingPeriodWithRate = CALCULATE( MAX('REPORTING PERIOD'[ID]), FILTER( 'X-RATES 1', 'X-RATES 1'[CURRENCY_RATE_TYPE_KEY] = SelectedXrateType && 'X-RATES 1'[TOCURRENCY] = SelectedToCurrency && 'X-RATES 1'[FROMCURRENCY] = base_currency && NOT(ISBLANK('X-RATES 1'[CURRENCYRATE])) ) ) VAR ConversionRate = CALCULATE( MAX('X-RATES 1'[CURRENCYRATE]), 'X-RATES 1'[CURRENCY_RATE_TYPE_KEY] = SelectedXrateType, 'X-RATES 1'[TOCURRENCY] = SelectedToCurrency, 'X-RATES 1'[FROMCURRENCY] = base_currency, 'REPORTING PERIOD'[ID] = LastReportingPeriodWithRate ) RETURN ConversionRate ) // Conversion rate XR1: Rate for the current reporting period. // NOTE: This measure requires that companies never change their "company_base_currency"-value. |
Conversion rate PP XR1 | Y | Y | Currency rate previous period - for XR1 | N/A | N | CALCULATE([Conversion rate XR1], DATEADD('REPORTING PERIOD'[ID],-1,month)) // Conversion rate XR1 PP: Rate for the previous reporting period. // NOTE: This measure requires that companies never change their "company_base_currency"-value. |
Conversion rate PP XR2 | Y | Y | Currency rate previous period - for XR2 | N/A | N | CALCULATE([Conversion rate XR2], DATEADD('REPORTING PERIOD'[ID],-1,month)) // Conversion rate XR2 PP: Rate for the previous reporting period. // NOTE: This measure requires that companies never change their "company_base_currency"-value. |
Conversion rate XR2 | Y | Y | Currency rate current period - for XR2 | N/A | N | IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2] ), VAR SelectedXrateType = SELECTEDVALUE('RATE TYPE X-RATE 2'[Rate Type Code X-Rate 2]) VAR SelectedToCurrency = SELECTEDVALUE ('CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2] ) VAR selected_company = SELECTEDVALUE(COMPANY[ID]) VAR base_currency = CALCULATE( SELECTEDVALUE('GL ANALYSIS'[company_base_currency]), COMPANY[ID] = selected_company, ALL('REPORTING PERIOD') ) VAR LastReportingPeriodWithRate = CALCULATE( MAX('REPORTING PERIOD'[ID]), FILTER( 'X-RATES 2', 'X-RATES 2'[CURRENCY_RATE_TYPE_KEY] = SelectedXrateType && 'X-RATES 2'[TOCURRENCY] = SelectedToCurrency && 'X-RATES 2'[FROMCURRENCY] = base_currency && NOT(ISBLANK('X-RATES 2'[CURRENCYRATE])) ) ) VAR ConversionRate = CALCULATE( MAX('X-RATES 2'[CURRENCYRATE]), 'X-RATES 2'[CURRENCY_RATE_TYPE_KEY] = SelectedXrateType, 'X-RATES 2'[TOCURRENCY] = SelectedToCurrency, 'X-RATES 2'[FROMCURRENCY] = base_currency, 'REPORTING PERIOD'[ID] = LastReportingPeriodWithRate ) RETURN ConversionRate ) // Conversion rate XR2: Rate for the current reporting period. // NOTE: This measure requires that companies never change their "company_base_currency"-value. |
ACT | Y | N | Actual | SUM | N | SUM('GL ANALYSIS'[ACT_PERIOD_DOM]) // ACTUAL in Accounting Currency, use Reporting calendar. |
BUD PY YTD XR1 (Period Based) | Y | Y | Budget PY YTD XR1 (Period Based) | N | CALCULATE ( [BUD YTD XR1 (Period Based)], DATEADD ( 'REPORTING PERIOD'[ID], -12, MONTH ) ) // BUD PY YTD X-rate (Period Based): BUD YTD Xrate from the same reporting period previous year. | |
BUD PY YTD XR2 (Period Based) | Y | Y | Budget PY YTD XR2 (Period Based) | N | CALCULATE ( [BUD YTD XR2 (Period Based)], DATEADD ( 'REPORTING PERIOD'[ID], -12, MONTH ) ) // BUD PY YTD X-rate (Period Based): BUD YTD Xrate from the same reporting period previous year. | |
Switch Actual (XR1 YTD Based) | Y | N | Selects one of the Actual measure in XR1 (YTD Based) Currency | N | [Selected DisplayUnit Switch] * SWITCH([Selected Actual XR1 (YTD Based) Measure], "ACT XR1 (YTD Based)", [ACT XR1 (YTD Based)], "ACT YTD XR1 (YTD Based)", [ACT YTD XR1 (YTD Based)], "ACT R12 XR1 (YTD Based)", [ACT R12 XR1 (YTD Based)] ) // List of measures to switch between, the list includes ACTUAL measures on XR1 (YTD Based) currency. // Mandatory to filter a single value from table SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Actual (XR2 YTD Based) | Y | N | Selects one of the Actual measure in XR2 (YTD Based) Currency | N | [Selected DisplayUnit Switch] * SWITCH([Selected Actual XR2 (YTD Based) Measure], "ACT XR2 (YTD Based)", [ACT XR2 (YTD Based)], "ACT YTD XR2 (YTD Based)", [ACT YTD XR2 (YTD Based)], "ACT R12 XR2 (YTD Based)", [ACT R12 XR2 (YTD Based)] ) // List of measures to switch between, the list includes ACTUAL measures on XR2 (YTD Based) currency. // Mandatory to filter a single value from table SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Actual (Acc Currency) | Y | N | Selects one of the Actual measure in Accounting Currency | N | [Selected DisplayUnit Switch] * SWITCH([Selected Actual Acc Curr Measure], "ACT", [ACT], "ACT YTD", [ACT YTD], "ACT R12", [ACT R12] ) // List of measures to switch between, the list includes ACTUAL measures on Accounting currency. // Mandatory to filter a single value from table SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Actual (Trans Currency) | Y | N | Selects one of the Actual in Transaction Currency | N | [Selected DisplayUnit Switch] * SWITCH([Selected Actual Trans Curr Measure], "ACT Trans", [ACT Trans], "ACT YTD Trans", [ACT YTD Trans], "ACT R12 Trans", [ACT R12 Trans] ) // List of measures to switch between, the list includes ACTUAL measures on Transaction currency. // Mandatory to filter a single value from table SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff XR (YTD Based) | Y | N | Calculates the difference between selected XR1 (YTD Based) and XR2 (YTD Based) measure | N | [Switch Actual (XR1 YTD Based)] - [Switch Actual (XR2 YTD Based)] // Calculates the difference between the SWITCH ACTUAL (XR1 YTD Based) and the SWITCH COMP (XR2 YTD Based). // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff XR (YTD Based) (%) | Y | N | Calculates the (%) difference between selected XR1 (YTD Based) and XR2 (YTD Based) measure | N | DIVIDE([Switch Diff XR (YTD Based)],ABS([Switch Actual (XR2 YTD Based)]), Blank()) // Calculates the % difference between the SWITCH ACTUAL (XR1 YTD Based) and the SWITCH COMP (XR2 YTD Based). // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (CFC) | Y | N | Calculates the difference between selected Actual and CFC measure | N | [Switch Actual] - [Switch Comp (CFC)] // Calculates the difference between the SWITCH ACTUAL and the SWITCH COMP (CFC). // Mandatory to filter a single value from tables SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (CFC%) | Y | N | Calculates the (%) difference between selected Actual and CFC measure | N | DIVIDE([Switch Diff (CFC)],ABS([Switch Comp (CFC)]), Blank()) // Calculates the % difference between the SWITCH ACTUAL and the SWITCH COMP (CFC). // Mandatory to filter a single value from tables SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (NFC) | Y | N | Calculates the difference between selected Actual and NFC measure | N | [Switch Actual] - [Switch Comp (NFC)] // Calculates the difference between the SWITCH ACTUAL and the SWITCH COMP (NFC). // Mandatory to filter a single value from tables SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (NFC%) | Y | N | Calculates the (%) difference between selected Actual and NFC measure | N | DIVIDE([Switch Diff (NFC)],ABS([Switch Comp (NFC)]), Blank()) // Calculates the % difference between the SWITCH ACTUAL and the SWITCH COMP (NFC). // Mandatory to filter a single value from tables SWITCH CURRENCY TYPE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Comp (Acc Currency) | Y | N | Selects one of the comparision measure in Accounting Currency | N | [Selected DisplayUnit Switch] * SWITCH([Selected Comparison Acc Curr Measure], "ACT PY", [ACT PY], "BUD", [BUD], "CFC", [CFC], "NFC", [NFC], "ACT PY YTD", [ACT PY YTD], "BUD YTD", [BUD YTD], "CFC YTD", [CFC YTD], "NFC YTD", [NFC YTD], "ACT PY R12", [ACT PY R12], "BUD R12", [BUD R12], "CFC R12", [CFC R12], "NFC R12", [NFC R12] ) // List of measures to switch between, the list includes COMPARISON measures on Accounting currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Comp (Trans Currency) | Y | N | Selects one of the comparision measure in Transaction Currency | N | [Selected DisplayUnit Switch] * SWITCH([Selected Comparison Trans Curr Measure], "ACT PY Trans", [ACT PY Trans], "BUD Trans", [BUD Trans], "CFC Trans", [CFC Trans], "NFC Trans", [NFC Trans], "ACT PY YTD Trans", [ACT PY YTD Trans], "BUD YTD Trans", [BUD YTD Trans], "CFC YTD Trans", [CFC YTD Trans], "NFC YTD Trans", [NFC YTD Trans], "ACT PY R12 Trans", [ACT PY R12 Trans], "BUD R12 Trans", [BUD R12 Trans], "CFC R12 Trans", [CFC R12 Trans], "NFC R12 Trans", [NFC R12 Trans] ) // List of measures to switch between, the list includes COMPARISON measures on Transaction currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Comp (XR1 Period Based) | Y | N | Selects one of the comparision measure in XR1 (Period Based) Currency | N | [Selected DisplayUnit Switch] * SWITCH([Selected Comparison XR1 (Period Based) Measure], "ACT PY XR1 (Period Based)", [ACT PY XR1 (Period Based)], "BUD XR1 (Period Based)", [BUD XR1 (Period Based)], "CFC XR1 (Period Based)", [CFC XR1 (Period Based)], "NFC XR1 (Period Based)", [NFC XR1 (Period Based)], "ACT PY YTD XR1 (Period Based)", [ACT PY YTD XR1 (Period Based)], "BUD YTD XR1 (Period Based)", [BUD YTD XR1 (Period Based)], "CFC YTD XR1 (Period Based)", [CFC YTD XR1 (Period Based)], "NFC YTD XR1 (Period Based)", [NFC YTD XR1 (Period Based)], "ACT PY R12 XR1 (Period Based)", [ACT PY R12 XR1 (Period Based)], "BUD R12 XR1 (Period Based)", [BUD R12 XR1 (Period Based)], "CFC R12 XR1 (Period Based)", [CFC R12 XR1 (Period Based)], "NFC R12 XR1 (Period Based)", [NFC R12 XR1 (Period Based)] ) // List of measures to switch between, the list includes COMPARISON measures on XR1 (Period Based) currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Comp (XR1 YTD Based) | Y | N | Selects one of the comparision measure in XR1 (YTD Based) Currency | N | [Selected DisplayUnit Switch] * SWITCH([Selected Comparison XR1 (YTD Based) Measure], "ACT PY XR1 (YTD Based)", [ACT PY XR1 (YTD Based)], "BUD XR1 (YTD Based)", [BUD XR1 (YTD Based)], "CFC XR1 (YTD Based)", [CFC XR1 (YTD Based)], "NFC XR1 (YTD Based)", [NFC XR1 (YTD Based)], "ACT PY YTD XR1 (YTD Based)", [ACT PY YTD XR1 (YTD Based)], "BUD YTD XR1 (YTD Based)", [BUD YTD XR1 (YTD Based)], "CFC YTD XR1 (YTD Based)", [CFC YTD XR1 (YTD Based)], "NFC YTD XR1 (YTD Based)", [NFC YTD XR1 (YTD Based)], "ACT PY R12 XR1 (YTD Based)", [ACT PY R12 XR1 (YTD Based)], "BUD R12 XR1 (YTD Based)", [BUD R12 XR1 (YTD Based)], "CFC R12 XR1 (YTD Based)", [CFC R12 XR1 (YTD Based)], "NFC R12 XR1 (YTD Based)", [NFC R12 XR1 (YTD Based)] ) // List of measures to switch between, the list includes COMPARISON measures on XR1 (YTD Based) currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Comp (XR2 Period Based) | Y | N | Selects one of the comparision measure in XR2 (Period Based) Currency | N | [Selected DisplayUnit Switch] * SWITCH([Selected Comparison XR2 (Period Based) Measure], "ACT PY XR2 (Period Based)", [ACT PY XR2 (Period Based)], "BUD XR2 (Period Based)", [BUD XR2 (Period Based)], "CFC XR2 (Period Based)", [CFC XR2 (Period Based)], "NFC XR2 (Period Based)", [NFC XR2 (Period Based)], "ACT PY YTD XR2 (Period Based)", [ACT PY YTD XR2 (Period Based)], "BUD YTD XR2 (Period Based)", [BUD YTD XR2 (Period Based)], "CFC YTD XR2 (Period Based)", [CFC YTD XR2 (Period Based)], "NFC YTD XR2 (Period Based)", [NFC YTD XR2 (Period Based)], "ACT PY R12 XR2 (Period Based)", [ACT PY R12 XR2 (Period Based)], "BUD R12 XR2 (Period Based)", [BUD R12 XR2 (Period Based)], "CFC R12 XR2 (Period Based)", [CFC R12 XR2 (Period Based)], "NFC R12 XR2 (Period Based)", [NFC R12 XR2 (Period Based)] ) // List of measures to switch between, the list includes COMPARISON measures on XR2 (Period Based) currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Comp (XR2 YTD Based) | Y | N | Selects one of the comparision measure in XR2 (YTD Based) Currency | N | [Selected DisplayUnit Switch] * SWITCH([Selected Comparison XR2 (YTD Based) Measure], "ACT PY XR2 (YTD Based)", [ACT PY XR2 (YTD Based)], "BUD XR2 (YTD Based)", [BUD XR2 (YTD Based)], "CFC XR2 (YTD Based)", [CFC XR2 (YTD Based)], "NFC XR2 (YTD Based)", [NFC XR2 (YTD Based)], "ACT PY YTD XR2 (YTD Based)", [ACT PY YTD XR2 (YTD Based)], "BUD YTD XR2 (YTD Based)", [BUD YTD XR2 (YTD Based)], "CFC YTD XR2 (YTD Based)", [CFC YTD XR2 (YTD Based)], "NFC YTD XR2 (YTD Based)", [NFC YTD XR2 (YTD Based)], "ACT PY R12 XR2 (YTD Based)", [ACT PY R12 XR2 (YTD Based)], "BUD R12 XR2 (YTD Based)", [BUD R12 XR2 (YTD Based)], "CFC R12 XR2 (YTD Based)", [CFC R12 XR2 (YTD Based)], "NFC R12 XR2 (YTD Based)", [NFC R12 XR2 (YTD Based)] ) // List of measures to switch between, the list includes COMPARISON measures on XR2 (YTD Based) currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (Acc Currency) | Y | N | Calculates the difference between selected Actual and Comparison measure | N | [Switch Actual (Acc Currency)] - [Switch Comp (Acc Currency)] // Calculates the difference between the SWITCH ACTUAL (Acc Currency) and the SWITCH COMP (Acc Currency) measures specifically designed for Accounting Currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (Acc Currency%) | Y | N | Calculates the % difference between selected Actual and Comparison measure | N | DIVIDE([Switch Diff (Acc Currency)],ABS([Switch Comp (Acc Currency)]), Blank()) // Calculates the % difference between the SWITCH ACTUAL (Acc Currency) and the SWITCH COMP (Acc Currency) measures specifically designed for Accounting Currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (Trans Currency) | Y | N | Calculates the difference between selected Actual and Comparison measure | N | [Switch Actual (Trans Currency)] - [Switch Comp (Trans Currency)] // Calculates the difference between the SWITCH ACTUAL (Trans Currency) and the SWITCH COMP (Trans Currency) measures specifically designed for Transaction Currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (Trans Currency%) | Y | N | Calculates the % difference between selected Actual and Comparison measure | N | DIVIDE([Switch Diff (Trans Currency)],ABS([Switch Comp (Trans Currency)]), Blank()) // Calculates the % difference between the SWITCH ACTUAL (Trans Currency) and the SWITCH COMP (Trans Currency) measures specifically designed for Transaction Currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (XR1 Period Based) | Y | N | Calculates the difference between selected Actual and Comparison measure | N | [Switch Actual (XR1 Period Based)] - [Switch Comp (XR1 Period Based)] // Calculates the difference between the SWITCH ACTUAL (XR1 Period Based) and the SWITCH COMP (XR1 Period Based) measures specifically designed for XR1 Period Based Currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (XR1 Period Based%) | Y | N | Calculates the % difference between selected Actual and Comparison measure | N | DIVIDE([Switch Diff (XR1 Period Based)],ABS([Switch Comp (XR1 Period Based)]), Blank()) // Calculates the % difference between the SWITCH ACTUAL (XR1 Period Based) and the SWITCH COMP (XR1 Period Based) measures specifically designed for XR1 Period Based Currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (XR1 YTD Based) | Y | N | Calculates the difference between selected Actual and Comparison measure | N | [Switch Actual (XR1 YTD Based)] - [Switch Comp (XR1 YTD Based)] // Calculates the difference between the SWITCH ACTUAL (XR1 YTD Based) and the SWITCH COMP (XR1 YTD Based) measures specifically designed for XR1 YTD Based Currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (XR1 YTD Based%) | Y | N | Calculates the % difference between selected Actual and Comparison measure | N | DIVIDE([Switch Diff (XR1 YTD Based)],ABS([Switch Comp (XR1 YTD Based)]), Blank()) // Calculates the % difference between the SWITCH ACTUAL (XR1 YTD Based) and the SWITCH COMP (XR1 YTD Based) measures specifically designed for XR1 YTD Based Currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (XR2 Period Based) | Y | N | Calculates the difference between selected Actual and Comparison measure | N | [Switch Actual (XR2 Period Based)] - [Switch Comp (XR2 Period Based)] // Calculates the difference between the SWITCH ACTUAL (XR2 Period Based) and the SWITCH COMP (XR2 Period Based) measures specifically designed for XR2 Period Based Currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (XR2 Period Based%) | Y | N | Calculates the % difference between selected Actual and Comparison measure | N | DIVIDE([Switch Diff (XR2 Period Based)],ABS([Switch Comp (XR2 Period Based)]), Blank()) // Calculates the % difference between the SWITCH ACTUAL (XR2 Period Based) and the SWITCH COMP (XR2 Period Based) measures specifically designed for XR2 Period Based Currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (XR2 YTD Based) | Y | N | Calculates the difference between selected Actual and Comparison measure | N | [Switch Actual (XR2 YTD Based)] - [Switch Comp (XR2 YTD Based)] // Calculates the difference between the SWITCH ACTUAL (XR2 YTD Based) and the SWITCH COMP (XR2 YTD Based) measures specifically designed for XR2 YTD Based Currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. | |
Switch Diff (XR2 YTD Based%) | Y | N | Calculates the % difference between selected Actual and Comparison measure | N | DIVIDE([Switch Diff (XR2 YTD Based)],ABS([Switch Comp (XR2 YTD Based)]), Blank()) // Calculates the % difference between the SWITCH ACTUAL (XR2 YTD Based) and the SWITCH COMP (XR2 YTD Based) measures specifically designed for XR2 YTD Based Currency. // Mandatory to filter a single value from tables SWITCH COMPARISON MEASURE and SWITCH TIME PERSPECTIVE for this measure to function. |
Time based measures are calculated in the cube with respect to other measures. The table below defines the meaning/definition of the different time measures. These measures need to be used with a specific time dimension hierarchy [REPORTING_DATE].[RepDateMFHy].
Measure | Meaning |
YTD |
Aggregated value for current month in current year. E.g.
for period 202010 Ytd represents sum of periods 202000-202010. |
R12 |
For a given period, the sum all months from one year back up to the
previous month. E.g. Rolling 12 for 202010 is the sum of months 201910
- 202009 |
PY |
Previous Year The value of the corresponding month one year back. E.g. for month 202010, the value of month 201910. |
YTD PY |
Year to Date Previous Year Aggregated value for corresponding month one year back. E.g. for month 202010 YTD Previous Year represents sum of months 201901-201910. |
R12 PY |
Rolling 12 (completed) Months Previous Year For a given month, first going one year back, then taking the sum of all months from one (more) year back up to the previous month. E.g. for month 202010 the sum of month 201810-201909 |
Avg XXX Ytd | Sum XXX YTD/Count XXX YTD |
Avg XXX R12 | Sum XXX R12/Count XXX R12 |
XXX % YTD | Count XXX YTD/Count YYY YTD |
XXX % R12 | Count XXX R12/Count XXX R12 |
Model Name |
General Ledger |
The data source for this object is defined using IFS Developer Tool. Further Transformations are done using Power BI.
Additional information can be found in the online documentation of Information Sources.
Model Table | BI Access View | Referenced Information Source | Recommended Access Type |
GL ANALYSIS MEASURES | FACT_GL_ANALYSIS_PQ_BI | FACT_GL_ANALYSIS_PQ | On Line |