Multiple members in a substitution variable

<p>Hi,</p><p> </p><p>I use substitution variables in Planning forms to choose wichyear to display.  I would like to have FY06, FY07 andFY08 in the same variable.  I just tried to add it in AAS(separeted by commas) and there is no problems, but when I open myPlanning form, I got this error : "</p><center><table style=" margin-bottom: 2px; margin-right: 75px; margin-left: 75px; margin-top: 2px;" border="0" id="bannerMsg" cellspacing="0"cellpadding="0"><tr><td align="left" valign="center" class="verysmalltext">Asubstitution variable required for this calculation is undefined.Variable: RFFcstYears</td><td style=" padding-top: 5px; padding-bottom: 0px; padding-left: 5px; padding-right: 0px;" valign="center"><img title="Close" src= "http://malbicl01a:8300/HyperionPlanning/ui_themes/tadpole/images_global/task_tabs_close_sel.gif" onclick="hideBannerMessage()"></td></tr></table></center><p>If I change it for FY06 only, all works fine.</p><p> </p><p>I don't want to use 3 variables as some times we will need only2 years (it's a rolling forecast over a 18 monhs period).</p><p> </p><p>Any ideas how to set the variable ?</p><p> </p><p>Thanks</p>

Hi,
You cannot provide multiple values to single substitution variable. If you want that a variable can contain multiple values then you can use User Variable.
Request you to please look into the below links
for Substitution variable - http://docs.oracle.com/cd/E17236_01/epm.1112/hp_admin/frameset.htm?ch07s05.html
For user variable- http://docs.oracle.com/cd/E17236_01/epm.1112/hp_admin/frameset.htm?ch07s05.html
Hope this helps.
Regards
SST.....
Edited by: ss1988 on Mar 9, 2013 11:14 PM

Similar Messages

  • Multiple members for single user variable???

    Hi,
    Can I select multiple members or a hierarchy for a single user variable?
    My requirement is to use a dimension which consist of more than 100 members but the user will not enter data for 100 members
    at the same time so I want to give user an option to select the members for which he wants to enter data.
    I was thinking of using user variable but it is allowing me to select only one member for user variable created for that dimension,
    that means if he has to enter data for 10 members he has to change that variable 10 times or I have to use 10 different user variable for that dimension.
    what if any user wants 20 members, at that time I have only 10 user variables.
    Please help..
    Thanks in advance..

    Hi,
    Can I select multiple members or a hierarchy for a single user variable?Are the required members descendants of any particular member(hierarchy )?
    If so, you can use IDescendants<user variable> in the form's page. And you can also use dynamic user variable option.
    Regards
    -Samrat Mane
    Edited by: 918547 on Aug 22, 2012 4:54 PM

  • Multiple substitution Variable in Data Forms

    Hi,
    i have a problem with the creation of a hyperion Planning Data Form.
    I have created a Substituion Variable with "three" values delimited with a comma.
    I note that it works fine in the calculation script but i've a problem during the creation of a data form when I select the members by this substitution variable and it works fine if i set the Sub Var with only element.
    It's not possible to open the Data Form and The error is:
    "A substitution variable required for this calculation is undefined."
    Can someone help me for this error?
    Thanks
    Eugenio Gualtieri

    Hi,
    I don't think it is possible to put multiple members into a sub var for planning. It will treat it as a member e.g. if you had a subvar &years=FY08,FY09 it will be looking for a member named FY08,FY09.
    In your case you have to split into seperate subvars.
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • Using substitution variable with multiple values in Maxl Command

    Hi All,
    Is there any option to use multiple values in 1 substitution variable and use them in a Maxl command.
    alter database $app_name.$db_name clear data in region '{CrossJoin(CrossJoin(CrossJoin({StrTOMbr(&Months)},{XXX, YYY}),{StrTOMbr(&CURYR)}), {ZZZ})}'physical;
    In the above case
    Maxl is not working if I have multiple months in &Months Substitution variable.
    Let me know if there is an alternate option to implement this.
    Thanks
    Sathish

    What is the value of &Months?
    If you put that exact value into the code, does it work?
    Regards,
    Cameron Lackpour

  • Multiple Insertion with substitution Variable

    Hi, I want to insert multiple values with single substitution variable in single column. I mean my query is as under.
    Add a column to infobb02 called 'Wife' and populate it with first names. If there is no wife, enter null. Write a PL/SQL loop to gather wife names from the 'user' using a substitution variable.
    That means I have to insert values of wife column by user using substitution variable and must be use loop.
    Thank you.

    You'll need a client application capable of prompting. Maybe a shell script or perl? Java? PL/SQL executes on the server and can't prompt.

  • SQL data Load rule with Substitution variable

    Hi,
    I have a data load rule with MySQL as a data source. I have requirement where user does not want to see Current day data in cube and they keep changing days not to be loaded.
    I have setup the substitution variable SUBv as '2009-11-04' and have scripts to update it daily.
    Data Load rule in where condition contains
    brand = 'HP' and region = 'east' and date <> &SUBv
    Now, above where condition does not work for date <> &SUBv but if I set substitution variable SUBv as "brand = 'HP' and region = 'east' and date <> '2009-11-04' " and set load rule where condition with just &SUBv it would just work fine. I dont know whats wrong in 1st place.
    I dont want to create multiple where condition in substitution variable (Don't we have limit on them?). I have 40+ load rules which might use this SUBv substitution variable if I find a way to define it so that it work as "brand = 'HP' and region = 'east' and date <> &SUBv"
    Thanks,
    Vikram

    I did some research and came to know when using substitution variable in Load rule need to keep substitution variable first in string..
    It worked out magically.

  • Report script - using substitution variable with multiple values

    Hi All,
    Substitution variable with multiple values is not working correctly with Report scripts. Can you please let me know what is the syntax to assign multiple values to a sub variable using maxl:
    alter database samp.samp set variable 'ExtractQuarter' 'Q1,Q2,Q3,Q4';
    alter database Samp.Samp set variable 'ExtractQuarter' 'Q1:Q4';
    I tried both of the above but they are errored out with the below error:
    Error: 1001005 - Unknown Member [Q1:Q4] in Report.
    my requirement is different for both Actual and forecast data extract so i would like to make use of this variable to extract whole year data for Forecast and current quarter data for Actual with out duplicating the report scripts for both processes.
    Thanks,
    PRaveen

    Hi,
    Please refer following thread,
    range of months in report script?
    Hope it helps.
    Regards

  • Web Forms using substitution variables with multiple values

    Hi,
    I am trying to select a substitution variable in a webform (Hyperion Planning 11.1.1.3) with multiple values in EAS, but is not working does somebody knows if this an expected behaviour.
    I allready try ex.
    &Months = "Jan","Feb", "Mar"
    &Months = Jan, Feb, Mar
    &Months = Jan:Mar
    Please let me know something, since as far as I recall in previous versions of Hyperion Planning this was possible.
    Kind Regards

    We experienced the same issue, our requirement was that for the first half of the year the substitution variable was = Oct and for the second part of the year Jan:Dec. We were lucky that for the second scenario we had a Total Year member as well (that at the bottom level is Jan:Dec). So on web form we picked Level0 descendants of the substitution variable. That worked fine but not the range.

  • Multiple values to Substitution variable in AAS

    Hi,
    Is that valid to assign multiple values to substitution variable in essbase.For example Curmth(Substitution Variable) is it possible to assing Jan, feb etc.
    Thanks

    Yes in multiple ways depending on the useage.
    For instance, you could have currmth in multiple database with different values
    Sample.basic Currmth= Jan
    SampASO.basic Currmth = Feb
    Or in a single database you could have
    Sample.basic Currmth = "Jan","Feb","Mar"
    The above would work in a calc script bout would not work in an excel retrieve.
    You can also use variables for other things For instance, you could have a vairable called settings where
    settings = set updatecalc off; set msg summary; set aggmssg off
    and put this in the top of your calc scripts so you don't have to repeat it every time.

  • Substitution variable for multiple months

    Ideally, i would like to have a calc script with a substitution variable FIX(&Month) which points to specified months. I have tried setting the value for my substitution variable in different ways
    1.
    Variable = Month
    Value = "January""February"
    2.
    Variable = Month
    Value = "January","February"
    However, the script seems to be failing to pick up the second month as it returns no values for February. If i specify the months in the calc script, it works just fine. This suggests to me i'm getting the syntax wrong for the substitution variable.
    Any ideas?

    There is nothing strange it can behave. It will work.
    I am using this in production for years to genarate comma seperated scenario list with out any issues.
    What a substitution variable will do?
    It will store a string as a value for the variable and resolve at the time of calc. if the value is a valid member set it will work.
    I believe issue is not because of that.
    However, the script seems to be failing to pick up the second month as it returns no values for FebruaryIs it throwing any error in syntax check or in executing. Answer is No from the above statement. But you are not seeing the expected results in the calc.
    first check the application log whether the calc is happening for both jan and feb.
    Then why the calc is not as of expected for feb.

  • Substitution variable in Load rule Header Essbase 11.1.1.3

    Think its obvious you can use substitution variable as a Header definition on Load rules, does version 11.1.1.3 has any issues' with it, i am running into Unexpected Essbase error 1019026.
    Error:
    Unknown member [Mgmt Actual,Base,No Vertical,No Customer] found while processing string [Mgmt Actual","Base","No Vertical","No Customer]
    Unexpected Essbase error 1019026
    I want to copy Actual data into other scenario's in ASO cube so thought will use substitution variables to eliminate duplication on load rules.
    Mgmt Actual is a scenario set thru Substitution variable at the DB level
    i.e *&CurScen="Mgmt Actual" (set at DB level)*
    Header Definition on load rule *&CurScen,"Base","No Vertical","No Customer"*
    Data load work fine If i replace substitution variable with original member *"Mgmt Actual","Base","No Vertical","No Customer"*.
    I did notice some users complaining erratic behavior when substitution variables are placed in load rule header at the End on multiple members, i have tried all places End, First and Middle.
    tried using single Load rule with EAS and MAXl same results.
    i want to keep altering scenarios on header definition and use same rule files.
    alter database AppName.DbName set variable CurScen '"Mgmt Actual"';
    Running out of ideas any help!

    Error:
    Unknown member [Mgmt Actual,Base,No Vertical,No Customer] found while processing string [Mgmt Actual","Base","No Vertical","No Customer]
    Unexpected Essbase error 1019026
    *1019026 Unknown member memberName found while processing string string*
    Possible Problems
    Analytic Services does not recognize the listed string as a member of the outline.
    Possible Solutions
    Make sure that the member name is valid. The member name is in the rules file.
    * Are you using the correct rules file?
    * Is the rules file connected to the correct outline?
    * Can you validate the rules file?
    * Are member names or variable names enclosed in quotation marks where necessary?
    * Does the member exist in the outline? If not, you can add the member by modifying the outline during the dimension build or add the member in the Outline Editor.
    * Make sure that the member is not specified as a header in the rules file.
    Regards,
    Prabhas

  • Outline Order, Calc Script Performance, Substitution Variables

    Hi All,
    I am currently looking in to the performance side.
    This is mainly about the calculation script performance.
    There are lot of questions in my mind and as it is said you can get the results only by testing.
    1. Outline order should be from least sparse to most sparse
    (other reason : to accomodate as many sparse members in to calculator cache) correct me if I am wrong
    2. Is Index entry created based on the outline order. For example I have outline order as Scenarios, Products, Markets then does my index entry be like scenario -> Products -> Markets ?
    3. Does this order has to match with the order of members in FIX Statement of calculation script?
    4. I have 3 sparse dimensions. P (150 members), M (8 members), V (20 members).
    I use substitution variables for these three in the calculation script. And these three are the mandotary things in my calculation script. Now when I see the fix statement, these three are the first 3 parameters of the fix statemtn and since I am fixing on a specific member, placing these three members as the first 3 sparse dimensions in the outline, ill it improve performance?
    In one way, I can say that a member from P, M,V becomes my key for the data.
    Theoritically if I think, may be it will...but in practical terms I don't see any of such thing.. Correct me If my thinking is wrong.
    One more thing, I have a calc script with say around 10 FIX statements and this P,M,V is being used in every FIX statemnts. Since my entire calculation will be only on one P, one M, one V. Can I put everything in one FIX at the beginning and exclude it from remaining FIX statememts?
    5. I have a lot of cross dimensional operations in my calc scripts for accounts dimension (500 + ) members.
    Is there a way to reduce these?
    6. My cube statistics..
    Cube size : 80 GB +
    Block Size : 18 KB (Approx)
    Block density : 0.03 . This is what I am more worried about. This really hurts me.
    This is one of the reason why my calculation time is > 7 hours and some times it is horrible when there is huge amount of data (it takes aound 20 + hours) for calculation.
    I would be looking forward for your suggestions.
    It would be really apprecialble if It is Ok to share your contact number so that I can get in touch with you. That could be of great help from your side.

    I have provided some answers below:
    There are lot of questions in my mind and as it is said you can get the results only by testing.
    ----------------------------You are absolutely right here but it helps to understand the underlying principles and best practices as you seem to understand.
    1. Outline order should be from least sparse to most sparse
    (other reason : to accomodate as many sparse members in to calculator cache) correct me if I am wrong
    ----------------------------This is one reason but another is to manage disk I/O during calculations. Especially when performing the intial calculation of a cube, the order of sparse dimensions from smallest to largest will measurably affect your calc times. There is another consideration here though. The smallest to largest (or least to most) sparse dimension argument assumes single threading of the calculations. You can gain improvements in calc time by multi-threading. Essbase will be able to make more effective use of multi-threading if the non-aggregating sparse dimensions are at the end of the outline.
    2. Is Index entry created based on the outline order. For example I have outline order as Scenarios, Products, Markets then does my index entry be like scenario -> Products -> Markets ?
    ----------------------------Index entry or block numbering is indeed based on outline order. However, you do not have to put the members in a cross-dimensional expression in the same order.
    3. Does this order has to match with the order of members in FIX Statement of calculation script?
    ----------------------------No it does not.
    4. I have 3 sparse dimensions. P (150 members), M (8 members), V (20 members).
    I use substitution variables for these three in the calculation script. And these three are the mandotary things in my calculation script. Now when I see the fix statement, these three are the first 3 parameters of the fix statemtn and since I am fixing on a specific member, placing these three members as the first 3 sparse dimensions in the outline, ill it improve performance?
    --------------------------This will not necessarily improve performance in and of itself.
    In one way, I can say that a member from P, M,V becomes my key for the data.
    Theoritically if I think, may be it will...but in practical terms I don't see any of such thing.. Correct me If my thinking is wrong.
    One more thing, I have a calc script with say around 10 FIX statements and this P,M,V is being used in every FIX statemnts. Since my entire calculation will be only on one P, one M, one V. Can I put everything in one FIX at the beginning and exclude it from remaining FIX statememts?
    --------------------------You would be well advised to do this and it would almost certainly improve performance. WARNING: There may be a reason for the multiple fix statements. Each fix statement is one pass on all of the blocks of the cube. If the calculation requires certain operations to happen before others, you may have to live with the multiple fix statements. A common example of this would be calculating totals in one pass and then allocating those totals in another pass. The allocation often cannot properly happen in one pass.
    5. I have a lot of cross dimensional operations in my calc scripts for accounts dimension (500 + ) members.
    Is there a way to reduce these?
    -------------------------Without knowing more about the application, there is no way of knowing. Knowledge is power. You may want to look into taking the Calculate Databases class. It is a two day class that could help you gain a better understanding of the underlying calculation principles of Essbase.
    6. My cube statistics..
    Cube size : 80 GB +
    Block Size : 18 KB (Approx)
    Block density : 0.03 . This is what I am more worried about. This really hurts me.
    This is one of the reason why my calculation time is > 7 hours and some times it is horrible when there is huge amount of data (it takes aound 20 + hours) for calculation.
    ------------------------Your cube size is large and block density is quite low but there are too many other factors to consider to simply say that you should make changes based solely on these parameters. Too often we get focused on block density and ignore other factors. (To use an analogy from current events, this would be like making a decision on which car to buy solely based on gas mileage. You could do that but then how do you fit all four kids into the sub-compact you just bought?)
    Hope this helps.
    Brian

  • Problems using substitution variable in Web Analysis

    Dear all,
    I have a Web Analysis report that I need to show a raking table with the current month.
    For that I create a variable in Essbase that is updated with that date (E.g.: varCurrentMonth).
    After that I use it as my substitution variable to filter my date dimension in a report data source (E.g.: Scr5, row: product, column: date dimension & measure):
    2008 (current month)
    Product $ qty.
    AAA 100 10
    BBB 90 7
    CCC 80 5
    The problem is that in our cube we need to use an alias in every dimension not to have duplicate members (E.g.: DT.Date, MS.Measure, PD.Product, etc). And when we use it we need to set up the variable in Essbase using that alias (E.g.: DT.Feb/05/08). And if we use that variable as a substitution variable in the report data source the label displayed is the DT.2008 and not 2008 as expected.
    Does anybody have an idea how to solve that?
    Many thanks,
    Thiago Gabriel

    You usually get this error message if you are trying to assign a value from a sub var to a member that does not exist.
    e.g. trying to put FY08 which is a year member against a period dimension
    or trying to use a sub var of FY09 which does not yet exist in the essbase, so say you added a new year in planning FY09 and used the sub var in the form but have not refreshed the database then it would fail because the year would not have been pushed down to essbase yet.
    or the value of the subvar does not match a member name exactly
    or using a sub var name that does not exist in essbase, e.g. using &nextYear but the sub var has not been created in essbase.
    You can definitely use subsitution variables in columns in the version you are using and prior version.
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • Peculiar problem with Essbase (Calc Script) - substitution variable / UDAs

    This is odd but I have a script like :
    VAR iloop=1,break=0;
    FIX(<required POV>)
    Loop (20,break)
    VAR Country_total1,Country_total2,Country_total3;
    FIX (@UDA(Entity,@ALIAS(@CONCATENATE("&Country",iloop)))) // &Country1, &Country2 - are substitution variables with UDAs stored as strings
    Statements;
    /* +<statements for calculating total values.. for that country and stored against variables>+ */
    Country_total1=Country_total1+ +<Calculation>+
    ENDFIX
    /* Second part : Now again the calculations stored in the variables are to be stored against specific entities */
    FIX (@UDA(Entity,@ALIAS(@CONCATENATE("&Country",iloop))))
    FIX(@ISUDA(Entity,<Check1>)
    ..... Assign to relevant account
    ENDFIX
    ENDFIX
    ENDLOOP
    ENDFIX
    Now the problem is that the first fix statement works just fine, but the FIX statement in the 'second part' throws an error
    Error: 1200354 Error parsing formula for [FIX STATEMENT] (line 66): expected type [STRING] found [EXTVAR] ([iloop]) in function [@CONCATENATE]
    If I hard code the 'second part' FIX statement to the substitution variable directly - it works just fine.
    How can the first statement work and not the second one ? They are exactly the same.

    Glenn, thanks - I hadn't thought of that :).
    But it still does not entirely solve my problem (please see my previous post depicting a requirement similar to ours )
    - We have lots of countries (50-60+ might be much more) and each country can have multiple entities (3-4 on an average - can go unto 7-8)
    - so good guess would be around 200 entities
    - So say I have to do it for 2 countries only (two entity types). Then I need 4 variables - 2 for each country ('country 1 ET1 total', 'Country 1 ET2 Total')
    When the list is 20 counties - variables become 40 :(.
    - Still leaving aside the 40 variables for a bit -
    There are subsequent steps of calculations which needs to be done based on these totals (which are exactly the same for all countries) - just that we need the correct totals to begin with and the rest is already stored in the DB
    So since I have a different variable for each country - I cannot write one single calculation block to use the variables sequentially one by one (can I ?)
    I might have to write a separate calculation block for each of these countries. (20 separate blocks)
    That's what I was trying to avoid and simplify with the substitution variable (but is not working)
    - Create substitution variables - which would store the alias of the required countries (2/10/20 as many required)
    - Loop through these substitution variables - using them one by one
    - So I just need one single block of calculation with all the variable in the calc script being reused after each country calculation is done
    - and the user need not go into the script, as the only thing that will change are the countries. And he can change it easily through the substitution variable.
    Edited by: Ankur on Jun 27, 2012 12:53 PM

  • Use of Essbase substitution variables in filename of a MaxL report script

    Hey guys.
    Is there a way that I can embed the value of one or more Essbase substitution variables in the filename of a report script in a MaxL command?
    I'm running a report script that uses sub. vars for entities and accounts and based on which of those members are set in the variables I want the filenames to include those member names. I'm looking for a way to include the &varName in the filename using the export database command.
    THANKS!

    Not really.
    If you want to do a lot of string mangling in a script outside of the report script, you can use DISPLAY VARIABLE:
    MAXL> display variable CurMo;
    application         database            variable            value
    +-------------------+-------------------+-------------------+-------------------
                                             CurMo               MayRegards,
    Robb Salzmann

Maybe you are looking for