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

Similar Messages

  • Loading Data to Essbase using Rule File Failed

    Hi
    i'm using IKM SQL to Essbase Cbue,
    Now I would like to use rule file when loading data,
    I created one in Essbase cube, then define it on the target (flow) and the Tab on Rule seprator,
    I reversed the Essbase Cbue again.
    when loading I get the following error bellow
    (before loading I verfiy with sample file based on the same strcture from my source and load it via data load from EAS
    and it works fine. also it works without any rule file.)
    here's the error I'm getting from operator:
    org.apache.bsf.BSFException: exception from Jython:
    Traceback (innermost last):
    File "<string>", line 23, in ?
    com.hyperion.odi.essbase.ODIEssbaseException
         at com.hyperion.odi.essbase.ODIEssbaseDataWriter.loadData(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java)
         at org.python.core.PyMethod.__call__(PyMethod.java)
         at org.python.core.PyObject.__call__(PyObject.java)
         at org.python.core.PyInstance.invoke(PyInstance.java)
         at org.python.pycode._pyx30.f$0(<string>:23)
         at org.python.pycode._pyx30.call_function(<string>)
         at org.python.core.PyTableCode.call(PyTableCode.java)
         at org.python.core.PyCode.call(PyCode.java)
         at org.python.core.Py.runCode(Py.java)
         at org.python.core.Py.exec(Py.java)
         at org.python.util.PythonInterpreter.exec(PythonInterpreter.java)
         at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:144)
         at com.sunopsis.dwg.codeinterpretor.k.a(k.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.scripting(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execScriptingOrders(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execScriptingOrders(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTaskTrt(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSqlI.treatTaskTrt(SnpSessTaskSqlI.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java)
         at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
         at com.sunopsis.dwg.cmd.DwgCommandSession.treatCommand(DwgCommandSession.java)
         at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
         at com.sunopsis.dwg.cmd.e.j(e.java)
         at com.sunopsis.dwg.cmd.g.z(g.java)
         at com.sunopsis.dwg.cmd.e.run(e.java)
         at java.lang.Thread.run(Unknown Source)
    Caused by: java.lang.NullPointerException
         at com.hyperion.odi.connection.AbstractHypAppWriter.logErrorRecord(Unknown Source)
         at com.hyperion.odi.essbase.ODIEssbaseDataWriter.sendRecordArrayToEsbase(Unknown Source)
         ... 32 more
    com.hyperion.odi.essbase.ODIEssbaseException: com.hyperion.odi.essbase.ODIEssbaseException
         at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:146)
         at com.sunopsis.dwg.codeinterpretor.k.a(k.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.scripting(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execScriptingOrders(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execScriptingOrders(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTaskTrt(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSqlI.treatTaskTrt(SnpSessTaskSqlI.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java)
         at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
         at com.sunopsis.dwg.cmd.DwgCommandSession.treatCommand(DwgCommandSession.java)
         at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
         at com.sunopsis.dwg.cmd.e.j(e.java)
         at com.sunopsis.dwg.cmd.g.z(g.java)
         at com.sunopsis.dwg.cmd.e.run(e.java)
         at java.lang.Thread.run(Unknown Source)
    pls advice what i'm doing worng?
    Thanks!

    So are you saying the data load interface works if you remove the rule in the options?
    Have you ever got any data loads to run with a load rule or without?
    Cheers
    John
    http://john--goodwin.blogspot.com/

  • Reg data loading into essbase using text files

    Can we load data in parallel from 2 files into the same cube using 2 different rules files? Or do we have to load one file at a time?
    Could someone clarify this?

    I do not believe that by selecting two data files and two load rules in AAS you are getting parrallel data loading. If you look at the log, you will find them to be sequential. For ASO cubes, AAS loads the data into a buffer then applies it. The only real parrallel data loading is using multiple threads for one file. Othere than that is it sequential

  • DIM: how to load metadata to Essbase without using rule files

    Hi,
    The Essbase adapter has been installed in the informatica PowerCenter (v8.1.1). We want to create a Essbase target definition to load metadata. In the Table Creation Wizard, we select Table Type: Dynamic dimension building (Type 3), but it needs to specify Rules file in the Column Creation Wizard.
    Any method to load metadata into Essbase without using Rules file?
    Thank you in advance.

    You could load the data into Essbase without Rule file by means of free form loading which the Datasource would be a file.

  • 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 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

  • How to enter TEXT data using rules files

    Hi,
    How can i enter text data using rules files?
    Thanks,
    A

    If you are talking about planning members with a text data type then it is not possible to load the actual text string using a load rule,essbase just stores a numeric value and the text string relating to that numeric value is stored in the planning applications relational tables.
    If you want to load text directly then you can load data through the planning layer, more information available at - http://download.oracle.com/docs/cd/E17236_01/epm.1112/hp_admin/ch05s02s01.html
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • How to build shared members using Rules file

    hi all,
    we have a source file like below,in that Bold members are shared member. we doknow how to modify the source file for building shared members using Rules file.
    Conf Total,~,Config A,*Lightbolt 365 A*
    Conf Total,~,Config A,*Lightbolt 540 A*
    Conf Total,~,Config A,*Lightbolt 730 A*
    Conf Total,~,Config A,*Thunderball 365 A*
    Conf Total,~,Config A,*Thunderball 270 A*
    Conf Total,~,Config A,*Roadranger 123 A*
    Can anyone give suggestion to resolve this issue.
    Thanks in Advance

    hi John,
    Here i'm building the dimension through generation build method.
    setting the properties as
    Field, Dimension, Field Type, Field Number
    Field1,Product,Generation,2
    Field2,Product,property,2
    Field3,Product,Generation,3
    Field4,Product,Generation,4
    After mapping it shows dimensions are correctly mapped.
    When i load the source file and the rule file, it shows error partially loaded data,.And it doesn't shows the shared member property. That is what asked How to modify the source file for building shared members using Rules file.
    Thanks,
    Edited by: user@99 on 25-May-2010 15:37

  • EAS7.1 aso dimension property change using rule file.

    I have a outline having 1 dimension "Terms" as a account type and data storage as "data store".Now i am trying to load members using rule file.
    Outline: ABC (Active Alias Table: Default)
    Scenario Stored <2>
    Currency Stored
    Terms Accounts
    Now i have ceated a rule file using source file like
    "Terms","T1","Terms Hierarchies","~O","",""
    "T1","TOT"," ","~O","",""
    "T1","OTH","","~O","",""
    "OTH","Loaded Days","","~","",""
    "OTH","Loaded FX","","~","","Loaded.FX",""
    "TOT","R99"," ","~ "," "," "
    "R99","R90","","+ "," "," "
    "R90","R901","","+ "," "," "
    i am using parent child relationship and i hav cheched the option s
    like "allow property changes" and allow formula changes....in dimension build settings..the rule shows valid ..but during dimension member load it is giving me the folowing error
    "\\Outline verification errors:
    \\Member Terms has no value source. Aggregate storage outlines require non level-0 members in accounts dimension to be either non-stored members or have internal/external formula.
    \\Member [Terms] has an unspecified error.
    but if i am removing "~O" property with "O" only in data source file then the dimension member load is suuccessful...
    wat i feel is anyhow the "dimension property change is not being set"...
    can any one please tellme wat option i m missig to check in rule file..??
    your opinion and suggestion will be highly appreciated.....

    The documentation explains the difference with examples, now I was going to post the link but I might as well post the info from the link.
    Joining Fields
    You can join multiple fields into one field. The new field is given the name of the first field in the join. For example, if a data source has separate fields for product number (100) and product family (-10), you must join the fields (100-10) before loading them into the Sample.Basic database.
    Creating a Field by Joining Fields
    You can join fields by placing the joined fields into a new field. This procedure leaves the original fields intact. Creating a field is useful if you need to concatenate fields of the data source to create a member.
    For example, if a data source has separate fields for product number (100) and product family (-10), you must join the fields (100-10) before you load them into the Sample.Basic database. If, however, you want to preserve the two existing fields in the data source, you can create a field (100-10) using a join. The data source now includes all three fields (100, -10, and 100-10).
    For other rule options read - http://download.oracle.com/docs/cd/E17236_01/epm.1112/esb_dbag/ddlfield.html
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • Using rules file

    using rules file how to create consolidation signs like +,-,%,*etc..in the outline.

    You need them in a seperate column in your dim build then tag them as a "Property" from the Dimension Build Properties tab.

  • Pick last 2 char of a field using rule file

    Hi
    I may be missing out anything but i need some help on this.
    I have column with city and state : city<space>State
    the state is 2 character while city name is of varied length starting from two to ten characters.
    Now i need to pick up last two characters of state using rule file.
    example of data:
    Glendale WI
    NA NJ
    New York NY

    Check this i guess this is answered by one the Oracle Guru
    Pick last 2 char of a field using rule file
    Thanks,
    KKT

  • Loading Text Datatype account members using rule file

    Hi,
    I have seen some blogs but still having the issue to load the text data type value to my Planning application.
    I am using EPM 11.1.2.1, my planning application has 3 plan type including workforce where i have few attributes of employee(position, role,location etc) free text input using planning webform. so i define those account members as Text data type.
    Note: we don't have ODI or any other tool used for metadata or Data loading.
    I am using **Outline Load utility** to refresh my dimension , do we have a way to load text data type using load rule. i tried using Load rule and getting following error
    \\ Invalid number in data column
    "010"     "1000"     "Budget"     "Draft1"     "Local" "Hsp_InputValue"     "Jan"     "Fong, Siu Lung (Felix), 4"     "FY12"     "sr sft eng"     "testing test"
    please guide me if any other way to load the text data i am getting in the employee file.
    -KK

    You can use the outline load utility to load data, there are examples available at http://download.oracle.com/docs/cd/E17236_01/epm.1112/hp_admin/ch05s02s01.html
    If you are trying to load using an essbase rules file then you will experience issues trying to load text to essbase, essbase only stores a numeric value for planning text data and it is the planning relational database that stores the text value, this is why the outline load utility would be better to use.
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • Preferred way of Data load in Essbase Using EAS or EIS

    Hi
    I am into designing new Essbase Cubes (ASO). Currently the process being followed is that we make a Metadata Model with Dummy Fact table and then create a MetaOutline and then finally outline from EIS and then Load data using MaxL and rules files through EAS,
    But I am wondering why don't I do all this from EIS.
    Can any of you provide me with some pros and Cons of loading data using EIS??
    Thanks in advance!!
    DJ

    One advantage of using MAxL with load rules is you have more control over the process and SQL that is created.I will agree with what Glenn said that we will have more control over the process if we use EAS as we are provided with the MaxL which is a fully equipped automation language with effective error capturing mechanism when tightly integrated with shell or vbscript.
    At the same time EIS is also effective for the ASO applications which are full refersh.
    If we design and develop the custom relational star schema by defining the joins and relations to feed the EIS OLAP Model, we can eliminate the unnecesary errors and can provide efficiency also.
    Main advantage of EIS is HOLAP solution.

  • 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

  • Building shared members using rules file

    How to build Shared members in the outline using load rule file.
    I tried but it is not working correctly.

    Hi,
    If you are loading the build file in parent child format...you don't need to mention the member as shared or stored.
    Essbase automatically makes the second one shared.
    If you are using generations or levels format to build the dimension then I suggest you to refer the docs to understand it clearly.
    http://download.oracle.com/docs/cd/E10530_01/doc/epm.931/esb_dbag.pdf
    Thanks,
    Jeeth

Maybe you are looking for