Regarding Rule file

Hi All,
I am a starter in Essbase.
Can you please let me know in which scenarios a "Rule File" is used to load data.
Regards,
945775

Hi,
You can review the following links:
Essbase administrator Guide at http://docs.oracle.com/cd/E12825_01/epm.111/esb_dbag.pdf under the chapter "Building Dimensions and Loading Data"
http://www.youtube.com/watch?v=sK2KAVIFz4c
Hope it helps...
KosuruS
Edited by: KosuruS on Aug 27, 2012 12:14 PM
Edited by: KosuruS on Aug 27, 2012 12:14 PM

Similar Messages

  • Query regarding Metadata load in Essbase using rule file

    Hi
    In our application,we are  loading metadata using Essbase rule file and  here we are facing one problem.Suppose we have to load a level 0 member called "xxxx" under two different parent,assume the parent members are Parent_AAAA and Parent_BBBB.But our requirement is the consolidation operator for the first occurrence ( i.e under Parent_AAAA)  is "+" and for the shared member under Parent_BBBB is "-".But,when we are loading using rule file the consolidation operator for the shared member always being loaded as "+".Is there any trick to change the consolidation operator for shared member other than  changing it manually in outline?
    Pls help....Thanks in advance.

    I don't think there is a way to change the default setting.
    However, what you can do is  to have a different load rule and different text file with only the metadata that you want to have an exception for shared members. That way, you can achieve it as you do not have to change the existing rule file.
    Regards
    ORACLE | Essbase

  • Error in loading data into essbase while using Rule file through ODI

    Hi Experts,
    Refering my previous post Error while using Rule file in loading data into Essbase through ODI
    I am facing problem while loading data into Essbase. I am able to load data into Essbase successfully. But when i used Rule file to add values to existing values I am getting error.
    test is my Rule file.
    com.hyperion.odi.essbase.ODIEssbaseException: com.hyperion.odi.essbase.ODIEssbaseException: Cannot put olap file object. Essbase Error(1053025): Object [test] already exists and is not locked by user [admin@Native Directory]
    at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:146)
    at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.execInBSFEngine(SnpScriptingInterpretor.java:346)
    at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.exec(SnpScriptingInterpretor.java:170)
    at com.sunopsis.dwg.dbobj.SnpSessTaskSql.scripting(SnpSessTaskSql.java:2458)
    at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:48)
    at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:1)
    at oracle.odi.runtime.agent.execution.TaskExecutionHandler.handleTask(TaskExecutionHandler.java:50)
    at com.sunopsis.dwg.dbobj.SnpSessTaskSql.processTask(SnpSessTaskSql.java:2906)
    at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java:2609)
    at com.sunopsis.dwg.dbobj.SnpSessStep.treatAttachedTasks(SnpSessStep.java:540)
    at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java:453)
    at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java:1740)
    at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$2.doAction(StartSessRequestProcessor.java:338)
    at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:214)
    at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.doProcessStartSessTask(StartSessRequestProcessor.java:272)
    at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$0(StartSessRequestProcessor.java:263)
    at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:822)
    at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:123)
    at oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:83)
    at java.lang.Thread.run(Thread.java:662)
    from com.hyperion.odi.common import ODIConstants
    from com.hyperion.odi.connection import HypAppConnectionFactory
    from java.lang import Class
    from java.lang import Boolean
    from java.sql import *
    from java.util import HashMap
    # Get the select statement on the staging area:
    sql= """select C1_HSP_RATES "HSP_Rates",C2_ACCOUNT "Account",C3_PERIOD "Period",C4_YEAR "Year",C5_SCENARIO "Scenario",C6_VERSION "Version",C7_CURRENCY "Currency",C8_ENTITY "Entity",C9_VERTICAL "Vertical",C10_HORIZONTAL "Horizontal",C11_SALES_HIERARICHY "Sales Hierarchy",C12_DATA "Data" from PLANAPP."C$_0HexaApp_PLData" where (1=1) """
    srcCx = odiRef.getJDBCConnection("SRC")
    stmt = srcCx.createStatement()
    srcFetchSize=30
    #stmt.setFetchSize(srcFetchSize)
    stmt.setFetchSize(1)
    print "executing query"
    rs = stmt.executeQuery(sql)
    print "done executing query"
    #load the data
    print "loading data"
    stats = pWriter.loadData(rs)
    print "done loading data"
    #close the database result set, connection
    rs.close()
    stmt.close()
    Please help me on this...
    Thanks & Regards,
    Chinnu

    Hi Priya,
    Thanks for giving reply. I already checked that no lock are available for rule file. I don't know what's the problem. It is working fine without the Rule file, but throwing error only when using rule file.
    Please help on this.
    Thanks,
    Chinnu

  • Error while loading data to ASO database using rules files and buffer id

    Hello all,
    While loading the data to our ASO cube from a data file and using a server rules file, I am getting a warning: "Incorrect Syntax near ['$'] ". But my script no where mentions the usage of $. Also the console throws no error while loading the data. It displays the progress bar 0-100% while the data is being loaded, but actually no data is getting loaded (when retrieval is checked). Also the script is unable to form any log file or error file. Can anyone throw some light what might be the reason behind this kind of data load behaviour.
    Thanks in advance.
    Amit

    is that the real script? I don't see you using any parameter. (That's where $ comes to play). Try a double quote with echo (I never used echo in MaxL)
    Also don't post passwords and server names on a forum.
    Regards
    Celvin
    http://www.orahyplabs.com

  • Error while using Rule file in loading data into Essbase through ODI

    Hi Experts,
    I am facing problem while loading data into Essbase. I am able to load data into Essbase successfully. But when i used Rule fule to add values to existing values am getting error.
    test is my Rule file.
    com.hyperion.odi.essbase.ODIEssbaseException: com.hyperion.odi.essbase.ODIEssbaseException: Cannot put olap file object. Essbase Error(1053025): Object [test] already exists and is not locked by user [admin@Native Directory]
         at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:146)
         at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.execInBSFEngine(SnpScriptingInterpretor.java:346)
         at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.exec(SnpScriptingInterpretor.java:170)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.scripting(SnpSessTaskSql.java:2458)
         at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:48)
         at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:1)
         at oracle.odi.runtime.agent.execution.TaskExecutionHandler.handleTask(TaskExecutionHandler.java:50)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.processTask(SnpSessTaskSql.java:2906)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java:2609)
         at com.sunopsis.dwg.dbobj.SnpSessStep.treatAttachedTasks(SnpSessStep.java:540)
         at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java:453)
         at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java:1740)
         at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$2.doAction(StartSessRequestProcessor.java:338)
         at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:214)
         at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.doProcessStartSessTask(StartSessRequestProcessor.java:272)
         at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$0(StartSessRequestProcessor.java:263)
         at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:822)
         at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:123)
         at oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:83)
         at java.lang.Thread.run(Thread.java:662)
    from com.hyperion.odi.common import ODIConstants
    from com.hyperion.odi.connection import HypAppConnectionFactory
    from java.lang import Class
    from java.lang import Boolean
    from java.sql import *
    from java.util import HashMap
    # Get the select statement on the staging area:
    sql= """select C1_HSP_RATES "HSP_Rates",C2_ACCOUNT "Account",C3_PERIOD "Period",C4_YEAR "Year",C5_SCENARIO "Scenario",C6_VERSION "Version",C7_CURRENCY "Currency",C8_ENTITY "Entity",C9_VERTICAL "Vertical",C10_HORIZONTAL "Horizontal",C11_SALES_HIERARICHY "Sales Hierarchy",C12_DATA "Data" from PLANAPP."C$_0HexaApp_PLData" where      (1=1) """
    srcCx = odiRef.getJDBCConnection("SRC")
    stmt = srcCx.createStatement()
    srcFetchSize=30
    #stmt.setFetchSize(srcFetchSize)
    stmt.setFetchSize(1)
    print "executing query"
    rs = stmt.executeQuery(sql)
    print "done executing query"
    #load the data
    print "loading data"
    stats = pWriter.loadData(rs)
    print "done loading data"
    #close the database result set, connection
    rs.close()
    stmt.close()
    Please help me on this...
    Thanks & Regards,
    Chinnu

    Hi Priya,
    Thanks for giving reply. I already checked that no lock are available for rule file. I don't know what's the problem. It is working fine without the Rule file, but throwing error only when using rule file.
    Please help on this.
    Thanks,
    Chinnu

  • Issue with rule file and Substitution variable

    Hi All,
    I am using Essbase 9.3.3
    I created a rule file with 5 dimensions in which 3 dimensions I defined in columns and two dimensions I gave it as header in data column with comma seperated.
    Among those two dimension members, one is an account member with "/" in it within quotes and other is a substitution variable.
    The member assigned for that Substitution variable has a space in between and is updated within quotes in variables list.
    When I try loading data, I am getting an error saying that two members are not valid.
    Eg: "Tax/Unit",&Scenario is not valid.
    &Scenario - "Budget Q1"
    Can some one please suggest on the issue.
    I am not facing any problem in calc scripts or reports scripts using the substition variable.
    Thanks in advance

    Mark,
    Modifying the default files is dangerous and ill advised. You could always just add a style sheet (inline or linked) to your application that overrides that one setting while you wait on the permanent fix.
    Regards,
    Dan
    http://danielmcghan.us
    http://sourceforge.net/projects/tapigen

  • Not able to open data file in a rule file

    Hi,
    We have a rule file which has 140 columns. We are trying to add two new columns at the end (i.e. 141 & 142). We have added those columns in input text file and opened that text file in rule file. So automatically two columns are added at the end of rule file. Mapping is done properly. After that we saved that rule file.
    But next time when we opened that rule file and clicked "Open data file" option nothing is happening. We are not able to open data file in that rule file. But that rule file is working fine when we are running it.
    Can you please give any hint why it is not working?
    Thanks.

    Just a thought about your data file -- maybe 142 columns is too much? Yes, I know, if this is loading to a BSO database, and the columns represent a dense dimension, you are super duper efficient, but is the game worth the candle?
    What happens if you drop one of the members? Mark the column as Ignore During Data Load? Several columns? And then you need to add in new ones? KABOOM!
    FWIW, to keep the process as flexible and maintenance free as possible, I make every record one data value if I have any say in the matter. Yes, it is not efficient. But at least I don't get calls at o-dark-thirty telling me my process blew up and I need to fix it right away.
    NB -- I suppose these are two extremes and the right answer is somewhere in middle, but I will note that you likely won't have issues with reading and writing a data load rule with my approach.
    Regards,
    Cameron Lackpour

  • Susbtitution Variables in rules file to replace a member name with another

    Hi everybody,
    Can I use substitution variables to replace a member name with another name in rules file?
    Please let me know if we can use substitution vars.
    Essbase version :11.1.2
    Thanks,
    K.as

    Are you the same guy?
    http://www.network54.com/Forum/58296/thread/1287447433/Susbtitution+Variables+in+rules+file+to+replace+a+member+name+with+another+name
    The answer is still, "No".
    Regards,
    Cameron Lackpour

  • [Digester] Problem using recursion in xml rule file

    Hi!
    I am trying to parse an XML file using digester but getting a problem. The file has a recursive tag. The format of the file given below:
    <dpr-domain name="AircraftPerformances">
              <dpr-data-category name="AircraftClass" systemOption="FULLOLDI">
                   <dpr-attribute name="landingSpeed" systemOption="HALFOLDI"/>
                   <dpr-data-category name="holdingParameters" systemOption="HALFOLDI">
                        <dpr-attribute name="maximumspeed1" systemOption="FULLOLDI"/>
                   </dpr-data-category>
                   <dpr-data-category name="turnRate" systemOption="FULLOLDI,HALFOLDI">
                        <dpr-attribute name="maximumspeed2" systemOption="FULLOLDI"/>
                        <dpr-data-category name="accelerateRate" systemOption="HALFOLDI">
                             <dpr-attribute name="maximumspeed21" systemOption="FULLOLDI"/>
                             <dpr-data-category name="descendRate" systemOption="HALFOLDI">
                                  <dpr-attribute name="maximumspeed211" systemOption="FULLOLDI"/>
                             </dpr-data-category>
                        </dpr-data-category>
                   </dpr-data-category>
              </dpr-data-category>
    </dpr-domain>
    The rule file I have written for this is:
    <digester-rules>
         <pattern value="dpr-domain">
         <object-create-rule classname="check.Domain"/>
              <pattern value="*/dpr-data-category">
                   <object-create-rule classname="check.DataCategory"/>
                   <set-properties-rule/>
                   <pattern value="dpr-attribute">
                        <object-create-rule classname="check.Attribute"/>
                        <set-properties-rule/>
                        <set-next-rule methodname="addAttributes" />
                   </pattern>
                   <set-next-rule methodname="addDataCategory" paramtype="check.DataCategory"/>          
              </pattern>
              </pattern>     
    </digester-rules>
    But this is not working. If the "dpr-domain" tag is removed, then it works. Please help me by giving a solution for this problem.
    Regards,
    Arshika

    For this scenario,
    First I have used FCC for the same structure and CSV is also generated, but the CSV when opened with NOTEPAD it is not showing endSeparator , i.e my first row last element is concatenated with second row first element,there is no row seperator.
    But the same when opened with WordPad,we can see the data, row wise
    now the destination system open the file in notepad only.
    for that i tried using this Bean specified above but it is not fulfilling the requirement.
    The parameters I have mentioned in FCC are as follows:
    Recordset Structure : E1WBB01,E1WBB03,EAN_MASTER
    NAME                                      VALUE
    EAN_MASTER.fieldSeparator     ,   (comma)
    EAN_MASTER.endSeparator     'nl'
    E1WBB03.fieldSeparator            ,
    E1WBB03.endSeparator             'nl'
    E1WBB01.fieldSeparator            ,
    E1WBB01.endSeparator             'nl'
    Please provide a solution,why thr endSeparator is not shown in notepad.
    Thanks

  • How can I edit the rules file?

    How can I develop my program which can access rules file?I know that Hyperion didn't provide APIs to set properties of rules files.

    There is not way to edit the contents of a rules file (short of trying to reverse-engineer the file format for a load rule and write the file out yourself).What is it you are trying to do? While it would be nice to be able to use an API to create a rules file, most of the the things you use a load rule for do not require the ability to change them programatically.Regards,Jade----------------------------------Jade ColeSenior Business Intelligence ConsultantClarity [email protected]

  • How to change the Rule file Pointing Automatically?

    Guys,
    Is there any automated way to change the rule file pointing for any application \ DB.. If so, can anyone ellobrate it briefly.....
    Regards
    Srini

    Do you mean you want to use a dimension/data rule that you created in one database and use it in another? Or do you mean you want to reassociate the rule with its new database?
    The former is easy -- copy (or not, the rule can be local) the rule to the new location and use MaxL/Esscmd to load data/dimensions.
    If you mean the latter, I don't know of a way to do that -- typically copying a rule file would only occur when the dimensionality is the same.
    Or do you mean something completely different?
    Regards,
    Cameron Lackpour

  • Substitution variable is not visible at Data Prep editor-creating rule file

    Hi,
    We are working on Essbase 9.3.1, Oracle as a database source for loading the data into Essbase.
    We have create a substitution variable at "server level" to use it in rule file as a DSN for data source. But this substitution variable is not visible in the drop down of substitution variable in 'Data prep editor' while creating the rule file.
    We restarted the Essbase server also but still it is not visible in 'data prep editor'.
    Any help will appreciated on this issue.
    Thanks & Regards,
    Mohit Jain

    Cameron-
    1) yes I've tried it on 2 different clients
    2) yes I've tried it on the server
    3) I haven't tried that, but don't normally use MaxL for anything
    4) I took a 'broken' rule, saved it locally, closed and reopened and it still didn't work
    5) I normally do files on the server, but I can't even get to that point because when I get the 'Open Data File' nothing happens, no dialog box pops up, so I don't get the chance to select the location
    6) This is a production server and EAS is running as a service, so I'd have to test this one afterhours.
    Because it happens on 3 separate PC's I'd eliminate bad EAS, since only some rules do it and others don't I'd think it could be corrupt rules, but it'll happen to new rules just as fast, and they still work just fine, so if that's the case I need to figure out what is corrupting them...
    Network issues wouldn't surprise me, I get TCP/IP errors regularly saying I have to increase my net retry count, but I've tweaked with those settings tons... looks like those are really the database server is running out of memory even though I have 4GB physical 16MB Virtual memory (32 bit environment though... I do have the /3GB switch turned on)... I've had to scale my caches way back to allow certain databases to even function.
    Thanks for your help.
    Edited by: Norton5150 on May 28, 2009 2:12 PM

  • UDA Defination in Rule file

    <p> </p><p>I am trying to create a Rule file to build my Dimensions. TheDimensions get built up properly without any issues as long as I donot have any UDA's defined in it.</p><p> </p><p>My dimension build data file is as follows which is ~delimited:</p><p><b>2006~Nov-06~28-Nov-2006~D45~Tue~Business~DA38988~AAAAA</b></p><p>Now in the above file first 3 fields are of the time dimension.D45 is the UDA for 28-Nov-2006 and Tue is the attribute filed of28-Nov-2006</p><p> </p><p>My rule file definition is as follows</p><p>Gen2,Time Gen3,Time  Gen4,Time  UDA4,Time WeekDays4,Time Gen2,User Gen3,User Alias3,Users</p><p>As you can see I have defined the Rule file using Generationproperties</p><p> </p><p>Now when I am trying to build the Dimensions using the abovefile it gives the following error message</p><p> </p><p>Object [Test] is already locked by user [XXXXXX]<br>Building Dimensions Elapsed Time : [0.79] seconds<br>There were errors, look inC:\Hyperion\AdminServices\client\dataload.err<br>Reading Parameters For Database [Drxxxxxx]<br>Reading Outline Transactions For Database [Test]<br>Declared Dimension Sizes = [4 5 11 3 2 ]<br>Actual Dimension Sizes = [3 3 11 3 1 ]<br>Allocated TRIGMAXMEMSIZE: [4096] Bytes.<br>Writing Application Definition For [Test]<br>Writing Database Definition For [Test]<br>Writing Database Mapping For [Test]<br>Loading New Outline for Database [Test] Succeeded<br>Total Restructure Elapsed Time : [1.04] seconds<br>Object [Test] unlocked by user [XXXXXXXXXX]<br>Database import completed ['Test'.'Test']<br>Output columns prepared: [0]<br></p><p>I am unable to understand as to what the following messagemeans. Can someone help me understand this</p><p><b>Declared Dimension Sizes = [4 5 11 3 2 ]        </b>Not sure as towhere I declared this<b> Actual Dimension Sizes = [3 3 11 3 1]</b></p><p> </p><p>Also when I look into the following fileC:HyperionAdminServicesclientdataload.err the error message is asfollows:</p><p><b>Record #1 - Property [D45] changes for member [28-Nov-06] notallowed (3315)2006~Nov-06~28-Nov-06~D45~Tue~Business~DA38988~AAAAA</b></p><p> </p><p>I am unable to make out as to what it means. Is it like I cannothave a UDA and an Attribute for one member i.e. in this case28-Nov-2006.</p><p> </p><p>Thanks</p><p>SSSS54</p>

    As an added comment to the previous poster, you might want both "Allow Property Changes" and "Allow Association Changes" so that both UDAs and Attributes can be successfully updated. If your Essbase version contains the option, you will also need to check the "Allow UDA Changes" option which only becomes enabled if property changes are first enabled.<BR><BR>As for your question regarding Declared vs. Actual dimension sizes:<BR><BR>A "Declared Dimension Size" is a count of the total number of members in the dimension.<BR>An "Actual Dimension Size" is the same, but less the Dynamic Calc, Shared and Label Only members.<BR><BR>The numbers you see are simply a list of the declared or actual sizes of each dimension in order.

  • Is this possible: SQL Dataload with generic rule file?

    Hello,
    when loading a flat file into Essbase, one can define in the header the data load field names. In the data load, the dimension names are given and at the end the Data. In the rule file under Options > Data source properties > Header a reference to this line could be made. This works fine.
    We want to load data with SQL in the same way. One load rule with a substitution variable for the view selection and we can use it for all data loads. We have specified the dimension names in the table column header. The data column was defined as "data" - without quotes.
    The result so far is, it will not load.
    The question is - does somebody tried this before and can help me on this?
    Thanks in advance.
    Regards,
    Philip Hulsebosch
    www.trexco.nl

    the data column can be repersented in multiple ways, the way I typically do it is to define it to the member it belongs to. In my example where your substitution variable &currmth is "Jan" then "Jan" would be the column name. Next month when the sub var changes to Feb, it is Feb.

  • Calculation in rule file

    Hi
    On the rule file in data column is possible apply a calculate???
    (datacolum / 1000000)  * -1
    Regards!

    Hello Sringelmo,
    Technically that kind of "calculation" you can do.
    Scaling and flip sign on UDA.
    BUT all data in the data load will be scaled. So do not load FTE or other numbers with it.
    The UDA should be there before loading.
    I would see if there are options in the source or do a calculation in Essbase afterwards (input_version -> working_version)
    Regards,
    Philip Hulsebosch

Maybe you are looking for