Fixing the calc script in FDM Planning adaptor

Hi All,
I have run into a issue with the load action in the planning adaptor ES9x-G4-A. By default, when the adaptor loads data into essbase it fixes using the script
                                   '*** CALC SCRIPT ***
                                        'NOTE: CALC SCRIPT CAN BE MODIFIED For Each CUSTOMER
                                        'Clear the intersection of (Category, Period, Entity)
                                        strClear = "Fix(""" & strTCat & """,@Idescendants(""" & strCurEnt & """))" & vbcrlf
                                        strClear = strClear & "CLEARDATA """ & strTPer(0) & """;" & vbcrlf
                                        strClear = strClear & "EndFix"
The issue with this is that it doesn't fix on year, meaning that data loaded with a replace will wipe the same period across every year. Does anyone know what the year variable is to set the fix correctly? I can't find it in any of the documentation, for 9.3.1 or 9.2
Thanks.
KMacintosh

Hi,
{color:#000000}Try updating the load script to be :-
{color}{color:#ff0000}strTargYear = API.POVMgr.fPeriodKey(CStr(strPer(0))).strTargetYear
'*** CALC SCRIPT ***
'NOTE: CALC SCRIPT CAN BE MODIFIED For Each CUSTOMER
'Clear the intersection of (Category, Period, Entity)
strClear = "Fix(""" & strTargYear & """,""" & strTCat & """,@Idescendants(""" & strCurEnt & """))" & vbcrlf
strClear = strClear & "CLEARDATA """ & strTper(0) & """;" & vbcrlf
strClear = strClear & "EndFix"
Cheers
John
[http://john-goodwin.blogspot.com/]{color}

Similar Messages

  • Execute Essbase Calc Scripts from FDM

    Hi,
    Can any of you let me know how to execute Essbase Calc Scripts from FDM, these Calc Scripts are on Essbase Server. Any help would be greatly appreciated.
    Thanks

    See the thread below:
    Re: FDM - Script

  • What is the procedure/code in VBA for passing the calc scripts dynamically based on the selection.

    Hello Gurus,
    I want to know what is the procedure/code in VBA for passing the calc scripts dynamically based on the selection.
    For example:
    X=EssVCalculate("Sheetname","Calc_Script name",True)
    In the above code instead of the *"Calc_Script name"* I want a script which is called dynamically and the values are calculated accordingly.
    Thanks in advance
    Saurabh

    Hi Todd,
    This is the situation:
    I have a calc script in Essbase which I can call to perform the calculations on the current sheet that is retrieved. I want calculation for the following formulas:
    x = EssVCalculate("Sheet2", "CalcBC", False)
    CalcBC is my calc script which is present in Essbase
    So instead of passing the above script I want to pass the conditions dynamically in the VBA code . I don't want to mention the script name directly in EssVCalculate option
    For example:
    I have three drop down menus from which I would select three different( zero level )members. It would then retrieve the data for that particular values in the excel sheet and now when I click on Calculate button it should calculate the script dynamically.
    I don't know how calc scripts can be executed dynamically in the VBA code itself.
    Thanks in Advance
    Saurabh

  • Can not run the calc scripts by mxl, if the first character is Number

    I found that if you create the calc scrpt like 1abc.csc. You can not run it by mxl. I tried for times but do not know the reason for that. I found that you can use number in the name of the calc scripts(like abc1.csc, a1bc.csc), but not for the first character(like 1abc.csc).
    Below is my mxl scripts:
    ×××××××××××××××××××××××××××××××××××
    login admin identified by password on localhost;
    spool on to 'C:\abc.log' ;
    execute calculation sample.basic.1abc;
    spool off;
    logout;
    ×××××××××××××××××××××××××××××××××××
    I write a bat file below:
    ×××××××××××××××××××××××××××××××××××
    D:\Hyperion\AnalyticServices\bin\essmsh C:\abc.mxl
    ×××××××××××××××××××××××××××××××××××
    I can run the scripts if I change the name "1abc" to "abc1"or "a1bc".
    Of course I can run this calc in EAS, no matter the name is "1abc" or "abc1".
    Anybody find the same problem with me?

    I agree, if ever there was a "best practice" to developing scripts (especially when using variables) it is to enclose in single quotes. I actually use double quote, single quote.
    execute calculation "'$4'"."'$5'"."'$6'";

  • Why does the calc script screen freezes after executing the script

    Hello Everyone:
    When a calc script gets executed, the calc Script in the ASS freezes even though the calc script has finished it´s execution. Does anybody knows why? How can i prevent these to happen?
    Hope someone could help me, thanks in advanced
    Best Regards

    if you execute the calc script in foreground, console will freezes and it will not allow any thing to do.
    Once script is completed, console will be freed.
    You can execute the calc script in back ground so that you can continue your work and you can track the progress in the sessions.

  • My Essbase db corrupting when i terminate the calc script why?

    Hi All,
    i got the problem with essbase db..It is corrupting the data when i terminating the any running calc script.
    So that every time i m taking the back up for that...
    Please let me know how to avoid this...and why it is corrupting ?...
    Is anything wrong with my Essbase?
    Regards,
    Prabhas

    If by "corrupting" you mean that essbase crashes and you can't restart the db then yes this is unusual and something is wrong with the environment. On the other hand, if you mean that the data is not the same as it was prior to starting the script then no there is nothing wrong. Essbase does not have a rollback feature that undo's the calc script processed up to the point where you killed it.
    Dave

  • Using VB API in VBA to edit the Calc Scripts

    Guys,
    Does anyone of you have VBA source code/examples utilizing Essbase API for the following operation.
    I want to copy Calc Script from Server to the client, edit the Script using VBA and copy back the Script to the Server. Any kind of info is appreciated.
    Thanks in advance
    HYPuser

    I posted some real sample code a while back for a completely different function (member renames).
    Renaming Existing Member Names
    So while you'll have to write the calc modification code yourself (or ask Glenn his rate ;-)), this at least shows you how the initialization / login / termination of the API would work. That's probably the most confusing aspect of using the VB API for the first time anyway.
    All that said, if this is from Excel and the user will already be logged in via the Excel Add-In, I believe that you can make life much easier and grab the hCtx directly without any initialization / login/ termination worries. I probably should have done that myself in the example I gave. See Tim Tow's posts in this thread:
    API
    EDIT: Two things I just noticed - first, the code sample I gave even has an example of polling for ProcState, so that gets you closer than I thought! Second, remembered that the line that reads...
    While ProcState.State ESB_STATE_DONE
    ...should actually have a 'less than / greater than' symbol between ProcState.State and ESB_STATE_DONE. Can't get the forum to display them correctly, even in code tags...
    Edited by: TimG on May 16, 2011 2:55 PM

  • Will block size effect the calc script performance?

    Hi Experts,
    I have a cube called RCI_LA:RCI_LA, now I have created calc scripts and working fine. But those calc scripts are taking too much time than expected (normally it should not take more than 15 min but those are taking nearly 1 hr or more some calc scripts.)
    In database properties I found that block size is 155896 B i.e. 152.KB but this size should be 8 to 100 KB & Block density is 0.72%
    If block size exceeds more than 100 KB will it impact the performance of Calc scripts?
    I think answer to the above question is “yes”. In this case what should I need to do to improve calc scripts performance?
    Could you please share your experience here with me to come out of this problem?
    Thanks in advance.
    Ram

    I believe Sandeep was trying to say "Dynamic" rather than "Intelligent".
    The ideal block size is a factor in all calcs, but the contributing reasons are many (The main three are CPU caching, Data I/O overhead, Index I/O overhead).
    Generally speaking, the ideal block size is achieved when you can minimize the combination of Data I/O overhead and Index I/O overhead. For this reason a block size that is too large will incur too much Data I/O, while a block size that is too small will incur too much Index I/O. If your Index file is small, increasing your block size may help, although the commonly acceptible block size is between 8K and 64K in size, this is just a guideline.
    In other words, if you test it with something right in the middle and your index file is tiny, you might want to test it with a smaller block size. If your index file is very large (i.e. 400 MB or more), you may want to increase the block size and retest.
    Ways to increase/decrease it are also many. Obviously, changing the dense/sparse settings is the main way, but there are some considerations that make this a touchy process. Other ways are to use dynamic calc in the dense dimensions. I say start at the top of your smallest dense dimension and keep the number of DIMENSIONS that you use D-C on limited. Using D-C members in a dense dimension does NOT increase the index file, so it could be considered a "free" reduction in block size -- the penulty is paid on the retrieve side (there is no free ride).

  • Pls check the calc script requirment

    Pls check this calc reqirement and do the needful help
    we have got 700000/- INR in your bank You can spend the money but there are rules of spending.
    1. we can start withdrawing Rs 1000 only in each month.
    2. The Money can be withdrawn only from November 2011
    3. This facility is only valid upto next 7 months.
    At the end of the seventh month your bank Pass book must show:
    Jan Feb Mar Apr May June July Aug Sep Oct Nov Dec Jan Feb Mar Apr May June July
    1 1 1 1 1 1 1
    (1 = 1000 Rupees as required)
    Note : Year changes here after December. Take care of this in logic.
    You can think of standard dimensions a planning application has :
    1. Accounts
    2. Period
    3. Scenario
    4. Version
    5. Entity
    6. Year
    7. And Many more if you wish

    GG what do you think is the cause of the error of this code below which i used for testing.....
    declare
    v_alltables varchar2(10000);
    begin
    for rec in (select TABLE_NAME from all_tables where owner = 'APPS' AND ROWNUM =1)
    loop
    execute immediate 'SELECT DBMS_METADATA.GET_DDL( '|| '''TABLE'',' ||rec.table_name||',''APPS'') FROM DUAL' into v_alltables;
    dbms_output.put_line(v_alltables);
    end loop;
    end;
    it gives this error message when run:
    Error report:
    ORA-00904: "ADX_PRE_AUTOCONFIG": invalid identifier
    ORA-06512: at line 7
    00904. 00000 -  "%s: invalid identifier"But when i change the rec.table_name into '''ADX_PRE_AUTOCONFIG''' the code works properly.
    so i decided to have this code and it works.
    SET SERVEROUTPUT ON
    declare
    v_alltables varchar2(10000);
    begin
    for rec in (select TABLE_NAME from all_tables where owner = 'APPS' AND ROWNUM =1)
    loop
    execute immediate 'SELECT DBMS_METADATA.GET_DDL( '|| '''TABLE'',' ||''''||rec.table_name||''''||',''APPS'') FROM DUAL' into v_alltables;
    dbms_output.put_line(v_alltables);
    end loop;
    end;for you newbie, this must also work
    SET SERVEROUTPUT ON
    declare
    v_alltables varchar2(10000);
    begin
    for i in (select table_name from all_tables where rownum<2)
    loop
    execute immediate 'SELECT DBMS_METADATA.GET_DDL( '|| '''TABLE'',' ||''''||i.table_name||''''||',''TRNG8305_GC'') FROM DUAL' into v_alltables;
    dbms_output.put_line(v_alltables);
    end loop;
    end;hope it helps.....

  • Why the Calc Script runs 15 hours?

    Every week, we empty the BSO essbase CUBE, and reload with new data from flat file and make a Calculation. It takes 15 hours to finish, that's too long a time, how to improve the running speed? What is the most possible reason for the bottleneck?

    Hi,
    1. One has to take a look at your outline , calculation scripts and also other DB settings to recommend any changes for improvement.
    2. There are many parameters like parallel calculation, caches, cfg settings..etc which play a role in it.
    3. We never know , it might be due to hardware issue sometimes.
    Get essbase consultants to fix this issue .
    Sandeep Reddy Enti
    HCC
    http://hyperionconsultancy.com/

  • Can "Planners" run calc script from the Planning web?

    This is probably a really naive question.
    However, can planners run a simple calc script(created in Essbase/AAS) from Workspace/Planning Web? If so what access would they be need to setup in Shared Service?
    Or do we have to convert the calc script into a Business Rule and then grant access to the users?

    John,
    Here are the roles that i assigned my user and he can view/launch the calc scripts from Planning Web without actually being an admin( i think)
    Analytic Servers : server access
    Business Rules: Administrator
    Planning App : Interactive User
    APS : Provisioning Manager
    I would also like to conver the calc script to a BR as suggested, but not sure why i see no users available in the Business Rules-> administration tab.
    As indicated above, the use has been provisioned as a BR admin!
    Also, i tried refreshing the app with filters, refreshing the user list from BR->admin(right mouse), de-provision and re-provision the user! Any ideas??

  • How currency COnversion calc scripts refers the HSP_Rates members?

    Hi,
    After creating the corrency conversion script based on selection of Scenario.Version,version type,currency.. planning also creates copy of this script as HSPCrtT & HSPCrtB. Here how its refering to HSP rates dimension?
    Thanks

    Hi,
    Have you restarted Essbase server after increasing cache sizes?
    Also verify if there are any calculations that are dependent on dynamic calc members.
    Assuming Entity is a Sparse dimension, you can use FIX instead of IF in the calc script.
    FIX(@UDA("ENTITY","CNY"))
    "Local" / "Entity"->"Versions"->"Currency"->"Function"->"Level"->"CNY_Rate" ;
    ENDFIX
    ...similarly for rest of entities.
    Also you can use USD instead of LOCAL as you had already copied LOCAL to USD.
    USD = "USD" / "Entity"->"Versions"->"Currency"->"Function"->"Level"->"CNY_Rate" ;
    in similarly way you can try to fine tune the script for better performance.
    Try these things and come up with the outcomes.
    - Krish

  • Essbase performance issue when calc scripts are run on FDM cube on same server

    We have a large Essbase application which has high usage on a daily basis, which is being impacted when we run Calc scripts on an FDM forecast cube which is on the same server. The large application is on EIS 11.1.2 and the FDM cubes are being migrated to the same server and also being upgraded from EIS 7.1 on Unix to EIS 11.1.2 on NT. Every time the Calc scripts are run on the FDM cube, the performance of the Essbase application is degraded and it shuts down after some time.

    Sudhir,
    Do you work at a help desk or are you a consultant? you ask such a varied range of questions I think the former. If you do work at a help desk, don't you have a next level support that could help you? If you are a consultant, I suggest getting together with another consultant that actually knows more. You might also want to close some of your questions,. You have 24 open and perhaps give points to those that helped you.

  • Restrict Planning Admin from seeing all Essbase calc scripts

    Hi - I have a few ppl who are Administrators on Planning and they see all of my calc scripts in Essbase. Is there a way to block them from seeing them? I have those calc scripts to run things that they do not need to run.
    I am using Planning 3.5.1, Essbase 6.5
    Thanks,
    Cindy

    Hi Cindy,
    I assume the calc scripts you want to block from the Planning Admin's are within the applications they are administrators of correct?
    The only way I can think to do this is to place these in another directory on the server or on a share you have access to and use Esscmd scripts to execute them in a batch function.
    e.g.
    RUNCALC 3 C:\SERVER_DIR\mycalcs\calc
    Presuming the directory were on your essbase server and you schedule this on your essbase server.
    This assumes your Planning Admins do not have access to your Essbase server. Of course if this were unix the path to the script would be different.
    You could also only have the scripts on your local machine.
    Regards,
    John A. Booth
    http://www.metavero.com

  • How can I fix the 1st column width (member) in Planning data forms

    Hi all,
    does anybody know a trick, how I can fix the first column width in planning data forms? I need a composite data form (Planning 9.3.1) and the problem is, that in the first form the member names are longer. So Planning sizes the column as it is needed to display the full member name. The member names of the second data form are shorter, so the data entry cells are not exactly among each other for both data forms and that looks terrible....
    Thanks and kind regards
    André

    There are 3 ways of setting the width in webforms:-
    1. There is a global setting for input box length which has a syntax of FormInputBoxLength=30.
    2. When you specify the format for each of the dimensions you can choose to select the width of either a column heading or a row heading. In the following example, each time you specified the dimension ‘Account’ a format would be applied to its header. The syntax for this would be something like… HeaderOptionAccount=Length:50,Style:font-size: 12pt;font-family: calibri
    3. Each column can have its own width specified. The syntax for this can be setting in each of the column’s code. For example C6=Blank,Style:Background-color:rgb(203,218,231);width:3 would just show a thick vertical line as the width is so small.
    You can not set widths in data grids through the normal settings. You can manually change the widths and save the grid though. This can be done in the xml directly. For example… <HDRWIDTH idx=”0″ width=”50″/>.
    Then load the amended xml file back into the system.

Maybe you are looking for

  • Vendor Database - Need Transaction code

    Hi All, Last week i have posted a query with regard to pulling the Vendor Database (Need : Vendor Code / Description/ Address 1/ Postal Code / Payment Type ) Few experts have suggested me to use S_ALR_87012086 T-Code, however the problem is we dont h

  • Change Payment terms invoices

    Hi is it possible to change payment term in transaction VF01 or VF02 with standard SAP??

  • Issues with evaluation of EL expressions

    Hey everyone I am having issues with EL expressions being printed instead of evaluated when they are between tags. They work fine when they are in the tag itself. I will show you my code: This is a snippet from the parent file that includes the other

  • Unknown caller id

    hi i know this has been posted before but none of the responses seem to help me. i have recently got the iphone and every time someone calls me that is on my contacts list it comes up as unknown caller. i have tried resetting the phone, i have checke

  • Aperture 3 exporting problems

    Seems that every time I try to export a file from Aperture 3, it hangs for a long time before it performs any exports - it is very slow. In Aperture 2, exporting a file that was 900x600 @ 72 dpi was instant, in Aperture 3 the same file takes 15 minut