Variance across years

I'm working with a dynamic calc cube - version 7.X - with the following dimensions: Accounts, Period, Fiscal Year, Scenario, Version, Organization
In the scenario dimension we have the following members: Budget, Actual, Forecast.
I want to create a Scenario member that displays the variance between current year Forecast and prior year Actual.
I've used @VAR("Forecast","Budget") to create a variance Scenario member within the same year, but can't figure out how to do it across years.
Any ideas? Thanks.

@VAR doesn't support cross dimensional members.
However, you could do this (this approach requires an "Expense" UDA to match Expense Reporting members and is assuming you are comparing FY10 Budget to FY09 Actual):
Dynamically calculated formula in member "Bud FY10 vs. Act FY09"
IF(@ISUDA("Account", "Expense") AND @ISMBR("FY10"))
"Actual"->"FY09" - "Budget"->"FY10" ;
ELSEIF(NOT(@ISUDA("Account", "Expense")) AND @ISMBR("FY10"))
"Budget"->"FY10" - "Actual"->"FY09" ;
ENDIF
You could get fancier with @PRIOR and @CURRMBR if you wanted to make it more flexible.
The important thing is to be able to identify the Expense accounts from the non-Expense because it flips the subtraction direction.
Regards,
Cameron Lackpour

Similar Messages

  • Hyperion Planning dynamic forms based on start and end date across years

    Hi All,
    I have a requirement where i need to be able to view a form showing periods across years that are dynamically built depending on the start and end dates. If i have a start date of 01/11/2009 and an end date of 31/7/2013 i want to be able to view a form that shows all of the periods (Jan,Feb etc) in a form that is driven by these dates, in addition it will need to show the actual scenario up to the current month and the forecast from the current month to the end date. So basically if a user inputs the start and end dates the form will display the relevant periods driven by these dates.
    Any tips very much appreciated!

    Hello,
    This is difficult to realize, but you can get quite far with a workaround. The first question is, where do you want to input your selection of time periods? Assuming you have a webform with the complete timeline in months and years and you type in the start period and end period.
    Webforms have the option to suppress rows and columns.
    This can be extended with option of empty cells or not empty cells.
    You will need to apply your creativity on this.
    Put every month-year combination in a column and add the suppression.
    Calculate the timeline between start period and end period with a dummy member, so data exists for these and columns will show.
    Maybe you will need to copy the required timeline into a separate version for this, to avoid having periods which were outside the selection and still have data.
    I hope these hints help a bit in this challenge.
    Regards,
    Philip Hulsebosch
    www.trexco.nl

  • Reporting with Time Variance (previous year vs current year)

    Good day all.
    I would like to ask for advice and help in terms of best way to make this report work:
    Let's say I need to show the % variance between the Total Operating Costs per Gross sqft over different times periods (Previous year to Current Year). The trick is that data must be compared to the same data in the previous year, i.e. if we are in June of current fiscal year, the comparison must be between Oct-June of current fiscal year to Oct-June of previous fiscal year, not the full previous year. The report formula itself would be:
    ([TCO Exp/GSF PY] - [TCO Exp/GSF CY]) / [TCO Exp/GSF PY] * 100
    My guess, I could define a static variable Current Year which developers would have to be changed every year. And then create logical columns: TCO Exp PY (where year=Current Year-1)...while writing this, I realized I'm wrong and there must be a more efficient way to do this. UPD: I've also thought about time-series function AGO, but I'm currently testing it, and I'm not happy with its performance...
    Thank you in advance...
    Message was edited by:
    wildmight

    Hi Wildmight,
    The current value will be the value you will select from the table like you normally would do. These would be values per month if I am correct. Next to the column with the current value, you create an additional column with the AGO function in it.
    Now you will have the current value and next to it the value of the required period ago. You won't need any static variables.
    Let me give you an example for the last three months.
    Period CY PY
    jan-08 50 30
    dec-07 40 20
    nov-07 45 25
    In this case the value 20 corresponds to the period dec-06.
    I hope I made myself clear.
    Good Luck,
    Daan Bakboord

  • Formula to go across years and months to find the value

    Hello,
    I am having difficulty writing a member formula where the rate is supposed to come from anyplace that's available prior to that month and year. This is for Re-forecasting purposes.
    The example of how the concept should work is shown below. I have tried @priors, @shift, and @rangelastval. None of these calculations have been able to go through multiple years at the same time to get the rate from previous years and month. It works in the same year across the periods but not both periods and years.
    Any idea what calculation function or a combination of calculation functions I can use so the calculated amount goes back as many years and months possible until it finds the rate.
    Year
    Periods
          Rate
    Amount
    Calculated amount
    FY15
    Jan
    0
    100
    0
    FY15
    Feb
    0
    100
    0
    FY15
    Mar
    0.4
    100
    40
    FY15
    Apr
    0
    100
    40
    FY15
    May
    0
    100
    40
    FY15
    Jun
    0
    100
    40
    FY15
    Jul
    0
    100
    40
    FY15
    Aug
    0
    100
    40
    FY15
    Sep
    0
    100
    40
    FY15
    Oct
    0
    100
    40
    FY15
    Nov
    0
    100
    40
    FY15
    Dec
    0.3
    100
    30
    FY16
    Jan
    0
    100
    30
    FY16
    Feb
    0
    100
    30
    FY16
    Mar
    0
    100
    30
    FY16
    Apr
    0
    100
    30
    FY16
    May
    0
    100
    30
    FY16
    Jun
    0
    100
    30
    FY16
    Jul
    0
    100
    30
    FY16
    Aug
    0
    100
    30
    FY16
    Sep
    0
    100
    30
    FY16
    Oct
    0
    100
    30
    FY16
    Nov
    0
    100
    30
    FY16
    Dec
    0
    100
    30
    FY17
    Jan
    0
    100
    30
    FY17
    Feb
    0.5
    100
    50
    FY17
    Mar
    0
    100
    50
    FY17
    Apr
    0
    100
    50
    FY17
    May
    0
    100
    50
    FY17
    Jun
    0
    100
    50
    FY17
    Jul
    0
    100
    50
    FY17
    Aug
    0
    100
    50
    FY17
    Sep
    0
    100
    50
    FY17
    Oct
    0
    100
    50
    FY17
    Nov
    0
    100
    50
    FY17
    Dec
    0
    100
    50
    FY18
    Jan
    0
    100
    50
    FY18
    Feb
    0
    100
    50
    FY18
    Mar
    0
    100
    50
    FY18
    Apr
    0
    100
    50
    FY18
    May
    0
    100
    50
    FY18
    Jun
    0
    100
    50
    FY18
    Jul
    0
    100
    50
    FY18
    Aug
    0
    100
    50
    FY18
    Sep
    0
    100
    50
    FY18
    Oct
    0
    100
    50
    FY18
    Nov
    0
    100
    50
    FY18
    Dec
    0
    100
    50
    FY19
    Jan
    0
    100
    50
    FY19
    Feb
    0
    100
    50
    FY19
    Mar
    0
    100
    50
    FY19
    Apr
    0
    100
    50
    FY19
    May
    0
    100
    50
    FY19
    Jun
    0
    100
    50
    FY19
    Jul
    0
    100
    50
    FY19
    Aug
    0
    100
    50
    FY19
    Sep
    0
    100
    50
    FY19
    Oct
    0
    100
    50
    FY19
    Nov
    0
    100
    50
    FY19
    Dec
    0
    100
    50
    FY20
    Jan
    0
    100
    50
    FY20
    Feb
    0
    100
    50
    FY20
    Mar
    0
    100
    50
    FY20
    Apr
    0
    100
    50
    FY20
    May
    0
    100
    50
    FY20
    Jun
    0
    100
    50
    FY20
    Jul
    0
    100
    50
    FY20
    Aug
    0
    100
    50
    FY20
    Sep
    0
    100
    50
    FY20
    Oct
    0
    100
    50
    FY20
    Nov
    0
    100
    50
    FY20
    Dec
    0
    100
    50
    FY21
    Jan
    0
    100
    50
    FY21
    Feb
    0
    100
    50
    FY21
    Mar
    0
    100
    50
    FY21
    Apr
    0
    100
    50
    FY21
    May
    0
    100
    50
    FY21
    Jun
    0
    100
    50
    FY21
    Jul
    0
    100
    50
    FY21
    Aug
    0
    100
    50
    FY21
    Sep
    0
    100
    50
    FY21
    Oct
    0
    100
    50
    FY21
    Nov
    0
    100
    50
    FY21
    Dec
    0
    100
    50
    Thanks in advance!

    ELSE
    IF (@PRIORS(SKIPMISSING, RATE) == #Missing)
      IF (@ISMBR(&FcstYear7))
       "Amount"=Amount*@PRIORS(SKIPMISSING,"Rate",(&FcstStartMo:"Dec"->&FcstYear1, "Jan":"Dec"->&FcstYear2,"Jan":"Dec"->&FcstYear3,"Jan":"Dec"->&FcstYear4,"Jan":"Dec"->&FcstYear5,"Jan":"Dec"->&FcstYear6)));
    similarly repeated for the years 6,5,4,3,2 but it gave the following error "Error: 1200400 Error executing formula for [Check_1] (line 9): scalar double argument expected in function [@_UMINUS]"
    How can I use XRANGE in this because the function has the following limitation?
    @XRANGE can be used only in these functions: @AVGRANGE, @SUMRANGE, @MINRANGE, @MINSRANGE, @MAXRANGE, @MAXSRANGE, @STDDEVRANGE, @MOVSUM, @MOVAVG, @MOVMIN, @MOVMAX, @MOVMED, @SPLINE.

  • Dynamic calc to sum months across years

    I have an Essbase 6.5.5 cube with a periods dimension containing months and weeks as stored members, tagged as time. I also have a year dimension that contains fiscal years and these members are also stored. I need to add together the first month of this year and the last month of last year.
    I can do this:
    M12->LY + M01->TY
    This gives me the right answer and I could setup IF statements to cross dim to the correct LY value, but I would like the formula to dynamically select the correct LY based on the TY year the user sets up in their query. I tried a few combos using @prior and @shift and it is not working correctly.
    Here's what I thought would work:
    M01 + (@SHIFT(Year,-1));
    This formula results in summing just the M01 and nothing from LY. Any thoughts on how to set this formula up?
    Edited by: user11908498 on Sep 16, 2009 5:55 AM
    Edited by: user11908498 on Sep 16, 2009 11:42 AM

    My mistake Gary, the periods dimension is tagged as time and contains months and weeks as stored members. The year dimension contains fiscal years as stored members. I have updated my OP to state that correctly.
    Using your formula:
    "M01" + @SHIFT("M12", -1, @CHILDREN("Year"));
    I'm still just getting the answer of the data contained in M01.
    M12 is in the period dimension tagged as time.
    Year is the fiscal year dimension as a stored member.
    What I want to get is the sum of M01->TY + M12->LY without hard coding the year in a cross dim statement. It seems like this should be a simple formula, but its not working for me.

  • SSRS Variance expression problem. Create a Variance expression. Compare current month with same month from previous year.

    Hello,
    I am using VS2010 shell.  I have a matrix report where I have a row group by Year.  Then I have a column group by Month. 
    When I run the report, I get 2013 data on top of 2014 data.  Now I need to create a variance by year for each month.
    So in the example below, I need to create an expression that will pull the variance for Oct 01... subtracting 2013 from 2014 for the months.  So I need to Subtract 8,222 - 4290.  I have no clue.
    Here is what my rdl looks like.
    Thank you for your help. 

    Hi Adrian,
    If I understand correctly, you want to calculate the difference order between 2013 and 2014 for every month. And there are only two years in the FISCAL_YEAR field.
    If in this scenario, we can simply use the following expression to achieve your requirement:
    =first(Fields!ORDER.Value)-last(Fields!ORDER.Value)
    The following screenshot is for your reference:
    If there are any misunderstanding, please elaborate the issue for further investigation.
    Regards,
    Katherine Xiong
    Katherine Xiong
    TechNet Community Support

  • Multi-year monthly CO report for Actual/Budget/Variance

    I have a requirement of creating a 5-year cost centre report for the following:
    Actual by month (5 years x 12)
    Budget by month (5 years x 12)
    % of the monthly amounts compared to the total (5 years x 12)
    Variance (5 years x 12)
    The request is at the cost element level, by month and for 5 years.  I am trying to decide which reporting tool is appropriate for this request.  If I use the conventional CO report format (report painter) of one column per month for actual/budget/actual %/variance, there will be a lots of columns for 5 years!
    I am familiar with reporting tools of report painter, drill-down and SAP query, although I am not sure if drill-down can be used for CCA.  Would appreciate any suggestion for: 
    1) Reporting tools for multi-year output; and
    2) Report format u2013 example of existing SAP-delivered report

    Do you intend to use a report with 240 columns? I am wondering what would be the purpose of such a large column report.
    Still if needed, you could try with painter itself, may be using page break perhaps. I am not sure of the limitation to the number of column.

  • How to process a cross year claim?

    Hi everyone -
      I have a situation where my client is looking at the possibility of processing claims that cross over from one calendar year to the next.  I understand that the MCOR wage type is set up to assist with this but what exactly are the processing steps for continuing a claim across years?  Do we clear the claim at the end of the prior year and then set up the custom version of the MCOR wage type to take deductions in the new year?  Would we set up the MCOR wage type to act like a balancing wage type?  Would we still see a /561 in the RT?
      Any instructions on exactly what the process should be would be greatly appreciated.  Thank you.

    Hi
    There can be more than one approach for this.But i will tell you how we handles in for UK payroll
    Aproach 1:
    Replicate the employee in your test system figure out how much should be employees taxes, social security , other deductions and net pay to arrive at exact amount employee owes .
    Process employee in current year and deduct so much of the monies from the pay. Better to use deduction wagetypes just so you do not fall in to the minimum pay conditions etc
    Now main thing would be to adjust employee for end of year : Based on employees results you have to adjust end of year results(here i am assuming that you will have these wagetypes)
    From FI postings point of view you may have to make few manual postings for the adjustment.
    Hope this helps
    Regards
    Ajay

  • Calculation across periods

    Hello,
    I have a requirement and I cannot find a solution, I have tried various combinations with calculated / restricted key figures. The query is based on a structure where the rows have several lines & calculations which are for each year. However a couple of the calculation not all them have a requirement to calculate across periods:-
    For example
                        Fiscal    2009    2010    2011 u2026u2026->
    Margin                         10       20       30
    Volume                       100     200     300
    Calc  Margin * Volume across years                        
                                                 2010 - 2009
                                         0       =(20200)-(10100)u2026..->
    If I define Margin y-1 and volume y-1 I get zero as the it is displayed by years - this is the same using restricted calculated key figures.
    Any ideas how to carry forward a balance or look back ?
    Regards
    Fiona

    Hello,
    Never used this before, it certainly solves the problem.
    Thanks
    Fiona

  • Fiscal Year Crossover Time design vs. Generic Time design

    Hi all,
    does any one know the differences between these two? And where are time design strategies documented.
    Regards,
    MK
    Edited by: user4204276 on May 18, 2009 10:47 AM

    MK,
    I've never heard of "Genetic Time design". Google only returns your post -- see, you're famous. :)
    Do you mean the difference between a Time dimension that contains years, months, weeks, days, etc. versus (crossover?) versus two or more dimensions (genetic?) to capture years and months? (Really, it could be any combination, decades and years, decades, years, and quarters, etc., etc.)
    I've never seen any formal documentation that says one is better than the other, or really any documentation whatsoever re design considerations. In BSO databases, it's always been a question of balancing ease of calculation (usually) in a single Time dimension versus block size -- that often forces a split into two (or even more) dimensions to handle time. There, I guess that was a design consideration after all.
    When Hyperion put together Planning, they split the Year and Period dimensions, for whatever that is worth.
    In an ASO cube, block size is irrelevant/doesn't exist. Take a look at the pretty cool Intelligent Time (I think that's the right name) wizard that comes with an ASO cube -- that sucker can go right down to seconds with all kinds of built in intelligence. Those single Time dimensions are way bigger than any BSO cube could hope to hold.
    From a reporting side year over year reports (qtr1 this year versus qtr1 last year) require dimension nesting -- this is generally not a big deal, but can be somewhat bothersome when many other dimensions are part of an asymmetric column selection.
    Single time dimensions are way easier in calcs when doing something like a 13 month rolling average -- not having to write IF blocks to handle jumps across years is nice.
    Lastly, unless you decide to go with a duplicate name database, you will have to come up with a naming convention that guarantees uniqueness in a single time dimension.
    I'm sure others will (maybe they will) jump in with comments of their own -- if there's a section in the DBAG that explains which one to use I've forgotten it. <--This is entirely likely but I have to get up early for a flight so I'm not checking. :)
    Regards,
    Cameron Lackpour
    P.S. One other thought -- if you must have a single time dimension with multiple years, quarters, months, and weeks, and you have to do it in a BSO cube, you're going to end up making Time sparse, with all kinds of calculation implications (slowness, chiefly). So there's another design consideration.

  • Exception (Aggregation) in Hierarchy nodes results

    Hi All,
    We have a requirement to sum all values (as results in hierarchy levels) based on the value of a specific characteristics. example as below is what we want to achieve. Country, Product group, materials are all characteristics and this is viewed as hierarchy in the query. In each material there is a calculation components that will shown the value of Sales Qty, Price/unit and Amount. What we want is to sum up ONLY the Amount value and presented in the hierarchy nodes so that we can see how much sales we did by product group and subsequently by country as whole. If we drill across we will be able to achieve this but we want to drill down as we have the time characteristics and variances at the columns. and no, we do not want user to drill across the calculation components. This query is used in Integrated Planning for planning purposes integrated with BO and that is the structure of the planning layout we want. "Calculation component" is a infoobject that contains 'sales qty', 'price/unit' and 'sales amount' as master data values. 
    I have tried exception aggregation on calc component infoobject for 'LAST VALUE'. and it did capture only the Sales Amount value as result for node Calc Components. But the other results node State, country and Region also takes LAST VALUE.. which is not what i want. what i want is esseentially summation of all Sales amount for each calculation components by state, country and region.
                                                       Last Year  |  Variance   | Current Year |   Jan | Feb | Mar |......
    Region X                                              200  (sum of all country's sales amount)
    ->Country A                                          200  (sum of all states' sales amount) 
       -> State Y1                                          80 (sum of all components's sales amount)
           ->Calc Components Z1                    30
              - Sales Qty                                   10
              - Price/Unit                                     3
              - Sales Amount                             30
          ->Calc Components Z2                    50
              - Sales Qty                                     5 
              - Price/Unit                                   10
              - Sales Amount                             50
       -> State Y2                                        120
           ->Calc Components Z1                   40
              - Sales Qty                                   10
              - Price/Unit                                     4
              - Sales Amount                             40
          ->Calc Components Z2                    80
              - Sales Qty                                   10 
              - Price/Unit                                     8
              - Sales Amount                             80
    any help would be appreciated...
    eddie

    Please try the below steps and I hope it should work for you.
    Instead of calculated keyfigures,try to use local formula .Because i think sometimes CKF will not give the expected result if you use exception aggregation (not sure though,but i used only local formulas)
    1. Create a first local keyfigure (Say F1)for the calculation and use exception aggreagation as 'Average' and reference characteristics as 'PDU'.
    2. Create  a second keyfigure ( Say F2) using the first keyfigure(F1) and use exception aggregation as 'Average' and reference characteristics as 'Sales Document', if you need the values based on average of the sales documents and hide the first keyfigure(F1)
    I consider Sales document is the first level and PDU is the second level ( i mean lowest  level) . Because you need to consider these sequencens as well when you design the exception aggregation.
    Likewise you can create nested aggregations based on your requirements.
    Please do let me know if it works.
    Thanks.

  • Creating a MultiProvider on two DSOs

    Hi,
    I am considering some options for a specific reporting requirement - which is looking at Sales trends across years by calendar month.
    I have the data that I require within an DSO, but it contains a single time characteristic of Fiscal Year/Period - where as the report would be better serviced by separate characteristics for Fiscal Year and FIscal Period. Then I can Fiscal Year reported in rows, and period in columns - without having to go down the path of defining two structures and using the cell editor.
    So the obvious options are:
    1. Add Fiscal Year and Fiscal Period characteristics to my Sales DSO and reload data. I would however prefere not to do this as there is a large volume of data involved.
    2. Create new Sales Cube (that includes the additional time characteristics) that extracts from the Sales DSO and assign adds the appropriate time characteristics within the update rules. This is probably better but it does add considerable overhead in terms of managing another process chain for extraction that is only required for a single report.
    I was wondering whether a third option was viable.
    3. Could I create an DSO that maps Fiscal Year/Period to Fiscal Year and Period. Then create a Multicube over of the Fiscal Year/Period DSO + Sales DSO to deliver all Sales Data with Fiscal Year and Period characteristics.
    I don't expect performance would be brilliant - but aside from that, are there any other serious downsides? Or is Option 3 sheer lunacy? Interested to hear your thoughts....
    Many thanks
    Adrian

    Just realised that this won't work - Because if I filter on Fiscal Year, the value needs to be in both DSOs to report a value.
    So perhaps my best option is to create an InfoSet rather than Multicube - to join the Fiscal Year/Period DSO and Sales DSO.
    Again would this be make sense?
    Regards
    Adrian

  • What's the best way to handle this?

    I'm not sure what APIs/setup to use for this situation:
    A company wants to store data projects they do for clients. Each year, the data fields are set (as a result of gov't requirements) and they won't change for any client project for that year. however, the fields required can (and usually do) change every year. So things they require this year, might not be needed the next year and new fields might be introduced.
    While there are likely to be many common fields from year to year, there's no way to guarantee which ones will remain consistent. They also want to be able to do searches on the data and fields, for projects within a year and across years.
    What's the best framework/API/configuration to handle this? EJB? Simple JDBC? If so, how should the database be handled? Won't it have to constantly create new fields in a table? Or is there another way to handle this?
    What's the best way from a "clean architecture" standpoint?

    dang, I really have to start over? I finally got all this stuff working again.  well, hopefully it won't be as big a pain this time since the data won't be coming from a different machine.   After completing the Migration Assistant process, I had to reinput a bunch of serial numbers for apps, reinstall print and mouse drivers, etc...  I've finally got the new machine up and running smoothly and now I gotta start over? Sigh.
    I was hoping that either I could rename the current account after deleting the other one, or just move everything from one account to the other and then delete the 'RJM' account.
    ok, so it sounds like here are the steps I need to take:
    - make another full cloned backup of this current machine in Super Duper
    - reboot this machine using the advice in the first post, wipe everything clean and reinstall the OS
    - create a new account like 'user1' and re-do software update (which is like 2.5 gig worth of stuff) and takes like an hour even on a high speed connection
    - then re-do the migration assistant process to the properly named account
    - then delete the 'user1' account
    does that sound right?

  • How to create EBITDA report

    Hi all
    I am preparing EBITDA report on a Multiprovider,( figl_c10 n copa_c01 cubes) so i need to display columns- 12monts at a time 1,2,3.....11 months actual, 12th forcast/budget, total year to date, current year budget, Variance $( current year actuals- current year budget),VAR% Budget and forcast selction using user entry option.
    Can you help me how to do create this kind of report. points assign if helpful.
    Del

    Hi Del,
    Create a structure first. then say new selection as RKF.
    Now drag the 0calmonth into your RKFand the key figure you want to.
    Then 0calmonth--right clicksay restrict---set offset from current month as -1 or +1.
    Hope this helps
    You can even ask ABAPers to write a code on this tooo.
    check this url: for offsets..
    http://help.sap.com/saphelp_nw70/helpdata/en/af/809528939d5b4fbff7e16a5bdc0d85/frameset.htm

  • Carried forward balance through f.07 and ledger balance are not tallying

    Hi experts,
    When I try to execute F.07 last month (fiscal year April-March), carried forward balance and closing balance as per ledger are not matching for Customers. Could you suggest  the possible reasons?
    Thanks

    Hello,
    Maybe the mentioned SAP note is helpful for you.
    I have had a similar quesition.
    Reasons for variances at year end balance and opening balance at sub ledger account (customer, vendor)?
    all the best
    Erwin

Maybe you are looking for