Model: General Ledger - Specifications for Fact Table: IL ANALYSIS MEASURES

On this page you will find the specifications regarding the Model: General Ledger and Fact Table: IL ANALYSIS MEASURES.

Attributes

Attribute Description (where applicable)

Measures (table to be generated as far as possible)

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 Tabular Expression
ACT (Acc Calendar) ILYNIL version of same GL measureN IF (HASONEVALUE('ACCOUNTING PERIOD'[Accounting Year]), SUMX('IL ANALYSIS', [ACT_OB_PERIOD_DOM] + [ACT_PERIOD_DOM])) // Uses the HASONEVALUE function to suppress display of totals that sum up multiple years.
ACT Credit ILYNIL version of same GL measureNSUM('IL ANALYSIS'[ACT_PERIOD_CREDIT_DOM])
ACT Credit Trans ILYYIL version of same GL measureNSUM('IL ANALYSIS'[ACT_PERIOD_CREDIT_CURR])
ACT Credit XR1 (Period Based) ILYYIL version of same GL measureN IF(HASONEVALUE('CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('IL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code]) ,"@GLAmount",CALCULATE([ACT Credit IL]) ,"@XRates",CALCULATE(SELECTEDVALUE('X-RATES 1'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount )
ACT Credit XR2 (Period Based) ILYYIL version of same GL measureN IF(HASONEVALUE('CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('IL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code]) ,"@GLAmount",CALCULATE([ACT Credit IL]) ,"@XRates",CALCULATE(SELECTEDVALUE('X-RATES 2'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount )
ACT Credit YTD ILYYIL version of same GL measureNCALCULATE([ACT Credit IL], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('IL ANALYSIS'[OB_PERIOD_CURR]), DATESYTD('REPORTING PERIOD'[ID]))
ACT Credit YTD Trans ILYYIL version of same GL measureNCALCULATE([ACT Credit Trans IL], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('IL ANALYSIS'[OB_PERIOD_CURR]), DATESYTD('REPORTING PERIOD'[ID]))
ACT Debit ILYNIL version of same GL measureNSUM('IL ANALYSIS'[ACT_PERIOD_DEBET_DOM])
ACT Debit Trans ILYYIL version of same GL measureNSUM('IL ANALYSIS'[ACT_PERIOD_DEBET_CURR])
ACT Debit XR1 (Period Based) ILYYIL version of same GL measureN IF(HASONEVALUE('CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('IL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code]) ,"@GLAmount",CALCULATE([ACT Debit IL]) ,"@XRates",CALCULATE(SELECTEDVALUE('X-RATES 1'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount )
ACT Debit XR2 (Period Based) ILYYIL version of same GL measureN IF(HASONEVALUE('CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('IL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code]) ,"@GLAmount",CALCULATE([ACT Debit IL]) ,"@XRates",CALCULATE(SELECTEDVALUE('X-RATES 2'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount )
ACT Debit YTD ILYYIL version of same GL measureNCALCULATE([ACT Debit IL], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('IL ANALYSIS'[OB_PERIOD_CURR]), DATESYTD('REPORTING PERIOD'[ID]))
ACT Debit YTD Trans ILYYIL version of same GL measureNCALCULATE([ACT Debit Trans IL], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('IL ANALYSIS'[OB_PERIOD_CURR]), DATESYTD('REPORTING PERIOD'[ID]))
ACT ILYNIL version of same GL measureNSUM('IL ANALYSIS'[ACT_PERIOD_DOM])
ACT OB (Acc Calendar) ILYYIL version of same GL measureN 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) IL], FILTER(ALL('ACCOUNTING PERIOD'), 'ACCOUNTING PERIOD'[Accounting Year]=CurrAccYear && 'ACCOUNTING PERIOD'[Accounting Period No]< CurrAccPeriod)) RETURN RunningTotal
ACT OB ILYYIL version of same GL measureNIF(ISBLANK([ACT YTD IL]) , BLANK() ,([ACT YTD IL] - [ACT IL]))
ACT OB Trans ILYYIL version of same GL measureNIF(ISBLANK([ACT YTD Trans IL]) , BLANK() ,([ACT YTD Trans IL] - [ACT Trans IL]))
ACT OB XR1 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [ACT OB IL]*[Conversion rate XR1 IL])) // ACT OB X-rate (Period Based) IL: [ACT OB IL] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates.
ACT OB XR1 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([ACT OB XR1 (Period Based) IL]), CALCULATE([ACT YTD XR1 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // ACT OB X-rate (YTD Based) IL: 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 OB XR2 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [ACT OB IL]*[Conversion rate XR2 IL])) // ACT OB X-rate (Period Based) IL: [ACT OB] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates.
ACT OB XR2 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([ACT OB XR2 (Period Based) IL]), CALCULATE([ACT YTD XR2 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // ACT OB X-rate (YTD Based) IL: 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 ILYYIL version of same GL measureNCALCULATE([ACT IL], DATEADD('REPORTING PERIOD'[ID],-12,month))
ACT PY R12 ILYYIL version of same GL measureN CALCULATE ([ACT R12 IL], DATEADD ( 'REPORTING PERIOD'[ID], -12, MONTH )) // ACT PY R12 IL: 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 R12 Trans ILYYIL version of same GL measureN CALCULATE([ACT R12 Trans IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY R12 Trans IL: 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 R12 XR1 (Period Based) ILYYIL version of same GL measureN CALCULATE([ACT R12 XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY R12 X-rate (Period Based) IL: R12 X-rate IL 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 R12 XR1 (YTD Based) ILYYIL version of same GL measureN CALCULATE([ACT R12 XR1 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY R12 X-rate (YTD Based) IL: R12 from the same period previous year.
ACT PY R12 XR2 (Period Based) ILYYIL version of same GL measureN CALCULATE([ACT R12 XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY R12 X-rate (Period Based) IL: 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 R12 XR2 (YTD Based) ILYYIL version of same GL measureN CALCULATE([ACT R12 XR2 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY R12 X-rate (YTD Based) IL: R12 from the same period previous year.
ACT PY Trans ILYYIL version of same GL measureNCALCULATE([ACT Trans IL], DATEADD('REPORTING PERIOD'[ID],-12,month))
ACT PY XR1 (Period Based) ILYYIL version of same GL measureN CALCULATE([ACT XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY X-rate (Period Based) IL: ACT X-rate IL from the same reporting period previous year.
ACT PY XR1 (YTD Based) ILYYIL version of same GL measureN CALCULATE([ACT XR1 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY X-rate (YTD Based) IL: The value from the same period last year.
ACT PY XR2 (Period Based) ILYYIL version of same GL measureN CALCULATE([ACT XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY X-rate (Period Based) IL: ACT X-rate from the same reporting period previous year.
ACT PY XR2 (YTD Based) ILYYIL version of same GL measureN CALCULATE([ACT XR2 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY X-rate (YTD Based) IL: The value from the same period last year.
ACT PY YTD ILYYIL version of same GL measureNCALCULATE([ACT YTD IL], DATEADD('REPORTING PERIOD'[ID],-12,month))
ACT PY YTD Trans ILYYIL version of same GL measureNCALCULATE([ACT YTD Trans IL], DATEADD('REPORTING PERIOD'[ID],-12,month))
ACT PY YTD XR1 (Period Based) ILYYIL version of same GL measureN CALCULATE ( [ACT YTD XR1 (Period Based) IL], DATEADD ( 'REPORTING PERIOD'[ID], -12, MONTH ) ) // ACT PY YTD X-rate (Period Based) IL: ACT YTD Xrate IL from the same reporting period previous year.
ACT PY YTD XR1 (YTD Based) ILYYIL version of same GL measureN CALCULATE([ACT YTD XR1 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY YTD X-rate (YTD Based) IL: The YTD value for the same period last year.
ACT PY YTD XR2 (Period Based) ILYYIL version of same GL measureN CALCULATE ( [ACT YTD XR2 (Period Based) IL], DATEADD ( 'REPORTING PERIOD'[ID], -12, MONTH ) ) // ACT PY YTD X-rate (Period Based) IL: ACT YTD Xrate from the same reporting period previous year.
ACT PY YTD XR2 (YTD Based) ILYYIL version of same GL measureN CALCULATE([ACT YTD XR2 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // ACT PY YTD X-rate (YTD Based) IL: The YTD value for the same period last year.
ACT R12 ILYYIL version of same GL measureN 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 IL], FILTER ( ALL ( 'REPORTING PERIOD' ), 'REPORTING PERIOD'[Reporting Year Period] >= First_Period && 'REPORTING PERIOD'[Reporting Year Period] <= Last_Period ) ) // ACT R12 IL: 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 R12 Trans ILYYIL version of same GL measureN 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 IL], FILTER ( ALL ( 'REPORTING PERIOD' ), 'REPORTING PERIOD'[Reporting Year Period] >= First_Period && 'REPORTING PERIOD'[Reporting Year Period] <= Last_Period ) ) // ACT R12 Trans IL: 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 R12 XR1 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), [ACT XR1 (Period Based) IL] + CALCULATE([ACT XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([ACT XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([ACT XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([ACT XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([ACT XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([ACT XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([ACT XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([ACT XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([ACT XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([ACT XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([ACT XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // ACT R12 X-rate (Period Based) IL: The sum of [ACT XR1 (Period Based) IL] for the current month and [ACT XR1 (Period Based) IL] 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 R12 XR1 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), [ACT R12 IL]*[Conversion rate XR1 IL]) // ACT R12 X-rate (YTD Based) IL: 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 R12 XR2 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), [ACT XR2 (Period Based) IL] + CALCULATE([ACT XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([ACT XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([ACT XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([ACT XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([ACT XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([ACT XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([ACT XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([ACT XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([ACT XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([ACT XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([ACT XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // ACT R12 X-rate (Period Based) IL: The sum of [ACT XR2 (Period Based) IL] for the current month and [ACT XR2 (Period Based) IL] 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 R12 XR2 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[ACT R12 IL]*[Conversion rate XR2 IL])) // ACT R12 X-rate (YTD Based) IL: The R12-value multiplied with the rate at the that specific Reporting period. // The calculation is done for one company at the tme 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 Trans ILYNIL version of same GL measureNSUM('IL ANALYSIS'[ACT_PERIOD_CURR])
ACT XR1 (Period Based) ILYYIL version of same GL measureN IF(HASONEVALUE('CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('IL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code]) ,"@GLAmount",CALCULATE([ACT IL]) ,"@XRates",CALCULATE(SELECTEDVALUE('X-RATES 1'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount )
ACT XR1 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([ACT IL]*[Conversion rate XR1 IL]) ), SUMX (VALUES ( COMPANY[ID] ), ([ACT YTD IL]*[Conversion rate XR1 IL]) - ([ACT OB IL]*[Conversion rate PP XR1 IL])) ) ) // ACT X-rate (YTD Based) IL: (ACT YTD X-rate IL) minus (OB IL * 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.
ACT XR2 (Period Based) ILYYIL version of same GL measureN IF(HASONEVALUE('CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('IL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code]) ,"@GLAmount",CALCULATE([ACT IL]) ,"@XRates",CALCULATE(SELECTEDVALUE('X-RATES 2'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount )
ACT XR2 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([ACT IL]*[Conversion rate XR2 IL]) ), SUMX (VALUES ( COMPANY[ID] ), ([ACT YTD IL]*[Conversion rate XR2 IL]) - ([ACT OB IL]*[Conversion rate PP XR2 IL])) ) ) // ACT X-rate (YTD Based) IL: (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.
ACT YTD (Acc Calendar) ILYYIL version of same GL measureN VAR CurrentAccPeriodNo = MAX('ACCOUNTING PERIOD'[Accounting Period No]) VAR CurrentAccYear = MAX('ACCOUNTING PERIOD'[Accounting Year]) VAR RunningTotal = CALCULATE([ACT (Acc Calendar) IL], FILTER(ALL('ACCOUNTING PERIOD'), 'ACCOUNTING PERIOD'[Accounting Year] = CurrentAccYear && 'ACCOUNTING PERIOD'[Accounting Period No] <= CurrentAccPeriodNo)) RETURN IF( HASONEVALUE('ACCOUNTING PERIOD'[Accounting Year]), RunningTotal) // Uses the HASONEVALUE function to suppress display of totals that sum up multiple years.
ACT YTD ILYYIL version of same GL measureNCALCULATE([ACT IL], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('IL ANALYSIS'[ACT_OB_PERIOD_DOM]), DATESYTD('REPORTING PERIOD'[ID]))
ACT YTD Trans ILYYIL version of same GL measureNCALCULATE([ACT Trans IL], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('IL ANALYSIS'[ACT_OB_PERIOD_CURR]), DATESYTD('REPORTING PERIOD'[ID]))
ACT YTD XR1 (Period Based) ILYYIL version of same GL measureN CALCULATE ( [ACTOBPeriodZeroXR1 IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [ACT XR1 (Period Based) IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // ACT YTD X-rate (Period Based) IL: This YTD value includes the sum of both OB and ACT values.
ACT YTD XR1 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[ACT YTD IL]*[Conversion rate XR1 IL])) // ACT YTD X-rate (YTD Based) IL: 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 YTD XR2 (Period Based) ILYYIL version of same GL measureN CALCULATE ( [ACTOBPeriodZeroXR2 IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [ACT XR2 (Period Based) IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // ACT YTD X-rate (Period Based) IL: This YTD value includes the sum of both OB and ACT values.
ACT YTD XR2 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[ACT YTD IL]*[Conversion rate XR2 IL])) // ACT YTD X-rate (YTD Based) IL: 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.
ACTOBPeriodZero ILYYIL version of same GL measureN //Calulcates the incoming balance related to [ACT IL], 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 IL], DATEADD('REPORTING PERIOD'[ID],-DiffInDays+1, DAY) )
ACTOBPeriodZeroXR1 ILYYIL version of same GL measureN IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'IL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'IL 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 IL: Calculates the OB X-rate IL 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).
ACTOBPeriodZeroXR2 ILYYIL version of same GL measureN IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'IL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'IL 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 IL: 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 ILYNIL version of same GL measureNSUM('IL ANALYSIS'[BUD_PERIOD_DOM])
BUD OB ILYYIL version of same GL measureNIF(ISBLANK([BUD YTD IL]) , BLANK() ,([BUD YTD IL] - [BUD IL]))
BUD OB Trans ILYYIL version of same GL measureNIF(ISBLANK([BUD YTD Trans IL]) , BLANK() ,([BUD YTD Trans IL] - [BUD Trans IL]))
BUD OB XR1 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [BUD OB IL]*[Conversion rate XR1 IL])) // BUD OB X-rate (Period Based) IL: [BUD OB IL] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates.
BUD OB XR1 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([BUD OB XR1 (Period Based) IL]), CALCULATE([BUD YTD XR1 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // BUD OB X-rate (YTD Based) IL: 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 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [BUD OB IL]*[Conversion rate XR2 IL])) // BUD OB X-rate (Period Based) IL: [BUD OB] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates.
BUD OB XR2 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([BUD OB XR2 (Period Based) IL]), CALCULATE([BUD YTD XR2 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // BUD OB X-rate (YTD Based) IL: 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 PY ILYYIL version of same GL measureNCALCULATE([BUD IL], DATEADD('REPORTING PERIOD'[ID],-12,month))
BUD PY R12 ILYYIL version of same GL measureN CALCULATE ([BUD R12 IL], DATEADD ( 'REPORTING PERIOD'[ID], -12, MONTH )) // BUD PY R12 IL: 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 ILYYIL version of same GL measureN CALCULATE([BUD R12 Trans IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY R12 Trans IL: 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 XR1 (Period Based) ILYYIL version of same GL measureN CALCULATE([BUD R12 XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY R12 X-rate (Period Based) IL: R12 X-rate IL 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 (YTD Based) ILYYIL version of same GL measureN CALCULATE([BUD R12 XR1 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY R12 X-rate (YTD Based) IL: R12 from the same period previous year.
BUD PY R12 XR2 (Period Based) ILYYIL version of same GL measureN CALCULATE([BUD R12 XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY R12 X-rate (Period Based) IL: 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 (YTD Based) ILYYIL version of same GL measureN CALCULATE([BUD R12 XR2 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY R12 X-rate (YTD Based) IL: R12 from the same period previous year.
BUD PY Trans ILYYIL version of same GL measureNCALCULATE([BUD Trans IL], DATEADD('REPORTING PERIOD'[ID],-12,month))
BUD PY XR1 (Period Based) ILYYIL version of same GL measureN CALCULATE([BUD XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY X-rate (Period Based) IL: BUD X-rate IL from the same reporting period previous year.
BUD PY XR1 (YTD Based) ILYYIL version of same GL measureN CALCULATE([BUD XR1 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY X-rate (YTD Based) IL: The value from the same period last year.
BUD PY XR2 (Period Based) ILYYIL version of same GL measureN CALCULATE([BUD XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY X-rate (Period Based) IL: BUD X-rate from the same reporting period previous year.
BUD PY XR2 (YTD Based) ILYYIL version of same GL measureN CALCULATE([BUD XR2 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY X-rate (YTD Based) IL: The value from the same period last year.
BUD PY YTD ILYYIL version of same GL measureNCALCULATE([BUD YTD IL], DATEADD('REPORTING PERIOD'[ID],-12,month))
BUD PY YTD Trans ILYYIL version of same GL measureNCALCULATE([BUD YTD Trans IL], DATEADD('REPORTING PERIOD'[ID],-12,month))
BUD PY YTD XR1 (Period Based) ILYYIL version of same GL measureN CALCULATE ( [BUD YTD XR1 (Period Based) IL], DATEADD ( 'REPORTING PERIOD'[ID], -12, MONTH ) ) // BUD PY YTD X-rate (Period Based) IL: BUD YTD Xrate IL from the same reporting period previous year.
BUD PY YTD XR1 (YTD Based) ILYYIL version of same GL measureN CALCULATE([BUD YTD XR1 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY YTD X-rate (YTD Based) IL: The YTD value for the same period last year.
BUD PY YTD XR2 (Period Based) ILYYIL version of same GL measureN CALCULATE ( [BUD YTD XR2 (Period Based) IL], DATEADD ( 'REPORTING PERIOD'[ID], -12, MONTH ) ) // BUD PY YTD X-rate (Period Based) IL: BUD YTD Xrate IL from the same reporting period previous year.
BUD PY YTD XR2 (YTD Based) ILYYIL version of same GL measureN CALCULATE([BUD YTD XR2 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID],-12,month)) // BUD PY YTD X-rate (YTD Based) IL: The YTD value for the same period last year.
BUD R12 ILYYIL version of same GL measureN 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 IL], FILTER ( ALL ( 'REPORTING PERIOD' ), 'REPORTING PERIOD'[Reporting Year Period] >= First_Period && 'REPORTING PERIOD'[Reporting Year Period] <= Last_Period ) ) // BUD R12 IL: 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 ILYYIL version of same GL measureN 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 IL], FILTER ( ALL ( 'REPORTING PERIOD' ), 'REPORTING PERIOD'[Reporting Year Period] >= First_Period && 'REPORTING PERIOD'[Reporting Year Period] <= Last_Period ) ) // BUD R12 Trans IL: 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 R12 XR1 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), [BUD XR1 (Period Based) IL] + CALCULATE([BUD XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([BUD XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([BUD XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([BUD XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([BUD XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([BUD XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([BUD XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([BUD XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([BUD XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([BUD XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([BUD XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // BUD R12 X-rate (Period Based) IL: The sum of [BUD XR1 (Period Based) IL] for the current month and [BUD XR1 (Period Based) IL] 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 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), [BUD R12 IL]*[Conversion rate XR1 IL]) // BUD R12 X-rate (YTD Based) IL: 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 XR2 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), [BUD XR2 (Period Based) IL] + CALCULATE([BUD XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([BUD XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([BUD XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([BUD XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([BUD XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([BUD XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([BUD XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([BUD XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([BUD XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([BUD XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([BUD XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // BUD R12 X-rate (Period Based) IL: The sum of [BUD XR2 (Period Based) IL] for the current month and [BUD XR2 (Period Based) IL] 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 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[BUD R12 IL]*[Conversion rate XR2 IL])) // BUD R12 X-rate (YTD Based) IL: The R12-value multiplied with the rate at the that specific Reporting period. // The calculation is done for one company at the tme 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 Trans ILYNIL version of same GL measureNSUM('IL ANALYSIS'[BUD_PERIOD_CURR])
BUD XR1 (Period Based) ILYYIL version of same GL measureN IF(HASONEVALUE('CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('IL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code]) ,"@GLAmount",CALCULATE([BUD IL]) ,"@XRates",CALCULATE(SELECTEDVALUE('X-RATES 1'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount )
BUD XR1 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([BUD IL]*[Conversion rate XR1 IL]) ), SUMX (VALUES ( COMPANY[ID] ), ([BUD YTD IL]*[Conversion rate XR1 IL]) - ([BUD OB IL]*[Conversion rate PP XR1 IL])) ) ) // BUD X-rate (YTD Based) IL: (BUD YTD X-rate IL) minus (OB IL * 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.
BUD XR2 (Period Based) ILYYIL version of same GL measureN IF(HASONEVALUE('CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('IL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code]) ,"@GLAmount",CALCULATE([BUD IL]) ,"@XRates",CALCULATE(SELECTEDVALUE('X-RATES 2'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount )
BUD XR2 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([BUD IL]*[Conversion rate XR2 IL]) ), SUMX (VALUES ( COMPANY[ID] ), ([BUD YTD IL]*[Conversion rate XR2 IL]) - ([BUD OB IL]*[Conversion rate PP XR2 IL])) ) ) // BUD X-rate (YTD Based) IL: (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.
BUD YTD ILYYIL version of same GL measureNCALCULATE([BUD IL], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('IL ANALYSIS'[BUD_OB_PERIOD_DOM]), DATESYTD('REPORTING PERIOD'[ID]))
BUD YTD Trans ILYYIL version of same GL measureNCALCULATE([BUD Trans IL], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('IL ANALYSIS'[BUD_OB_PERIOD_CURR]), DATESYTD('REPORTING PERIOD'[ID]))
BUD YTD XR1 (Period Based) ILYYIL version of same GL measureN CALCULATE ( [BUDOBPeriodZeroXR1 IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [BUD XR1 (Period Based) IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // BUD YTD X-rate (Period Based) IL: This YTD value includes the sum of both OB and BUD values.
BUD YTD XR1 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[BUD YTD IL]*[Conversion rate XR1 IL])) // BUD YTD X-rate (YTD Based) IL: 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 (Period Based) ILYYIL version of same GL measureN CALCULATE ( [BUDOBPeriodZeroXR2 IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [BUD XR2 (Period Based) IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // BUD YTD X-rate (Period Based) IL: This YTD value includes the sum of both OB and BUD values.
BUD YTD XR2 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[BUD YTD IL]*[Conversion rate XR2 IL])) // BUD YTD X-rate (YTD Based) IL: 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.
BUDOBPeriodZero ILYYIL version of same GL measureN //Calulcates the incoming balance related to [BUD IL], 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 IL], DATEADD('REPORTING PERIOD'[ID],-DiffInDays+1, DAY) )
BUDOBPeriodZeroXR1 ILYYIL version of same GL measureN IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'IL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'IL 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 IL: Calculates the OB X-rate IL 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).
BUDOBPeriodZeroXR2 ILYYIL version of same GL measureN IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'IL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'IL 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 IL: 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 ILYNIL version of same GL measureNSUM('IL ANALYSIS'[CFC_PERIOD_DOM])
CFC OB ILYYIL version of same GL measureNIF(ISBLANK([CFC YTD IL]) , BLANK() ,([CFC YTD IL] - [CFC IL]))
CFC OB Trans ILYYIL version of same GL measureNIF(ISBLANK([CFC YTD Trans IL]) , BLANK() ,([CFC YTD Trans IL] - [CFC Trans IL]))
CFC OB XR1 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [CFC OB IL]*[Conversion rate XR1 IL])) // CFC OB X-rate (Period Based) IL: [CFC OB IL] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates.
CFC OB XR1 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([CFC OB XR1 (Period Based) IL]), CALCULATE([CFC YTD XR1 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // CFC OB X-rate (YTD Based) IL: 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 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [CFC OB IL]*[Conversion rate XR2 IL])) // CFC OB X-rate (Period Based) IL: [CFC OB] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates.
CFC OB XR2 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([CFC OB XR2 (Period Based) IL]), CALCULATE([CFC YTD XR2 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // CFC OB X-rate (YTD Based) IL: 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 R12 ILYYIL version of same GL measureN 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 IL], FILTER ( ALL ( 'REPORTING PERIOD' ), 'REPORTING PERIOD'[Reporting Year Period] >= First_Period && 'REPORTING PERIOD'[Reporting Year Period] <= Last_Period ) ) // CFC R12 IL: 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.
CFC R12 Trans ILYYIL version of same GL measureN 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 IL], FILTER ( ALL ( 'REPORTING PERIOD' ), 'REPORTING PERIOD'[Reporting Year Period] >= First_Period && 'REPORTING PERIOD'[Reporting Year Period] <= Last_Period ) ) // CFC R12 Trans IL: 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.
CFC R12 XR1 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), [CFC XR1 (Period Based) IL] + CALCULATE([CFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([CFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([CFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([CFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([CFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([CFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([CFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([CFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([CFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([CFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([CFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // CFC R12 X-rate (Period Based) IL: The sum of [CFC XR1 (Period Based) IL] for the current month and [CFC XR1 (Period Based) IL] 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 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), [CFC R12 IL]*[Conversion rate XR1 IL]) // CFC R12 X-rate (YTD Based) IL: 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 XR2 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), [CFC XR2 (Period Based) IL] + CALCULATE([CFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([CFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([CFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([CFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([CFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([CFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([CFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([CFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([CFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([CFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([CFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // CFC R12 X-rate (Period Based) IL: The sum of [CFC XR2 (Period Based) IL] for the current month and [CFC XR2 (Period Based) IL] 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 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[CFC R12 IL]*[Conversion rate XR2 IL])) // CFC R12 X-rate (YTD Based) IL: The R12-value multiplied with the rate at the that specific Reporting period. // The calculation is done for one company at the tme 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 Trans ILYNIL version of same GL measureNSUM('IL ANALYSIS'[CFC_PERIOD_CURR])
CFC XR1 (Period Based) ILYYIL version of same GL measureN IF(HASONEVALUE('CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('IL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code]) ,"@GLAmount",CALCULATE([CFC IL]) ,"@XRates",CALCULATE(SELECTEDVALUE('X-RATES 1'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount )
CFC XR1 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([CFC IL]*[Conversion rate XR1 IL]) ), SUMX (VALUES ( COMPANY[ID] ), ([CFC YTD IL]*[Conversion rate XR1 IL]) - ([CFC OB IL]*[Conversion rate PP XR1 IL])) ) ) // CFC X-rate (YTD Based) IL: (CFC YTD X-rate IL) minus (OB IL * 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.
CFC XR2 (Period Based) ILYYIL version of same GL measureN IF(HASONEVALUE('CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('IL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code]) ,"@GLAmount",CALCULATE([CFC IL]) ,"@XRates",CALCULATE(SELECTEDVALUE('X-RATES 2'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount )
CFC XR2 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([CFC IL]*[Conversion rate XR2 IL]) ), SUMX (VALUES ( COMPANY[ID] ), ([CFC YTD IL]*[Conversion rate XR2 IL]) - ([CFC OB IL]*[Conversion rate PP XR2 IL])) ) ) // CFC X-rate (YTD Based) IL: (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.
CFC YTD ILYYIL version of same GL measureNCALCULATE([CFC IL], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('IL ANALYSIS'[CFC_OB_PERIOD_DOM]), DATESYTD('REPORTING PERIOD'[ID]))
CFC YTD Trans ILYYIL version of same GL measureNCALCULATE([CFC Trans IL], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('IL ANALYSIS'[CFC_OB_PERIOD_CURR]), DATESYTD('REPORTING PERIOD'[ID]))
CFC YTD XR1 (Period Based) ILYYIL version of same GL measureN CALCULATE ( [CFCOBPeriodZeroXR1 IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [CFC XR1 (Period Based) IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // CFC YTD X-rate (Period Based) IL: This YTD value includes the sum of both OB and CFC values.
CFC YTD XR1 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[CFC YTD IL]*[Conversion rate XR1 IL])) // CFC YTD X-rate (YTD Based) IL: 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 (Period Based) ILYYIL version of same GL measureN CALCULATE ( [CFCOBPeriodZeroXR2 IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [CFC XR2 (Period Based) IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // CFC YTD X-rate (Period Based) IL: This YTD value includes the sum of both OB and CFC values.
CFC YTD XR2 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[CFC YTD IL]*[Conversion rate XR2 IL])) // CFC YTD X-rate (YTD Based) IL: 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.
CFCOBPeriodZero ILYYIL version of same GL measureN //Calulcates the incoming balance related to [CFC IL], 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 IL], DATEADD('REPORTING PERIOD'[ID],-DiffInDays+1, DAY) )
CFCOBPeriodZeroXR1 ILYYIL version of same GL measureN IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'IL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'IL 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 IL: Calculates the OB X-rate IL 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).
CFCOBPeriodZeroXR2 ILYYIL version of same GL measureN IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'IL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'IL 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 IL: 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).
Conversion rate PP XR1 ILYYIL version of same GL measureN CALCULATE([Conversion rate XR1 IL], DATEADD('REPORTING PERIOD'[ID],-1,month)) // Conversion rate XR1 PP IL: Rate for the previous reporting period. // NOTE: This measure requires that companies never change their ' company_base_currency '-value.
Conversion rate PP XR2 ILYYIL version of same GL measureN CALCULATE([Conversion rate XR2 IL], DATEADD('REPORTING PERIOD'[ID],-1,month)) // Conversion rate XR2 PP IL: Rate for the previous reporting period. // NOTE: This measure requires that companies never change their ' company_base_currency '-value.
Conversion rate XR1 ILYYIL version of same GL measureN 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('IL 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 XR2 ILYYIL version of same GL measureN 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('IL 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 )
Diff GL vs IL (ACT Acc Calendar)YNDifference between ACT GL and ACT IL by accounting calendarN[ACT (Acc Calendar)] - [ACT (Acc Calendar) IL]
Diff GL vs IL (ACT Acc Calendar)(%)YNDifference(%) between ACT GL and ACT IL by accounting calendarNDIVIDE([Diff GL vs IL (ACT Acc Calendar)],ABS([ACT (Acc Calendar) IL]), Blank())
Diff GL vs IL (ACT OB Acc Calendar)YNDifference between ACT OB GL and ACT OB IL, to present using accounting calendarN[ACT OB (Acc Calendar)] - [ACT OB (Acc Calendar) IL]
Diff GL vs IL (ACT OB Acc Calendar)(%)YNDifference(%) between ACT OB GL and ACT OB IL, to present using accounting calendarNDIVIDE([Diff GL vs IL (ACT OB Acc Calendar)],ABS([ACT OB (Acc Calendar) IL]), Blank())
Diff GL vs IL (ACT Trans)YNDifference between ACT GL and ACT IL, in transaction currencyN[ACT Trans] - [ACT Trans IL]
Diff GL vs IL (ACT Trans)(%)YNDifference(%) between ACT GL and ACT IL, in transaction currencyNDIVIDE([Diff GL vs IL (ACT Trans)],ABS([ACT Trans IL]), Blank())
Diff GL vs IL (ACT XR1 Period Based)YNDifference between ACT GL and ACT IL, in XR1(Period Based) currencyN[ACT XR1 (Period Based)] - [ACT XR1 (Period Based) IL]
Diff GL vs IL (ACT XR1 Period Based)(%)YNDifference(%) between ACT GL and ACT IL, in XR1(Period Based) currencyNDIVIDE([Diff GL vs IL (ACT XR1 Period Based)],ABS([ACT XR1 (Period Based) IL]), Blank())
Diff GL vs IL (ACT XR1 YTD Based)YNDifference between ACT GL and ACT IL, in XR1(YTD Based) currencyN[ACT XR1 (YTD Based)] - [ACT XR1 (YTD Based) IL]
Diff GL vs IL (ACT XR1 YTD Based)(%)YNDifference(%) between ACT GL and ACT IL, in XR1(YTD Based) currencyNDIVIDE([Diff GL vs IL (ACT XR1 YTD Based)],ABS([ACT XR1 (YTD Based) IL]), Blank())
Diff GL vs IL (ACT XR2 Period Based)YNDifference between ACT GL and ACT IL, in XR2(Period Based) currencyN[ACT XR2 (Period Based)] - [ACT XR2 (Period Based) IL]
Diff GL vs IL (ACT XR2 Period Based)(%)YNDifference(%) between ACT GL and ACT IL, in XR2(Period Based) currencyNDIVIDE([Diff GL vs IL (ACT XR2 Period Based)],ABS([ACT XR2 (Period Based) IL]), Blank())
Diff GL vs IL (ACT XR2 YTD Based)YNDifference between ACT GL and ACT IL, in XR2(YTD Based) currencyN[ACT XR2 (YTD Based)] - [ACT XR2 (YTD Based) IL]
Diff GL vs IL (ACT XR2 YTD Based)(%)YNDifference(%) between ACT GL and ACT IL, in XR2(YTD Based) currencyNDIVIDE([Diff GL vs IL (ACT XR2 YTD Based)],ABS([ACT XR2 (YTD Based) IL]), Blank())
Diff GL vs IL (ACT YTD Acc Calendar)YNDifference between ACT YTD GL and ACT YTD IL by accounting calendarN[ACT YTD (Acc Calendar)] - [ACT YTD (Acc Calendar) IL]
Diff GL vs IL (ACT YTD Acc Calendar)(%)YNDifference(%) between ACT YTD GL and ACT YTD IL by accounting calendarNDIVIDE([Diff GL vs IL (ACT YTD Acc Calendar)],ABS([ACT YTD (Acc Calendar) IL]), Blank())
Diff GL vs IL (ACT YTD Trans)YNDifference between ACT YTD GL and ACT YTD IL, in transaction currencyN[ACT YTD Trans] - [ACT YTD Trans IL]
Diff GL vs IL (ACT YTD Trans)(%)YNDifference(%) between ACT YTD GL and ACT YTD IL, in transaction currencyNDIVIDE([Diff GL vs IL (ACT YTD Trans)],ABS([ACT YTD Trans IL]), Blank())
Diff GL vs IL (ACT YTD XR1 Period Based)YNDifference between ACT YTD GL and ACT YTD IL, in XR1(Period Based) currencyN[ACT YTD XR1 (Period Based)] - [ACT YTD XR1 (Period Based) IL]
Diff GL vs IL (ACT YTD XR1 Period Based)(%)YNDifference(%) between ACT YTD GL and ACT YTD IL, in XR1(Period Based) currencyNDIVIDE([Diff GL vs IL (ACT YTD XR1 Period Based)],ABS([ACT YTD XR1 (Period Based) IL]), Blank())
Diff GL vs IL (ACT YTD XR1 YTD Based)YNDifference between ACT YTD GL and ACT YTD IL, in XR1(YTD Based) currencyN[ACT YTD XR1 (YTD Based)] - [ACT YTD XR1 (YTD Based) IL]
Diff GL vs IL (ACT YTD XR1 YTD Based)(%)YNDifference(%) between ACT YTD GL and ACT YTD IL, in XR1(YTD Based) currencyNDIVIDE([Diff GL vs IL (ACT YTD XR1 YTD Based)],ABS([ACT YTD XR1 (YTD Based) IL]), Blank())
Diff GL vs IL (ACT YTD XR2 Period Based)YNDifference between ACT YTD GL and ACT YTD IL, in XR2(Period Based) currencyN[ACT YTD XR2 (Period Based)] - [ACT YTD XR2 (Period Based) IL]
Diff GL vs IL (ACT YTD XR2 Period Based)(%)YNDifference(%) between ACT YTD GL and ACT YTD IL, in XR2(Period Based) currencyNDIVIDE([Diff GL vs IL (ACT YTD XR2 Period Based)],ABS([ACT YTD XR2 (Period Based) IL]), Blank())
Diff GL vs IL (ACT YTD XR2 YTD Based)YNDifference between ACT YTD GL and ACT YTD IL, in XR2(YTD Based) currencyN[ACT YTD XR2 (YTD Based)] - [ACT YTD XR2 (YTD Based) IL]
Diff GL vs IL (ACT YTD XR2 YTD Based)(%)YNDifference(%) between ACT YTD GL and ACT YTD IL, in XR2(YTD Based) currencyNDIVIDE([Diff GL vs IL (ACT YTD XR2 YTD Based)],ABS([ACT YTD XR2 (YTD Based) IL]), Blank())
Diff GL vs IL (ACT YTD)YNDifference between ACT YTD GL and ACT YTD ILN[ACT YTD] - [ACT YTD IL]
Diff GL vs IL (ACT YTD)(%)YNDifference(%) between ACT YTD GL and ACT YTD ILNDIVIDE([Diff GL vs IL (ACT YTD)],ABS([ACT YTD IL]), Blank())
Diff GL vs IL (ACT)YNDifference between ACT GL and ACT ILN[ACT] - [ACT IL]
Diff GL vs IL (ACT)(%)YNDifference(%) between ACT GL and ACT ILNDIVIDE([Diff GL vs IL (ACT)],ABS([ACT IL]), Blank())
Diff GL vs IL (BUD Trans)YNDifference between BUD GL and BUD IL, in transaction currencyN[BUD Trans] - [BUD Trans IL]
Diff GL vs IL (BUD Trans)(%)YNDifference(%) between BUD GL and BUD IL, in transaction currencyNDIVIDE([Diff GL vs IL (BUD Trans)],ABS([BUD Trans IL]), Blank())
Diff GL vs IL (BUD XR1 Period Based)YNDifference between BUD GL and BUD IL, in XR1(Period Based) currencyN[BUD XR1 (Period Based)] - [BUD XR1 (Period Based) IL]
Diff GL vs IL (BUD XR1 Period Based)(%)YNDifference(%) between BUD GL and BUD IL, in XR1(Period Based) currencyNDIVIDE([Diff GL vs IL (BUD XR1 Period Based)],ABS([BUD XR1 (Period Based) IL]), Blank())
Diff GL vs IL (BUD XR1 YTD Based)YNDifference between BUD GL and BUD IL, in XR1(YTD Based) currencyN[BUD XR1 (YTD Based)] - [BUD XR1 (YTD Based) IL]
Diff GL vs IL (BUD XR1 YTD Based)(%)YNDifference(%) between BUD GL and BUD IL, in XR1(YTD Based) currencyNDIVIDE([Diff GL vs IL (BUD XR1 YTD Based)],ABS([BUD XR1 (YTD Based) IL]), Blank())
Diff GL vs IL (BUD XR2 Period Based)YNDifference between BUD GL and BUD IL, in in XR2(Period Based) currencyN[BUD XR2 (Period Based)] - [BUD XR2 (Period Based) IL]
Diff GL vs IL (BUD XR2 Period Based)(%)YNDifference(%) between BUD GL and BUD IL, in XR2(Period Based) currencyNDIVIDE([Diff GL vs IL (BUD XR2 Period Based)],ABS([BUD XR2 (Period Based) IL]), Blank())
Diff GL vs IL (BUD XR2 YTD Based)YNDifference between BUD GL and BUD IL, in XR2(YTD Based) currencyN[BUD XR2 (YTD Based)] - [BUD XR2 (YTD Based) IL]
Diff GL vs IL (BUD XR2 YTD Based)(%)YNDifference(%) between BUD GL and BUD IL, in XR2(YTD Based) currencyNDIVIDE([Diff GL vs IL (BUD XR2 YTD Based)],ABS([BUD XR2 (YTD Based) IL]), Blank())
Diff GL vs IL (BUD YTD Trans)YNDifference between BUD YTD GL and BUD YTD IL, in transaction currencyN[BUD YTD Trans] - [BUD YTD Trans IL]
Diff GL vs IL (BUD YTD Trans)(%)YNDifference(%) between BUD YTD GL and BUD YTD IL, in transaction currencyNDIVIDE([Diff GL vs IL (BUD YTD Trans)],ABS([BUD YTD Trans IL]), Blank())
Diff GL vs IL (BUD YTD XR1 Period Based)YNDifference between BUD YTD GL and BUD YTD IL, in XR1(Period Based) currencyN[BUD YTD XR1 (Period Based)] - [BUD YTD XR1 (Period Based) IL]
Diff GL vs IL (BUD YTD XR1 Period Based)(%)YNDifference(%) between BUD YTD GL and BUD YTD IL, in XR1(Period Based) currencyNDIVIDE([Diff GL vs IL (BUD YTD XR1 Period Based)],ABS([BUD YTD XR1 (Period Based) IL]), Blank())
Diff GL vs IL (BUD YTD XR1 YTD Based)YNDifference between BUD YTD GL and BUD YTD IL, in XR1(YTD Based) currencyN[BUD YTD XR1 (YTD Based)] - [BUD YTD XR1 (YTD Based) IL]
Diff GL vs IL (BUD YTD XR1 YTD Based)(%)YNDifference(%) between BUD YTD GL and BUD YTD IL, in XR1(YTD Based) currencyNDIVIDE([Diff GL vs IL (BUD YTD XR1 YTD Based)],ABS([BUD YTD XR1 (YTD Based) IL]), Blank())
Diff GL vs IL (BUD YTD XR2 Period Based)YNDifference between BUD YTD GL and BUD YTD IL, in XR2(Period Based) currencyN[BUD YTD XR2 (Period Based)] - [BUD YTD XR2 (Period Based) IL]
Diff GL vs IL (BUD YTD XR2 Period Based)(%)YNDifference(%) between BUD YTD GL and BUD YTD IL, in XR2(Period Based) currencyNDIVIDE([Diff GL vs IL (BUD YTD XR2 Period Based)],ABS([BUD YTD XR2 (Period Based) IL]), Blank())
Diff GL vs IL (BUD YTD XR2 YTD Based)YNDifference between BUD YTD GL and BUD YTD IL, in XR2(YTD Based) currencyN[BUD YTD XR2 (YTD Based)] - [BUD YTD XR2 (YTD Based) IL]
Diff GL vs IL (BUD YTD XR2 YTD Based)(%)YNDifference(%) between BUD YTD GL and BUD YTD IL, in XR2(YTD Based) currencyNDIVIDE([Diff GL vs IL (BUD YTD XR2 YTD Based)],ABS([BUD YTD XR2 (YTD Based) IL]), Blank())
Diff GL vs IL (BUD YTD)YNDifference between BUD YTD GL and BUD YTD ILN[BUD YTD] - [BUD YTD IL]
Diff GL vs IL (BUD YTD)(%)YNDifference(%) between BUD YTD GL and BUD YTD ILNDIVIDE([Diff GL vs IL (BUD YTD)],ABS([BUD YTD IL]), Blank())
Diff GL vs IL (BUD)YNDifference between BUD GL and BUD ILN[BUD] - [BUD IL]
Diff GL vs IL (BUD)(%)YNDifference(%) between BUD GL and BUD ILNDIVIDE([Diff GL vs IL (BUD)],ABS([BUD IL]), Blank())
Diff GL vs IL (CFC Trans)YNDifference between CFC GL and CFC IL, in transaction currencyN[CFC Trans] - [CFC Trans IL]
Diff GL vs IL (CFC Trans)(%)YNDifference(%) between CFC GL and CFC IL, in transaction currencyNDIVIDE([Diff GL vs IL (CFC Trans)],ABS([CFC Trans IL]), Blank())
Diff GL vs IL (CFC XR1 Period Based)YNDifference between CFC GL and CFC IL, in XR1(Period Based) currencyN[CFC XR1 (Period Based)] - [CFC XR1 (Period Based) IL]
Diff GL vs IL (CFC XR1 Period Based)(%)YNDifference(%) between CFC GL and CFC IL, in XR1(Period Based) currencyNDIVIDE([Diff GL vs IL (CFC XR1 Period Based)],ABS([CFC XR1 (Period Based) IL]), Blank())
Diff GL vs IL (CFC XR1 YTD Based)YNDifference between CFC GL and CFC IL, in XR1(YTD Based) currencyN[CFC XR1 (YTD Based)] - [CFC XR1 (YTD Based) IL]
Diff GL vs IL (CFC XR1 YTD Based)(%)YNDifference(%) between CFC GL and CFC IL, in XR1(YTD Based) currencyNDIVIDE([Diff GL vs IL (CFC XR1 YTD Based)],ABS([CFC XR1 (YTD Based) IL]), Blank())
Diff GL vs IL (CFC XR2 Period Based)YNDifference between CFC GL and CFC IL, in XR2(Period Based) currencyN[CFC XR2 (Period Based)] - [CFC XR2 (Period Based) IL]
Diff GL vs IL (CFC XR2 Period Based)(%)YNDifference(%) between CFC GL and CFC IL, in XR2(Period Based) currencyNDIVIDE([Diff GL vs IL (CFC XR2 Period Based)],ABS([CFC XR2 (Period Based) IL]), Blank())
Diff GL vs IL (CFC XR2 YTD Based)YNDifference between CFC GL and CFC IL, in XR2(YTD Based) currencyN[CFC XR2 (YTD Based)] - [CFC XR2 (YTD Based) IL]
Diff GL vs IL (CFC XR2 YTD Based)(%)YNDifference(%) between CFC GL and CFC IL, in XR2(YTD Based) currencyNDIVIDE([Diff GL vs IL (CFC XR2 YTD Based)],ABS([CFC XR2 (YTD Based) IL]), Blank())
Diff GL vs IL (CFC YTD Trans)YNDifference between CFC YTD GL and CFC YTD IL, in transaction currencyN[CFC YTD Trans] - [CFC YTD Trans IL]
Diff GL vs IL (CFC YTD Trans)(%)YNDifference(%) between CFC YTD GL and CFC YTD IL, in transaction currencyNDIVIDE([Diff GL vs IL (CFC YTD Trans)],ABS([CFC YTD Trans IL]), Blank())
Diff GL vs IL (CFC YTD XR1 Period Based)YNDifference between CFC YTD GL and CFC YTD IL, in XR1(Period Based) currencyN[CFC YTD XR1 (Period Based)] - [CFC YTD XR1 (Period Based) IL]
Diff GL vs IL (CFC YTD XR1 Period Based)(%)YNDifference(%) between CFC YTD GL and CFC YTD IL, in XR1(Period Based) currencyNDIVIDE([Diff GL vs IL (CFC YTD XR1 Period Based)],ABS([CFC YTD XR1 (Period Based) IL]), Blank())
Diff GL vs IL (CFC YTD XR1 YTD Based)YNDifference between CFC YTD GL and CFC YTD IL, in XR1(YTD Based) currencyN[CFC YTD XR1 (YTD Based)] - [CFC YTD XR1 (YTD Based) IL]
Diff GL vs IL (CFC YTD XR1 YTD Based)(%)YNDifference(%) between CFC YTD GL and CFC YTD IL, in XR1(YTD Based) currencyNDIVIDE([Diff GL vs IL (CFC YTD XR1 YTD Based)],ABS([CFC YTD XR1 (YTD Based) IL]), Blank())
Diff GL vs IL (CFC YTD XR2 Period Based)YNDifference between CFC YTD GL and CFC YTD IL, in XR2(Period Based) currencyN[CFC YTD XR2 (Period Based)] - [CFC YTD XR2 (Period Based) IL]
Diff GL vs IL (CFC YTD XR2 Period Based)(%)YNDifference(%) between CFC YTD GL and CFC YTD IL, in XR2(Period Based) currencyNDIVIDE([Diff GL vs IL (CFC YTD XR2 Period Based)],ABS([CFC YTD XR2 (Period Based) IL]), Blank())
Diff GL vs IL (CFC YTD XR2 YTD Based)YNDifference between CFC YTD GL and CFC YTD IL, in XR2(YTD Based) currencyN[CFC YTD XR2 (YTD Based)] - [CFC YTD XR2 (YTD Based) IL]
Diff GL vs IL (CFC YTD XR2 YTD Based)(%)YNDifference(%) between CFC YTD GL and CFC YTD IL, in XR2(YTD Based) currencyNDIVIDE([Diff GL vs IL (CFC YTD XR2 YTD Based)],ABS([CFC YTD XR2 (YTD Based) IL]), Blank())
Diff GL vs IL (CFC YTD)YNDifference between CFC YTD GL and CFC YTD ILN[CFC YTD] - [CFC YTD IL]
Diff GL vs IL (CFC YTD)(%)YNDifference(%) between CFC YTD GL and CFC YTD ILNDIVIDE([Diff GL vs IL (CFC YTD)],ABS([CFC YTD IL]), Blank())
Diff GL vs IL (CFC)YNDifference between CFC GL and CFC ILN[CFC] - [CFC IL]
Diff GL vs IL (CFC)(%)YNDifference(%) between CFC GL and CFC ILNDIVIDE([Diff GL vs IL (CFC)],ABS([CFC IL]), Blank())
Diff GL vs IL (NFC Trans)YNDifference between NFC GL and NFC IL, in transaction currencyN[NFC Trans] - [NFC Trans IL]
Diff GL vs IL (NFC Trans)(%)YNDifference(%) between NFC GL and NFC IL, in transaction currencyNDIVIDE([Diff GL vs IL (NFC Trans)],ABS([NFC Trans IL]), Blank())
Diff GL vs IL (NFC XR1 Period Based)YNDifference between NFC GL and NFC IL, in XR1(Period Based) currencyN[NFC XR1 (Period Based)] - [NFC XR1 (Period Based) IL]
Diff GL vs IL (NFC XR1 Period Based)(%)YNDifference(%) between NFC GL and NFC IL, in XR1(Period Based) currencyNDIVIDE([Diff GL vs IL (NFC XR1 Period Based)],ABS([NFC XR1 (Period Based) IL]), Blank())
Diff GL vs IL (NFC XR1 YTD Based)YNDifference between NFC GL and NFC IL, in XR1(YTD Based) currencyN[NFC XR1 (YTD Based)] - [NFC XR1 (YTD Based) IL]
Diff GL vs IL (NFC XR1 YTD Based)(%)YNDifference(%) between NFC GL and NFC IL, in XR1(YTD Based) currencyNDIVIDE([Diff GL vs IL (NFC XR1 YTD Based)],ABS([NFC XR1 (YTD Based) IL]), Blank())
Diff GL vs IL (NFC XR2 Period Based)YNDifference between NFC GL and NFC IL, in XR2(Period Based) currencyN[NFC XR2 (Period Based)] - [NFC XR2 (Period Based) IL]
Diff GL vs IL (NFC XR2 Period Based)(%)YNDifference(%) between NFC GL and NFC IL, in XR2(Period Based) currencyNDIVIDE([Diff GL vs IL (NFC XR2 Period Based)],ABS([NFC XR2 (Period Based) IL]), Blank())
Diff GL vs IL (NFC XR2 YTD Based)YNDifference between NFC GL and NFC IL, in XR2(YTD Based) currencyN[NFC XR2 (YTD Based)] - [NFC XR2 (YTD Based) IL]
Diff GL vs IL (NFC XR2 YTD Based)(%)YNDifference(%) between NFC GL and NFC IL, in XR2(YTD Based) currencyNDIVIDE([Diff GL vs IL (NFC XR2 YTD Based)],ABS([NFC XR2 (YTD Based) IL]), Blank())
Diff GL vs IL (NFC YTD Trans)YNDifference between NFC YTD GL and NFC YTD IL, in transaction currencyN[NFC YTD Trans] - [NFC YTD Trans IL]
Diff GL vs IL (NFC YTD Trans)(%)YNDifference(%) between NFC YTD GL and NFC YTD IL, in transaction currencyNDIVIDE([Diff GL vs IL (NFC YTD Trans)],ABS([NFC YTD Trans IL]), Blank())
Diff GL vs IL (NFC YTD XR1 Period Based)YNDifference between NFC YTD GL and NFC YTD IL, in XR1(Period Based) currencyN[NFC YTD XR1 (Period Based)] - [NFC YTD XR1 (Period Based) IL]
Diff GL vs IL (NFC YTD XR1 Period Based)(%)YNDifference(%) between NFC YTD GL and NFC YTD IL, in XR1(Period Based) currencyNDIVIDE([Diff GL vs IL (NFC YTD XR1 Period Based)],ABS([NFC YTD XR1 (Period Based) IL]), Blank())
Diff GL vs IL (NFC YTD XR1 YTD Based)YNDifference between NFC YTD GL and NFC YTD IL, in XR1(YTD Based) currencyN[NFC YTD XR1 (YTD Based)] - [NFC YTD XR1 (YTD Based) IL]
Diff GL vs IL (NFC YTD XR1 YTD Based)(%)YNDifference(%) between NFC YTD GL and NFC YTD IL, in XR1(YTD Based) currencyNDIVIDE([Diff GL vs IL (NFC YTD XR1 YTD Based)],ABS([NFC YTD XR1 (YTD Based) IL]), Blank())
Diff GL vs IL (NFC YTD XR2 Period Based)YNDifference between NFC YTD GL and NFC YTD IL, in XR2(Period Based) currencyN[NFC YTD XR2 (Period Based)] - [NFC YTD XR2 (Period Based) IL]
Diff GL vs IL (NFC YTD XR2 Period Based)(%)YNDifference(%) between NFC YTD GL and NFC YTD IL, in XR2(Period Based) currencyNDIVIDE([Diff GL vs IL (NFC YTD XR2 Period Based)],ABS([NFC YTD XR2 (Period Based) IL]), Blank())
Diff GL vs IL (NFC YTD XR2 YTD Based)YNDifference between NFC YTD GL and NFC YTD IL, in XR2(YTD Based) currencyN[NFC YTD XR2 (YTD Based)] - [NFC YTD XR2 (YTD Based) IL]
Diff GL vs IL (NFC YTD XR2 YTD Based)(%)YNDifference(%) between NFC YTD GL and NFC YTD IL, in XR2(YTD Based) currencyNDIVIDE([Diff GL vs IL (NFC YTD XR2 YTD Based)],ABS([NFC YTD XR2 (YTD Based) IL]), Blank())
Diff GL vs IL (NFC YTD)YNDifference between NFC YTD GL and NFC YTD ILN[NFC YTD] - [NFC YTD IL]
Diff GL vs IL (NFC YTD)(%)YNDifference(%) between NFC YTD GL and NFC YTD ILNDIVIDE([Diff GL vs IL (NFC YTD)],ABS([NFC YTD IL]), Blank())
Diff GL vs IL (NFC)YNDifference between NFC GL and NFC ILN[NFC] - [NFC IL]
Diff GL vs IL (NFC)(%)YNDifference(%) between NFC GL and NFC ILNDIVIDE([Diff GL vs IL (NFC)],ABS([NFC IL]), Blank())
HasOneValuePeriod ILYNIL version of same GL measureNHASONEVALUE('REPORTING PERIOD'[Reporting Period])
NFC ILYYIL version of same GL measureNSUM('IL ANALYSIS'[NFC_PERIOD_DOM])
NFC OB ILYYIL version of same GL measureNIF(ISBLANK([NFC YTD IL]) , BLANK() ,([NFC YTD IL] - [NFC IL]))
NFC OB Trans ILYYIL version of same GL measureNIF(ISBLANK([NFC YTD Trans IL]) , BLANK() ,([NFC YTD Trans IL] - [NFC Trans IL]))
NFC OB XR1 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [NFC OB IL]*[Conversion rate XR1 IL])) // NFC OB X-rate (Period Based) IL: [NFC OB IL] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates.
NFC OB XR1 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([NFC OB XR1 (Period Based) IL]), CALCULATE([NFC YTD XR1 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // NFC OB X-rate (YTD Based) IL: 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 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), SUMX ( VALUES ( COMPANY[ID] ), [NFC OB IL]*[Conversion rate XR2 IL])) // NFC OB X-rate (Period Based) IL: [NFC OB] multiplied with the [rate] at each specific period. // VALUES-statement to handle the multi-company scenario where companies have different conversion rates.
NFC OB XR2 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) VAR MonthsInPeriod = MAX('REPORTING PERIOD'[Months In Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK() , IF ( CurrPeriod = 1, CALCULATE([NFC OB XR2 (Period Based) IL]), CALCULATE([NFC YTD XR2 (YTD Based) IL], DATEADD('REPORTING PERIOD'[ID], -MonthsInPeriod, MONTH) ) )) // NFC OB X-rate (YTD Based) IL: 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 R12 ILYYIL version of same GL measureN 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 IL], FILTER ( ALL ( 'REPORTING PERIOD' ), 'REPORTING PERIOD'[Reporting Year Period] >= First_Period && 'REPORTING PERIOD'[Reporting Year Period] <= Last_Period ) ) // NFC R12 IL: 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.
NFC R12 Trans ILYYIL version of same GL measureN 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 IL], FILTER ( ALL ( 'REPORTING PERIOD' ), 'REPORTING PERIOD'[Reporting Year Period] >= First_Period && 'REPORTING PERIOD'[Reporting Year Period] <= Last_Period ) ) // NFC R12 Trans IL: 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.
NFC R12 XR1 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), [NFC XR1 (Period Based) IL] + CALCULATE([NFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([NFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([NFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([NFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([NFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([NFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([NFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([NFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([NFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([NFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([NFC XR1 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // NFC R12 X-rate (Period Based) IL: The sum of [NFC XR1 (Period Based) IL] for the current month and [NFC XR1 (Period Based) IL] 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 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), [NFC R12 IL]*[Conversion rate XR1 IL]) // NFC R12 X-rate (YTD Based) IL: 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 XR2 (Period Based) ILYYIL version of same GL measureN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), [NFC XR2 (Period Based) IL] + CALCULATE([NFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -1, MONTH)) + CALCULATE([NFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -2, MONTH)) + CALCULATE([NFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -3, MONTH)) + CALCULATE([NFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -4, MONTH)) + CALCULATE([NFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -5, MONTH)) + CALCULATE([NFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -6, MONTH)) + CALCULATE([NFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -7, MONTH)) + CALCULATE([NFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -8, MONTH)) + CALCULATE([NFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -9, MONTH)) + CALCULATE([NFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -10, MONTH)) + CALCULATE([NFC XR2 (Period Based) IL], DATEADD('REPORTING PERIOD'[ID], -11, MONTH)) ) // NFC R12 X-rate (Period Based) IL: The sum of [NFC XR2 (Period Based) IL] for the current month and [NFC XR2 (Period Based) IL] 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 (YTD Based) ILYNIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[NFC R12 IL]*[Conversion rate XR2 IL])) // NFC R12 X-rate (YTD Based) IL: The R12-value multiplied with the rate at the that specific Reporting period. // The calculation is done for one company at the tme 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 Trans ILYYIL version of same GL measureNSUM('IL ANALYSIS'[NFC_PERIOD_CURR])
NFC XR1 (Period Based) ILYYIL version of same GL measureN IF(HASONEVALUE('CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('IL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code]) ,"@GLAmount",CALCULATE([NFC IL]) ,"@XRates",CALCULATE(SELECTEDVALUE('X-RATES 1'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount )
NFC XR1 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([NFC IL]*[Conversion rate XR1 IL]) ), SUMX (VALUES ( COMPANY[ID] ), ([NFC YTD IL]*[Conversion rate XR1 IL]) - ([NFC OB IL]*[Conversion rate PP XR1 IL])) ) ) // NFC X-rate (YTD Based) IL: (NFC YTD X-rate IL) minus (OB IL * 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.
NFC XR2 (Period Based) ILYYIL version of same GL measureN IF(HASONEVALUE('CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2]), VAR RestatedAmount = ADDCOLUMNS( SUMMARIZE('IL ANALYSIS' ,'REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY 2'[Currency Code]) ,"@GLAmount",CALCULATE([NFC IL]) ,"@XRates",CALCULATE(SELECTEDVALUE('X-RATES 2'[CURRENCYRATE])) ) VAR XAmount = SUMX(RestatedAmount, [@GLAmount] * [@XRates]) RETURN XAmount )
NFC XR2 (YTD Based) ILYYIL version of same GL measureN VAR CurrPeriod = MAX('REPORTING PERIOD'[Reporting Period]) RETURN IF('IL ANALYSIS MEASURES'[HasOneValuePeriod IL] = FALSE(), BLANK(), IF( CurrPeriod = 1, SUMX (VALUES ( COMPANY[ID] ), ([NFC IL]*[Conversion rate XR2 IL]) ), SUMX (VALUES ( COMPANY[ID] ), ([NFC YTD IL]*[Conversion rate XR2 IL]) - ([NFC OB IL]*[Conversion rate PP XR2 IL])) ) ) // NFC X-rate (YTD Based) IL: (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.
NFC YTD ILYYIL version of same GL measureNCALCULATE([NFC IL], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('IL ANALYSIS'[NFC_OB_PERIOD_DOM]), DATESYTD('REPORTING PERIOD'[ID]))
NFC YTD Trans ILYYIL version of same GL measureNCALCULATE([NFC Trans IL], DATESYTD('REPORTING PERIOD'[ID])) + CALCULATE(SUM('IL ANALYSIS'[NFC_OB_PERIOD_CURR]), DATESYTD('REPORTING PERIOD'[ID]))
NFC YTD XR1 (Period Based) ILYYIL version of same GL measureN CALCULATE ( [NFCOBPeriodZeroXR1 IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [NFC XR1 (Period Based) IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // NFC YTD X-rate (Period Based) IL: This YTD value includes the sum of both OB and NFC values.
NFC YTD XR1 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[NFC YTD IL]*[Conversion rate XR1 IL])) // NFC YTD X-rate (YTD Based) IL: 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 (Period Based) ILYYIL version of same GL measureN CALCULATE ( [NFCOBPeriodZeroXR2 IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) + CALCULATE ( [NFC XR2 (Period Based) IL], DATESYTD ( 'REPORTING PERIOD'[ID] ) ) // NFC YTD X-rate (Period Based) IL: This YTD value includes the sum of both OB and NFC values.
NFC YTD XR2 (YTD Based) ILYYIL version of same GL measureN SUMX ( VALUES ( COMPANY[ID] ), LASTNONBLANKVALUE('REPORTING PERIOD'[ID],[NFC YTD IL]*[Conversion rate XR2 IL])) // NFC YTD X-rate (YTD Based) IL: 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.
NFCOBPeriodZero ILYYIL version of same GL measureN //Calulcates the incoming balance related to [NFC IL], 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 IL], DATEADD('REPORTING PERIOD'[ID],-DiffInDays+1, DAY) )
NFCOBPeriodZeroXR1 ILYYIL version of same GL measureN IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 1'[Currency Code X-Rate 1] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'IL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'IL 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 IL: Calculates the OB X-rate IL 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).
NFCOBPeriodZeroXR2 ILYNIL version of same GL measureN IF ( HASONEVALUE ( 'CURRENCY CODE X-RATE 2'[Currency Code X-Rate 2] ), VAR RestatedAmount = ADDCOLUMNS ( SUMMARIZE ( 'IL ANALYSIS','REPORTING PERIOD'[ID],'REPORTING FROM CURRENCY'[Currency Code] ), "@GLAmount", CALCULATE ( SUM ( 'IL 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 IL: 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).
Switch Actual (Acc Calendar) ILYNIL version of same GL measureN[Selected DisplayUnit Switch] * SWITCH([Selected Actual Measure], 1, [ACT (Acc Calendar) IL], 2, [ACT YTD (Acc Calendar) IL] )
Switch Actual (Acc Currency) ILYNIL version of same GL measureN[Selected DisplayUnit Switch] * SWITCH([Selected Actual Measure], 1, [ACT IL], 2, [ACT YTD IL], 3, [ACT R12 IL] ) // List of measures to switch between, the list includes ACTUAL measures on Accounting currency.
Switch Actual (For Drill Through) ILYNIL version of same GL measureN[Switch Actual IL]
Switch Actual (For Drill Through) IL 2YNIL version of same GL measureN[Switch Actual IL]
Switch Actual (Trans Currency) ILYNIL version of same GL measureN[Selected DisplayUnit Switch] * SWITCH([Selected Actual Measure], 4, [ACT Trans IL], 5, [ACT YTD Trans IL], 6, [ACT R12 Trans IL] ) // List of measures to switch between, the list includes ACTUAL measures on Transaction currency.
Switch Actual ILYNIL version of same GL measureN[Selected DisplayUnit Switch] * SWITCH([Selected Actual Measure], 1, [ACT IL], 2, [ACT YTD IL], 3, [ACT R12 IL], 4, [ACT Trans IL], 5, [ACT YTD Trans IL], 6, [ACT R12 Trans IL], 7, [ACT XR1 (Period Based) IL], 8, [ACT YTD XR1 (Period Based) IL], 9, [ACT R12 XR1 (Period Based) IL], 10, [ACT XR2 (Period Based) IL], 11, [ACT YTD XR2 (Period Based) IL], 12, [ACT R12 XR2 (Period Based) IL], 13, [ACT XR1 (YTD Based) IL], 14, [ACT YTD XR1 (YTD Based) IL], 15, [ACT R12 XR1 (YTD Based) IL], 16, [ACT XR2 (YTD Based) IL], 17, [ACT YTD XR2 (YTD Based) IL], 18, [ACT R12 XR2 (YTD Based) IL] )
Switch Comp (ActPY) ILYNIL version of same GL measureN[Selected DisplayUnit Switch] * SWITCH([Selected ActPY Measure], 1, [ACT PY IL], 5, [ACT PY Trans IL], 9, [ACT PY XR1 (Period Based) IL], 13, [ACT PY XR2 (Period Based) IL], 17, [ACT PY XR1 (YTD Based) IL], 21, [ACT PY XR2 (YTD Based) IL], 25, [ACT PY YTD IL], 29, [ACT PY YTD Trans IL], 33, [ACT PY YTD XR1 (Period Based) IL], 37, [ACT PY YTD XR2 (Period Based) IL], 41, [ACT PY YTD XR1 (YTD Based) IL], 45, [ACT PY YTD XR2 (YTD Based) IL], 49, [ACT PY R12 IL], 53, [ACT PY R12 Trans IL], 57, [ACT PY R12 XR1 (Period Based) IL], 61, [ACT PY R12 XR2 (Period Based) IL], 65, [ACT PY R12 XR1 (YTD Based) IL], 69, [ACT PY R12 XR2 (YTD Based) IL] )
Switch Comp (Bud) ILYNIL version of same GL measureN[Selected DisplayUnit Switch] * SWITCH([Selected Bud Measure], 2, [BUD IL], 6, [BUD Trans IL], 10, [BUD XR1 (Period Based) IL], 14, [BUD XR2 (Period Based) IL], 18, [BUD XR1 (YTD Based) IL], 22, [BUD XR2 (YTD Based) IL], 26, [BUD YTD IL], 30, [BUD YTD Trans IL], 34, [BUD YTD XR1 (Period Based) IL], 38, [BUD YTD XR2 (Period Based) IL], 42, [BUD YTD XR1 (YTD Based) IL], 46, [BUD YTD XR2 (YTD Based) IL], 50, [BUD R12 IL], 54, [BUD R12 Trans IL], 58, [BUD R12 XR1 (Period Based) IL], 62, [BUD R12 XR2 (Period Based) IL], 66, [BUD R12 XR1 (YTD Based) IL], 70, [BUD R12 XR2 (YTD Based) IL] )
Switch Comp (CFC) ILYNIL version of same GL measureN[Selected DisplayUnit Switch] * SWITCH([Selected CFC Measure], 3, [CFC IL], 7, [CFC Trans IL], 11, [CFC XR1 (Period Based) IL], 15, [CFC XR2 (Period Based) IL], 19, [CFC XR1 (YTD Based) IL], 23, [CFC XR2 (YTD Based) IL], 27, [CFC YTD IL], 31, [CFC YTD Trans IL], 35, [CFC YTD XR1 (Period Based) IL], 39, [CFC YTD XR2 (Period Based) IL], 43, [CFC YTD XR1 (YTD Based) IL], 47, [CFC YTD XR2 (YTD Based) IL], 51, [CFC R12 IL], 55, [CFC R12 Trans IL], 59, [CFC R12 XR1 (Period Based) IL], 63, [CFC R12 XR2 (Period Based) IL], 67, [CFC R12 XR1 (YTD Based) IL], 71, [CFC R12 XR2 (YTD Based) IL] )
Switch Comp (NFC) ILYNIL version of same GL measureN[Selected DisplayUnit Switch] * SWITCH([Selected NFC Measure], 4, [NFC IL], 8, [NFC Trans IL], 12, [NFC XR1 (Period Based) IL], 16, [NFC XR2 (Period Based) IL], 20, [NFC XR1 (YTD Based) IL], 24, [NFC XR2 (YTD Based) IL], 28, [NFC YTD IL], 32, [NFC YTD Trans IL], 36, [NFC YTD XR1 (Period Based) IL], 40, [NFC YTD XR2 (Period Based) IL], 44, [NFC YTD XR1 (YTD Based) IL], 48, [NFC YTD XR2 (YTD Based) IL], 52, [NFC R12 IL], 56, [NFC R12 Trans IL], 60, [NFC R12 XR1 (Period Based) IL], 64, [NFC R12 XR2 (Period Based) IL], 68, [NFC R12 XR1 (YTD Based) IL], 72, [NFC R12 XR2 (YTD Based) IL] )
Switch Comparison ILYNIL version of same GL measureN[Selected DisplayUnit Switch] * SWITCH([Selected Comparison Measure], 1, [ACT PY IL], 2, [BUD IL], 3, [CFC IL], 4, [NFC IL], 5, [ACT PY Trans IL], 6, [BUD Trans IL], 7, [CFC Trans IL], 8, [NFC Trans IL], 9, [ACT PY XR1 (Period Based) IL], 10, [BUD XR1 (Period Based) IL], 11, [CFC XR1 (Period Based) IL], 12, [NFC XR1 (Period Based) IL], 13, [ACT PY XR2 (Period Based) IL], 14, [BUD XR2 (Period Based) IL], 15, [CFC XR2 (Period Based) IL], 16, [NFC XR2 (Period Based) IL], 17, [ACT PY XR1 (YTD Based) IL], 18, [BUD XR1 (YTD Based) IL], 19, [CFC XR1 (YTD Based) IL], 20, [NFC XR1 (YTD Based) IL], 21, [ACT PY XR2 (YTD Based) IL], 22, [BUD XR2 (YTD Based) IL], 23, [CFC XR2 (YTD Based) IL], 24, [NFC XR2 (YTD Based) IL], 25, [ACT PY YTD IL], 26, [BUD YTD IL], 27, [CFC YTD IL], 28, [NFC YTD IL], 29, [ACT PY YTD Trans IL], 30, [BUD YTD Trans IL], 31, [CFC YTD Trans IL], 32, [NFC YTD Trans IL], 33, [ACT PY YTD XR1 (Period Based) IL], 34, [BUD YTD XR1 (Period Based) IL], 35, [CFC YTD XR1 (Period Based) IL], 36, [NFC YTD XR1 (Period Based) IL], 37, [ACT PY YTD XR2 (Period Based) IL], 38, [BUD YTD XR2 (Period Based) IL], 39, [CFC YTD XR2 (Period Based) IL], 40, [NFC YTD XR2 (Period Based) IL], 41, [ACT PY YTD XR1 (YTD Based) IL], 42, [BUD YTD XR1 (YTD Based) IL], 43, [CFC YTD XR1 (YTD Based) IL], 44, [NFC YTD XR1 (YTD Based) IL], 45, [ACT PY YTD XR2 (YTD Based) IL], 46, [BUD YTD XR2 (YTD Based) IL], 47, [CFC YTD XR2 (YTD Based) IL], 48, [NFC YTD XR2 (YTD Based) IL], 49, [ACT PY R12 IL], 50, [BUD R12 IL], 51, [CFC R12 IL], 52, [NFC R12 IL], 53, [ACT PY R12 Trans IL], 54, [BUD R12 Trans IL], 55, [CFC R12 Trans IL], 56, [NFC R12 Trans IL], 57, [ACT PY R12 XR1 (Period Based) IL], 58, [BUD R12 XR1 (Period Based) IL], 59, [CFC R12 XR1 (Period Based) IL], 60, [NFC R12 XR1 (Period Based) IL], 61, [ACT PY R12 XR2 (Period Based) IL], 62, [BUD R12 XR2 (Period Based) IL], 63, [CFC R12 XR2 (Period Based) IL], 64, [NFC R12 XR2 (Period Based) IL], 65, [ACT PY R12 XR1 (YTD Based) IL], 66, [BUD R12 XR1 (YTD Based) IL], 67, [CFC R12 XR1 (YTD Based) IL], 68, [NFC R12 XR1 (YTD Based) IL], 69, [ACT PY R12 XR2 (YTD Based) IL], 70, [BUD R12 XR2 (YTD Based) IL], 71, [CFC R12 XR2 (YTD Based) IL], 72, [NFC R12 XR2 (YTD Based) IL] )
Switch Diff (ActPY%) ILYNIL version of same GL measureNDIVIDE([Switch Diff (ActPY) IL],ABS([Switch Comp (ActPY) IL]), Blank())
Switch Diff (ActPY) ILYNIL version of same GL measureN[Switch Actual IL] - [Switch Comp (ActPY) IL]
Switch Diff (Bud%) ILYNIL version of same GL measureNDIVIDE([Switch Diff (Bud) IL],ABS([Switch Comp (Bud) IL]), Blank())
Switch Diff (Bud) ILYNIL version of same GL measureN[Switch Actual IL] - [Switch Comp (Bud) IL]
Switch Diff (CFC%) ILYNIL version of same GL measureNDIVIDE([Switch Diff (CFC) IL],ABS([Switch Comp (CFC) IL]), Blank())
Switch Diff (CFC) ILYNIL version of same GL measureN[Switch Actual IL] - [Switch Comp (CFC) IL] // Calculates the difference between the SWITCH ACTUAL and the CFC version of SWITCH COMPARISON measures.
Switch Diff (NFC%) ILYNIL version of same GL measureNDIVIDE([Switch Diff (NFC) IL],ABS([Switch Comp (NFC) IL]), Blank())
Switch Diff (NFC) ILYNIL version of same GL measureN[Switch Actual IL] - [Switch Comp (NFC) IL] // Calculates the difference between the SWITCH ACTUAL and the NFC version of SWITCH COMPARISON measures.
Switch Diff ILYNIL version of same GL measureN[Switch Actual IL] - [Switch Comparison IL]
Switch Diff IL (%)YNIL version of same GL measureNDIVIDE([Switch Diff IL],ABS([Switch Comparison IL]), Blank())
Switch Diff XR (Period Based) ILYNIL version of same GL measureN[Switch XR1 (Period Based) IL] - [Switch XR2 (Period Based) IL]
Switch Diff XR (Period Based) IL (%)YNIL version of same GL measureNDIVIDE([Switch Diff XR (Period Based) IL],ABS([Switch XR2 (Period Based) IL]), Blank())
Switch Diff XR (YTD Based) ILYNIL version of same GL measureN[Switch XR1 (YTD Based) IL] - [Switch XR2 (YTD Based) IL]
Switch Diff XR (YTD Based) IL (%)YNIL version of same GL measureNDIVIDE([Switch Diff XR (YTD Based) IL],ABS([Switch XR2 (YTD Based) IL]), Blank())
Switch XR1 (Period Based) ILYNIL version of same GL measureN[Selected DisplayUnit Switch] * SWITCH([Selected Actual XR1 (Period Based) Measure], 7, [ACT XR1 (Period Based) IL], 8, [ACT YTD XR1 (Period Based) IL], 9, [ACT R12 XR1 (Period Based) IL] )
Switch XR1 (YTD Based) ILYNIL version of same GL measureN[Selected DisplayUnit Switch] * SWITCH([Selected Actual XR1 (YTD Based) Measure], 13, [ACT XR1 (YTD Based) IL], 14, [ACT YTD XR1 (YTD Based) IL], 15, [ACT R12 XR1 (YTD Based) IL] )
Switch XR2 (Period Based) ILYNIL version of same GL measureN[Selected DisplayUnit Switch] * SWITCH([Selected Actual XR2 (Period Based) Measure], 10, [ACT XR2 (Period Based) IL], 11, [ACT YTD XR2 (Period Based) IL], 12, [ACT R12 XR2 (Period Based) IL] )
Switch XR2 (YTD Based) ILYNIL version of same GL measureN[Selected DisplayUnit Switch] * SWITCH([Selected Actual XR2 (YTD Based) Measure], 16, [ACT XR2 (YTD Based) IL], 17, [ACT YTD XR2 (YTD Based) IL], 18, [ACT R12 XR2 (YTD Based) IL] )

Time Intelligence Measures

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

USED BY MODEL(S)

Model Name
General LedgerFinancials

Data source Information

The data source for this object is defined using IFS Developer Tool. The data source contains a number of transformations where the model reads data from the last step, i.e. the Data source view name (DW Source View Name).

Additional information can be found in the online documentation of Information Sources.

Model Table DW Source view (SQL Server) BI Access View Referenced Information Source Recommended Access Type
IL ANALYSIS MEASURESFACT_INTERNAL_LEDGER_ANALYSIS_TMFACT_IL_ANALYSIS_PQ_BIFACT_INTERNAL_LEDGER_ANALYSISData Mart