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

Similar Messages

  • Using an essbase substitution variable in dataexport command in a BR

    Hi,
    I have created a calc script to export data using DATAEXPORT, and to define the filename an essbase variable.
    Here all right
    I copy this code to a business rules to run it from a business rules, but I have a problem with the essbase variable, when I validate it, it gives me the error:
    Detail:Encountered "&FileNm" at line 28, column 26.
    Was expecting:
    My essbase variable is set to:
    "e:\Hyperion\products\Essbase\EssbaseServer\app\TMPGB\dataexportCustomerY2.txt"
    in double quote
    How anyone use in a Business rules with the command dataexport an essbase substitution variable

    So it works in a calc script and not a BR, I know BR's sometimes don't always act exactly the same as calc scripts and you occassionally hit issues like this.
    What version are you using because I have a feeling I have tested this in the past and I am sure it worked.
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • How to get essbase substitution variable in ODI

    Hi All,
    I have a problem that I need to get the substitution variable from Essbase /EAS to work on some SQL statement in ODI.
    How can I do in ODI ???
    Thanks for all ..
    Thomas

    Hi,
    If you read my blog post :- http://john-goodwin.blogspot.com/2009/11/odi-series-planning-11113-enhancements.html
    In the post there is a section on retrieving essbase substitution variables and using them in ODI.
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • Is it possible to read Essbase Substitution variables from ODI?

    Is it possible to read Essbase Substitution variables from ODI?

    Hi,
    You can do it with custom code, if you have a read of a blog I wrote :- http://john-goodwin.blogspot.com/2009/11/odi-series-planning-11113-enhancements.html
    About half way through I go into reading essbase sub vars using the essbase java API.
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • 11.1.1.6.11  /  Essbase Substitution Variables / RPD Init Block / Dynamic Variables

    11.1.1.6.11  /  Essbase Substitution Variables / RPD Init Block / Dynamic Variables
    How do I update the Init Block which is populated with the Essbase Substitution variables.   This is dynamically created the first time I import an Essbase cube and is populated with the Substitution variables when it is first imported into the RPD.   If later on new Substitution variables are added, they are not being reflected in the Init Block or its dynamic variables.  I have done the re-import of the data source with no change to the Init Block Dynamic Variables.   How do I get these new Substitution variables imported?
    It appears that the only way is to delete it from the Physical Layer, however this deletes any changes I have made to Cube in the physical layer.

    So delete it from the Physical Layer, change the Substitution Variables associated with the cube.   Import it back into the physical layer.   It does NOT delete existing Init Block Dynamic variables that no longer exist as Substitution variables.  

  • Essbase substitution variable used for SQL Dimension load-URGENT

    Hi All,
    I am creating one dimension through SQL Dimension load rule writing by parent child build rule. The SQL query is like below---
    distinct trim(dist_mobile),trim(ret_mobile) from dist_retailer al1 where al1.proc_dt=to_date(&Proc_date,'dd/mm/yyyy')
    When I fixed the value of proc_date (e.g.- '27/09/2008') then it is retrieving data properly, but when I try to make the same as a essbase variable as shown above (to give user the priviledge to select for which date data will be fetched from RDBMS to create the dim) and after setting the aforesaid value of that variable in essbase subs var screen and click 'OK/Retrieve' in rule,it is returning no rows executing the query as well as no error coming.
    I guess in query nothing is wrong but the subs variable part is not working. Can anybody please give some insight to resolve the problem.
    In this context, I would like to mention that I will have to use substitution variable in some other rule file also to automate the load process. How can I use essbase subs variable in SQL load rule? Could you please show me a proper summarise query illustrating how to use the subs var in aforesaid purpose for the sake of understanding?
    Thanks in advance.

    Hi,
    Sorry for delayed response. Appreciate your inputs. At last I have found out the solution which is as below----
    distinct trim(dist_mobile),trim(ret_mobile) from dist_retailer al1 where al1.proc_dt=to_date('&Proc_Dt','dd/mm/yyyy')
    after setting the substitution variable as Proc_Dt and set the value as 27/09/2008 (without any quotation mark or such sign) now I checked and now it is retrieving fine.
    Thanks & Regards.

  • Setting Essbase substitution variable thru ODI

    Hello Friends,
    We have some procedures in ODI that call maxl scripts to unlock app, clear data and agg. But how do we set Substitution variable in Essbase?
    Any feedbacks are appreciate...
    Thank You.

    Thanks John.
    - We created a maxl script with the statement below
    alter system set variable 'ActMon' 'Feb';
    - Created a procedure in ODI to call the maxl
    the procedure is working...but we still have to manually edit the maxl script every month to change the current month value.
    How about this?
    We have a oracle table in ODI schema which has month column populated. can we use that month column data and some how set the Essbase Sub var?

  • Essbase Substitution Variables

    Hi All,
    I went through the docs. but not able to find an answer to the following query.
    What is the maximum number of substitution variable that we can create for an application??
    We use nearly 30 variables for a application to handle security. So i wanted to know whether there is a limit for the variables?
    Your inputs would be of great help. Thanks!!

    I can tell you in my 12 years with Essbase, I have never heard of anyone having issues using as many subvars as they need. Your best bet is to just go ahead and just try them out. To create them should not take much time at all.
    John Conlee
    Oracle Practice Manager - Analytic Vision

  • 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

  • Essbase substitution variable for memebr with '-' in name

    I am trying to do subjected assignment. I have a member with '-' in name and trying to assign it to sub.var.
    It let me do it in EAS (hit set and it went OK), but not in Maxl--it says syntax error near '-'
    Also it is giving me wired errors while validating calc script with this var.
    Any idea ?
    Thanks

    If the value of the subvar is encased in quotes, you don't need to quote it in the fix statement.
    &subvar.
    Robert

  • Synchronize substitution variables values between Essbase and Planning

    Hello,
    In EPM version 11.1.2.1 (but we noticed the problem also in previous EPM versions) when we set the value of a substitution variable in Essbase, the value is is not immediately updated in Planning: for some time we see the old value. The value in Planning remains unchanged even in we log off or exit Planning and log on again.
    Instead if we restart the Planning service, the value is immediately updated
    Since we would like to use the Essbase substitution variables to manage some selections in Planning Data Entru Forms, is there any way to force a synchronization, or to increase the frequence of synchronizations between Essbase and Planning?
    Regards
    Francesco Quaranta

    Have a look at setting the planning property SUBST_VAR_CACHE_LIFETIME
    http://docs.oracle.com/cd/E17236_01/epm.1112/hp_admin/properts.html
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • Substitution variable in Calculation manager

    Hi,
    In calc manager there are two types of variable
    1. replacement
    2. execution.
    I want to know that is there any connection between substitution variable in Essbase and these variable?
    In a document, I saw that
    "Planning and Essbase users only: If you want to create a replacement variable for Planning or Essbase, on Replacement, do these tasks:
    Enter a name for the variable.
    Select a type for the variable:
    Numeric—a number
    String—a text string
    Essbase—an Essbase substitution variable
    Note:
    You cannot use an Essbase substitution variable in a component of a business rule in an Essbase aggregate storage application, including those used in Oracle General Ledger."
    But I have created an Essbase replacement variable for a EPMA essbase application but it is not reflected in Essbase.
    Why?

    Hi, Rubi.
    Last NOTE was about Essbase aggregate storage application (ASO). Planning apps (using EPMA) has been created in Block Storage option (BSO). It isn't so?

  • Substitution Variable in Essbase Report Script

    Hi All,
    In my report script I want to use Essbase Substitution Variable, just as an replacement to Text field... I am using following syntax:
    {STARTHEADING
    TEXT 0 "Bud"
    &StartMonthNo
    TEXT 0 "12"
    ENDHEADING}
    Where StartMonthNo is 1 ... I don't want to add this variable as some member in Essbase, just need to display Heading as
    Bud
    1
    12
    Using above syntax, it is just showing
    Bud
    12
    I have tried many syntax like Text 0 &StartMonthNo or Text 0 "&StartMonthNo" But nothing seems to be working...
    Please lemme know if I am missing something here .. Please give me some suggestions ...
    -CJ

    Hi,
    Your thinking is sound and creative, however due to the way they work you can't define a subvar as a concatenation of other subvars because it will be interpreted literally. e.g.
    sv1 = hello
    sv2 = world
    sv3 = &sv1 + &sv2
    sv3 interpreted by essbase will be: &sv1 + &sv2 and throw an error.
    (If you think about it, concatenating two 255 char subvars into another would still exceed the character liimit.)
    So,
    if you want to concatenate several long subvars, just define them and mash them together:
    &sv1 &sv2 = hello world
    regards,
    Robb Salzmann

  • Using a Substitution Variable in a text box when the member isn't used in a grid

    Hi,
    I'm trying to create a footer in my report to display a substitution variable for the "Period" dimension. The Period dimension is not used in any of the rows or columns in my grid in my report in FR studio. It is left as a POV. I am trying to reference the substitution variable for CurrentMonth, which is independant of what the user selects for the Peiod POV.
    For example, the user runs the report and selects YearTotal for the Period dimension. I want to bring back the substitution variable of &CurrentMonth for Period even though it is not selected in the Grid for the report. Is there a way to do that?
    The workaround I am using is adding a second Grid and selecting the Substitution variable in the row and referencing the function from the second grid, which is hidden. This is bulky, and I'm hoping for a cleaner solution. The function I'm using from Grid 2 is below:
    <<MemberAlias("Grid2", 1, "Period")>>
    If I referenced Grid1 for Period, the function would display the user's POV selection, which is not what I want.
    Any help would be much appreciated. Thanks so much!!
    Tiffany

    Tiffany,
    I do the following which I think may fit you need:
    Add the "Period" dimension to the Columns section.
    Make the "Period" dimension the top most member of your column selections.
    Hide that row.
    Set the left most column to "Current Poinf of View for Period"
    Select "Same As Col A" (for example) for the remaining report columns.
    Add a column to the far right and use the &CurrentMonth substitution variable for the "Period" dimension. (The other dimensions in that column should be set, if possible, to retrieve as little data as possible.)
    Hide the new column.
    Change the function in the footer to <<MemberAlias(Grid1, A, "Period")>>
    This should allow your user to select their desired period without impacting the hidden column value of &CurrentMonth which will be displayed in your footer.
    Bill

  • 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

Maybe you are looking for

  • Unable to repair External Drive disk permissions

    I have an external harddrive which holds my itunes library. Today I have been getting permission errors and now my itunes won't access the files on the drive. I have tried to fix the errors with disk utility but now when I try to repair it I get the

  • I bought a ebook yesterday my adobe id will not work

    I bought a ebook and on my macbook i didn't put my adobe id. So the ask for: E-book leverancier, because i want to put my name in it, but this does not work So Bol.com where i bought the e-book told me to contact Adobe for help. I want my adobe id on

  • Do I need to download Adobe Acrobat XI Pro again after using the software on a 30-day trial basis?

    Do I need to download Adobe Acrobat XI Pro again after using the software on a 30-day trial basis?

  • Can't open i tunes.please help

    My i tunes upgraded to the latest version and from that time i can't run them. When i click to i tunes, i have the message error saying that this version of itunes needs a macos x 10.4.3 or later (my macos x is 10.4.1). I uninstall i tunes, and then

  • How to correctly transfer ebooks.

    Hello, I bought a couple of ebooks a long time ago, and I would like to transfer them from my computer to my laptop. Even though I have the receipt, the company isn't selling those ebooks anymore. Adobe Digital Edition won't let me read it on my lapt