How to Query/Lookup Data Target HFM Application in FDMEE Import / Validation Step

Hi Experts,
We are using FDMEE 11.1.2.3.500 to load 2 sets of Flat Files - ICP Trial Balances and Non-ICP Trial Balances. The ICP Trial Balances will be loaded to Target HFM Application first using FDMEE and then the remaining Non-ICP Trial balances Load would follow
We have a complex business requirement wherin we want to check if the Non-ICP Trial Balances for a given ENTITY, ACCOUNT, [ICP None] combination in the Trial Balance File matches the already loaded ICP Trial Balances for ENTITY, ACCOUNT, [ICP Total]. If it matches then this record has to be skipped from our data load else it has to be loaded. To elaborate with an example:
                                                              Entity    Account     ICP              Amount
File 1 (ICS_TB.csv) - Record 1  ->          E1          A1           P1                  100
File 1 (ICB_TB.csv) - Record 2  ->          E1          A1           P2                  300
Above File Gets Loaded First
File 2 (Non_ICP_TB) - Record 1->          E1          A1          [ICP None]      400    (Record to be skipped - It matches the above already loaded File)
Is it possible to validate this during Import or Validate Step in FDMEE? if yes, can you please throw some light on how this can be done?
Thanks!

As far as I am aware there is no seperate Java API reference manual for FDMEE, you are limited to the information available in the Admin Guide for now. If you feel that it is not comprehensive enough perhaps you could raise a ticket or enhancement request via Oracle Support.
The sysntax for the statement should be dmAPI.executeDML(String query,Object[] parameters) according to the AG, I wouldn't put 100% trust in that as it can often be incorrect, but give it a try. Ensure the 2nd parameter is a Jython list.
I don't think the method supports passing a Stored Procedure and there doesn't appear to be another native API method listed that would do that. You could initiate the connection using standard Python or Java libraries and then use a cursor and prepared statements to execute the sql or the callproc method of the Python DB API

Similar Messages

  • Can u give clear steps how to load 3 data target at a time by the help of p

    can u give clear steps how to load 3 data target at a time by the help of parllalesim

    hi,
    create the load infopackage type and give the infopack you need to load.
    create 3 similar process types.
    chain should have this flow
    start -> delet index(if cube is the target) -> load target(connect the load process to start process) parallel -> and process -> create index(if cube)/actiavtion of ods(if ods)
    Ramesh

  • How to query XML data stored in a CLOB column

    I don't know XMLDB, so I have a dumb question about querying XML data which is saved as CLOB in a table.
    I have a table (OLAP_AW_PRC), with a CLOB column - AW_XML_TMPL_VAL
    This column contains this xml data - [click here|http://www.nasar.net/aw.xml]
    Now I want to query the data using the xml tags - like returning the name of AW. This is where I am having trouble, how to query the data from AW_XML_TMPL_VAL clob column.
    The following query generates error:
    ORA-31011: XML parsing failed.
    ORA-19202: Error occurred in XML processing
    LPX-00229: input source is empty
    SELECT
    extractValue(value(x), '/AW/LongName') as "AWNAME"
    from
    OLAP_AW_PRC,
    table(xmlsequence(extract (xmltype(AW_XML_TMPL_VAL), '/AWXML/AWXML.content/Create/ActiveObject/AW'))) x
    where
    extractValue(value(x) , '/AW/Name') = 'OMCR4'
    - Nasar

    Mark,
    Thanks. This is exactly what I was looking for.
    After doing @Name in both places (SELECT and WHERE clause) it worked.
    Now I have one more question.
    There are multiple DIMENSION tags in my xml, and I want to see the NAME attribute values for all of those DIMENSIONs. The following query returns
    ORA-19025: EXTRACTVALUE returns value of only one node.
    Cause: Given XPath points to more than one node.
    Action: Rewrite the query so that exactly one node is returned.
    SELECT
    extractValue(value(x), '/AW/@Name') as "AW",
    extractValue(value(x), '/AW/Dimension/@Name') as "DIMENSIONS"
    from
    OLAP_AW_PRC,
    table(xmlsequence(extract (xmltype(AW_XML_TMPL_VAL), '/AWXML/AWXML.content/Create/ActiveObject/AW'))) x
    where
    extractValue(value(x) , '/AW/@Name') = 'OMCR4'

  • How to  extract  master data  attribute from  r/3 to bw give steps details

    how to  extract  master data  attribute from  r/3 to bw give steps details screenshots

    Hi
    Go through the below process to extract Master Data Attribute from R/3
    Hi,
    Maintaining Generic DataSources
    Use
    Regardless of the application, you can create and maintain generic DataSources for transaction data, master data attributes or texts from any transparent table, database view or SAP Query InfoSet, or using a function module. This allows you to extract data generically.
    Procedure
    Creating Generic DataSources
    1. Select the DataSource type and specify a technical name.
    2. Choose Create.
    The screen for creating a generic DataSource appears.
    3. Choose the application component to which you want to assign the DataSource.
    4. Enter the descriptive texts. You can choose any text.
    5. Select the datasets from which you want to fill the generic DataSource.
    a. Choose Extraction from View if you want to extract data from a transparent table or a database view. Enter the name of the table or the database view.
    After you generate the DataSource, you have a DataSource with an extraction structure that corresponds to the database view or transparent table.
    For more information about creating and maintaining database views and tables, see the ABAP Dictionary Documentation.
    b. Choose Extraction from Query if you want to use a SAP Query InfoSet as the data source. Select the required InfoSet from the InfoSet catalog.
    Notes on Extraction Using SAP Query
    After you generate the DataSource, you have a DataSource with an extraction structure that corresponds to the InfoSet.
    For more information about maintaining the InfoSet, see the System Administration documentation.
    c. Choose Extraction Using FM if you want to extract data using a function module. Enter the function module and extraction structure.
    The data must be transferred by the function module in an interface table E_T_DATA.
    Interface Description and Extraction Process
    For information about the function library, see the ABAP Workbench: Tools documentation.
    d. With texts you also have the option of extracting from fixed values for domains.
    6. Maintain the settings for delta transfer, as required.
    7. Choose Save.
    When performing extraction, note SAP Query: Assigning to a User Group.
    Note when extracting from a transparent table or view:
    If the extraction structure contains a key figure field that references a unit of measure or a currency unit field, this unit field has to be included in the same extraction structure as the key figure field.
    A screen appears on which you can edit the fields of the extraction structure.
    8. Edit the DataSource:
    ○ Selection
    When you schedule a data request in the BI scheduler, you can enter the selection criteria for the data transfer. For example, you can determine that data requests are only to apply to data from the previous month.
    If you set the Selection indicator for a field within the extraction structure, the data for this field is transferred in correspondence with the selection criteria in the scheduler.
    ○ Hide field
    You set this indicator to exclude an extraction structure field from the data transfer. The field is no longer available in BI when you set the transfer rules or generate the transfer structure.
    ○ Inversion
    Reverse postings are possible for customer-defined key figures. Therefore inversion is only active for certain transaction data DataSources. These include DataSources that have a field that is marked as an inversion field, for example, the update mode field in DataSource 0FI_AP_3. If this field has a value, the data records are interpreted as reverse records in BI.
    If you want to carry out a reverse posting for a customer-defined field (key figure), set the Inversion indicator. The value of the key figure is transferred to BI in inverted form (multiplied by –1).
    ○ Field only known in exit
    You can enhance data by extending the extraction structure for a DataSource by adding fields in append structures.
    The Field Only Known in Exit indicator is set for the fields of an append structure; by default these fields are not passed to the extractor from the field list and selection table.
    Deselect the Field Only Known in Exit indicator to enable the Service API to pass on the append structure field to the extractor together with the fields of the delivered extract structures in the field list and in the selection table.
    9. Choose DataSource ® Generate.
    The DataSource is saved in the source system.
    Maintaining Generic DataSources
    ● Change DataSource
    To change a generic DataSource, in the initial screen of DataSource maintenance, enter the name of the DataSource and choose Change.
    You can change the assignment of a DataSource to an application component or change the texts of a DataSource. Double-click on the name of the table, view, InfoSet or extraction structure to get to the appropriate maintenance screen. Here you make the changes to add new fields. You can also completely swap transparent tables and database views, though this is not possible with InfoSets. Return to DataSource maintenance and choose Create. The screen for editing a DataSource appears. To save the DataSource in the SAP source system, choose DataSource ® Generate.
    If you want to test extraction in the source system independently of a BI system, choose DataSource ® Test Extraction.
    ● Delta DataSource
    On the Change Generic DataSource screen, you can delete any DataSources that are no longer relevant. If you are extracting data from an InfoSet, delete the corresponding query. If you want to delete a DataSource, make sure it is not connected to a BI system.
    NR

  • Extracting SAP Query,Infoset  Data from VB Application

    Hi,
    I need to get all SAP Queries,Infosets and SAP Query Group data from a VB application.
    I have found a Remote Enabled Function called    IQAPI_READ_QUERY_CATALOG.
    But when I call the Function from a VB application ,the call is not successful and even I am not getting any exception.
    The call is getting false with null exception .
    Can anyone please guide me.
    Or is there any other function module /procedure / table to extract SAP Query ,Infoset,SAP Query Group data??
    Thanks in Advance.

    http://stackoverflow.com/questions/3765373/how-do-i-do-a-select-distinct-using-a-sap-infoset-query

  • FDMEE - Change registered target HFM application

    Hello Experts,
    In FDMEE (11.1.2.3.100) is it feasible to change the target application once registered as target within FDMEE.
    Eg. If I have identical HFM applications HFMAPP1 and HFMAPP2 (for testing different approaches), and HFMAPP1 is registered in FDMEE as target and there are ~20 locations and 25 rules associated with all the mappings in place. Load into HFMAPP1 from FDMEE is smooth. Is it possible to load the same data into HFMAPP2 by changing some property or name within FDMEE. Believe this was possible in earlier versions of FDM by changing the integration settings.
    Thanks,
    Venki.

    Hi,
    you can change the Target Application within the location configuration.
    Bear in mind that you will have to create an Import format for HFMAPP2 and assign it to the location as well.
    Hope that helps
    Blog: akafdmee.blogspot.com
    Twitter: @akafdmee

  • Error while loading Data in HFM application through ODI

    Hello All,
    I am performing a integration from source(Flat file) to HFM application I have created a Integration to it and while loading the data i get the following error:-
    org.apache.bsf.BSFException: exception from Jython:
    Traceback (most recent call last):
      File "<string>", line 3, in <module>
        at com.hyperion.odi.hfm.ODIHFMAppWriter.loadData(ODIHFMAppWriter.java:240)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
    com.hyperion.odi.common.ODIHAppException: com.hyperion.odi.common.ODIHAppException: Properties [CLEAR_ALL_METADATA_BEFORE_LOAD, REPLACE_MODE] are mandatory.
        at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:146)
        at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.execInBSFEngine(SnpScriptingInterpretor.java:322)
        at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.exec(SnpScriptingInterpretor.java:170)
        at com.sunopsis.dwg.dbobj.SnpSessTaskSql.scripting(SnpSessTaskSql.java:2472)
        at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:47)
        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:2913)
        at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java:2625)
        at com.sunopsis.dwg.dbobj.SnpSessStep.treatAttachedTasks(SnpSessStep.java:577)
        at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java:468)
        at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java:2128)
        at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$2.doAction(StartSessRequestProcessor.java:366)
        at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:216)
        at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.doProcessStartSessTask(StartSessRequestProcessor.java:300)
        at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$0(StartSessRequestProcessor.java:292)
        at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:855)
        at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:126)
        at oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:82)
        at java.lang.Thread.run(Thread.java:662)
    Caused by: Traceback (most recent call last):
      File "<string>", line 3, in <module>
        at com.hyperion.odi.hfm.ODIHFMAppWriter.loadData(ODIHFMAppWriter.java:240)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
    com.hyperion.odi.common.ODIHAppException: com.hyperion.odi.common.ODIHAppException: Properties [CLEAR_ALL_METADATA_BEFORE_LOAD, REPLACE_MODE] are mandatory.
        at org.python.core.PyException.fillInStackTrace(PyException.java:70)
        at java.lang.Throwable.<init>(Throwable.java:181)
        at java.lang.Exception.<init>(Exception.java:29)
        at java.lang.RuntimeException.<init>(RuntimeException.java:32)
        at org.python.core.PyException.<init>(PyException.java:46)
        at org.python.core.PyException.<init>(PyException.java:43)
        at org.python.core.Py.JavaError(Py.java:455)
        at org.python.core.Py.JavaError(Py.java:448)
        at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:177)
        at org.python.core.PyObject.__call__(PyObject.java:355)
        at org.python.core.PyMethod.__call__(PyMethod.java:215)
        at org.python.core.PyMethod.instancemethod___call__(PyMethod.java:221)
        at org.python.core.PyMethod.__call__(PyMethod.java:206)
        at org.python.core.PyObject.__call__(PyObject.java:397)
        at org.python.core.PyObject.__call__(PyObject.java:401)
        at org.python.pycode._pyx15.f$0(<string>:6)
        at org.python.pycode._pyx15.call_function(<string>)
        at org.python.core.PyTableCode.call(PyTableCode.java:165)
        at org.python.core.PyCode.call(PyCode.java:18)
        at org.python.core.Py.runCode(Py.java:1204)
        at org.python.core.Py.exec(Py.java:1248)
        at org.python.util.PythonInterpreter.exec(PythonInterpreter.java:172)
        at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:144)
        ... 19 more
    Caused by: com.hyperion.odi.common.ODIHAppException: Properties [CLEAR_ALL_METADATA_BEFORE_LOAD, REPLACE_MODE] are mandatory.
        at com.hyperion.odi.hfm.ODIHFMAppWriter.loadData(ODIHFMAppWriter.java:240)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:175)
        ... 33 more
    Caused by: com.hyperion.odi.common.ODIHAppException: Properties [CLEAR_ALL_METADATA_BEFORE_LOAD, REPLACE_MODE] are mandatory.
        at com.hyperion.odi.hfm.ODIHFMUtil.validateRequiredProperties(ODIHFMUtil.java:87)
        at com.hyperion.odi.hfm.ODIHFMMetadataLoader$OptionsMetadataLoad.validate(ODIHFMMetadataLoader.java:66)
        at com.hyperion.odi.hfm.ODIHFMMetadataLoader.validateOptions(ODIHFMMetadataLoader.java:188)
        at com.hyperion.odi.hfm.ODIHFMAppStatement.validateLoadOptions(ODIHFMAppStatement.java:168)
        at com.hyperion.odi.hfm.ODIHFMAppWriter.loadData(ODIHFMAppWriter.java:195)
        ... 38 more
    Any help appreciated
    Thanks,
    Pratik

    LKM looks fine. Sorry it was my bad the "data" at the end was not visible and you are right its IKM for integration
    Log file that you have provided talks about these parameters but I doubt these are related to data
    I was going through the link and it takes about the parameters CLEAR_ALL_METADATA_BEFORE_LOAD, REPLACE_MODE but they are related to metadata
    Oracle Hyperion Financial Management
    I have no idea. Will keep posted if I get to know anything
    HTH
    Amarnath
    ORACLE | Essbase

  • How to Keep Alive a specific HFM application

    My PRD landscape has 2-3 applications. Whenever any application loads for the first time in the memory, it takes quite some time before it is loaded. Once the application is loaded, the response times are pretty quick and acceptable.
    During specific parts of the day / month, a specific application becomes active. During this time, other applications may or may not be used, but one specific application is definitely used. I want to keep this application's cubes loaded in the RAM, so that response times are quick, whenever the user needs it - whether for the first time or otherwise.
    How to keep alive a specific application's cubes alive and loaded in RAM? I am not looking for general solution like setting the "FM Service" to Automatic (currently it is set Manual) - setting this to Automatic, will affect all applications. However, I am looking for a specific application at a specific period of time.
    I am ok with a custom solution if required. Let me know, what are my options.

    I think you are looking for an inappropriate solution to your problem. Most HFM applications take a few seconds to start up. If your application takes such a long time to start up you really need to examine the root cause. Start by removing the Sub NoInput and Sub Input routines in your rules to see if this is the reason the application takes so long to start.
    If the removal of those routines does not significantly change the startup time, look through the event logs for possible causes. It is possible you have a connection problem with the Oracle database for example, or you have an environment configuration problem where the HFM application servers have a very slow connection to the database server, or possibly the database server performs poorly.
    I strongly suggest you investigate these root casues first before trying to make HFM behave in a non-standard way. Certainly you can start the HFM Management Service, which will start all of your HFM applications and keep them all up and running. This approach does not allow the applications to shut down on their own though. Only use this if you have exchausted your investigations (as I suggsted above).
    --Chris                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Integration Error in ODI while loading data to HFM application

    Hello All,
    I am performing a integration from source(Flat file) i.e example.csv  to classic HFM application I have created an Integration and while loading the data with the all options provided, and if you see these Properties [CLEAR_ALL_METADATA_BEFORE_LOAD, REPLACE_MODE] are mandatory,which is getting as error as properties are not set
    these properties are(as a options) is given in the IKM SQL to Hyperion Financial MetaData, but here I am using IKM SQL to Financial Management Data.
    I get the following error:-
    org.apache.bsf.BSFException: exception from Jython:
    Traceback (most recent call last):
      File "<string>", line 3, in <module>
        at com.hyperion.odi.hfm.ODIHFMAppWriter.loadData(ODIHFMAppWriter.java:240)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
    com.hyperion.odi.common.ODIHAppException: com.hyperion.odi.common.ODIHAppException: Properties [CLEAR_ALL_METADATA_BEFORE_LOAD, REPLACE_MODE] are mandatory.
        at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:146)
        at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.execInBSFEngine(SnpScriptingInterpretor.java:322)
        at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.exec(SnpScriptingInterpretor.java:170)
        at com.sunopsis.dwg.dbobj.SnpSessTaskSql.scripting(SnpSessTaskSql.java:2472)
        at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:47)
        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:2913)
        at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java:2625)
        at com.sunopsis.dwg.dbobj.SnpSessStep.treatAttachedTasks(SnpSessStep.java:577)
        at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java:468)
        at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java:2128)
        at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$2.doAction(StartSessRequestProcessor.java:366)
        at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:216)
        at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.doProcessStartSessTask(StartSessRequestProcessor.java:300)
        at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$0(StartSessRequestProcessor.java:292)
        at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:855)
        at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:126)
        at oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:82)
        at java.lang.Thread.run(Thread.java:662)
    Caused by: Traceback (most recent call last):
      File "<string>", line 3, in <module>
        at com.hyperion.odi.hfm.ODIHFMAppWriter.loadData(ODIHFMAppWriter.java:240)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
    com.hyperion.odi.common.ODIHAppException: com.hyperion.odi.common.ODIHAppException: Properties [CLEAR_ALL_METADATA_BEFORE_LOAD, REPLACE_MODE] are mandatory.
        at org.python.core.PyException.fillInStackTrace(PyException.java:70)
        at java.lang.Throwable.<init>(Throwable.java:181)
        at java.lang.Exception.<init>(Exception.java:29)
        at java.lang.RuntimeException.<init>(RuntimeException.java:32)
        at org.python.core.PyException.<init>(PyException.java:46)
        at org.python.core.PyException.<init>(PyException.java:43)
        at org.python.core.Py.JavaError(Py.java:455)
        at org.python.core.Py.JavaError(Py.java:448)
        at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:177)
        at org.python.core.PyObject.__call__(PyObject.java:355)
        at org.python.core.PyMethod.__call__(PyMethod.java:215)
        at org.python.core.PyMethod.instancemethod___call__(PyMethod.java:221)
        at org.python.core.PyMethod.__call__(PyMethod.java:206)
        at org.python.core.PyObject.__call__(PyObject.java:397)
        at org.python.core.PyObject.__call__(PyObject.java:401)
        at org.python.pycode._pyx15.f$0(<string>:6)
        at org.python.pycode._pyx15.call_function(<string>)
        at org.python.core.PyTableCode.call(PyTableCode.java:165)
        at org.python.core.PyCode.call(PyCode.java:18)
        at org.python.core.Py.runCode(Py.java:1204)
        at org.python.core.Py.exec(Py.java:1248)
        at org.python.util.PythonInterpreter.exec(PythonInterpreter.java:172)
        at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:144)
        ... 19 more
    Caused by: com.hyperion.odi.common.ODIHAppException: Properties [CLEAR_ALL_METADATA_BEFORE_LOAD, REPLACE_MODE] are mandatory.
        at com.hyperion.odi.hfm.ODIHFMAppWriter.loadData(ODIHFMAppWriter.java:240)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:175)
        ... 33 more
    Caused by: com.hyperion.odi.common.ODIHAppException: Properties [CLEAR_ALL_METADATA_BEFORE_LOAD, REPLACE_MODE] are mandatory.
        at com.hyperion.odi.hfm.ODIHFMUtil.validateRequiredProperties(ODIHFMUtil.java:87)
        at com.hyperion.odi.hfm.ODIHFMMetadataLoader$OptionsMetadataLoad.validate(ODIHFMMetadataLoader.java:66)
        at com.hyperion.odi.hfm.ODIHFMMetadataLoader.validateOptions(ODIHFMMetadataLoader.java:188)
        at com.hyperion.odi.hfm.ODIHFMAppStatement.validateLoadOptions(ODIHFMAppStatement.java:168)
        at com.hyperion.odi.hfm.ODIHFMAppWriter.loadData(ODIHFMAppWriter.java:195)
        ... 38 more

    Hi Ujjwal,
    I remember Pratik had same issues and he resolved it.
    Re: ODI Error while loading data to Classic HFM Application
    Hope that fix your issue.
    Bhabani

  • How To Managed Serialized Data Over Multiple Application Versions

    Lately I've been struggling with deciding how to deal with serialized data between application versions. Assume you have some software that has to be able to save data files. As the application evolves, the data format changes. The application needs to be able to load data saved from prior application versions.
    When I first started out I just used a Serializable class. It was quick and easy. However, as newer versions used slightly different data formats, I had to come up with a means to upgrade the data to the latest version. Initially I created a process where the latest data class knows how to upgrade from prior data class versions. Then, when loading data in the application, if the class doesn't match the latest data class version, it checks to see if it matches one of the versions that can be upgraded.
    This sort of works, but still has one glaring problem. The old data classes must be etched in stone; never altered. For ever and ever. You can get away with certain simple updates to older data classes by defining a serialVersionUID and keeping it's value the same. But this doesn't always work. What if my overall package structure changes? I have to ensure that the old data classes remain in the same older package structures. Not ideal.
    So I've started considering other ways to serialize data...a process where the data can be broken down into core Java classes. There are serializers for serializing to XML, but I don't feel that XML is an appropriate storage format for the data. I'm also considering using a custom built serializer that uses introspection in some fashion.
    Before I go any further, however, I'd like to solicit some suggestions. Do you know of any serialization packages that might help me? Do you have any suggestions on what might be a good custom solution? Will Externalizable make this easier? (I've never used Externalizable before...looks like maybe it could help, but even that appears to be vulnerable to refactors that change package structure).
    Thanks for your thoughts.

    I've continued to work on my own custom serialization process as described in my previous post. Here is how it currently works:
    In the example there is a class named ExampleSubClass identified by the String "xsub" of version "1.0". It is saved and then reloaded into a class named RevisedExampleSubClass identified by the String "xsub" of version "1.1". The String "xsub" identifies what the class represents, which allows the class and package to change as needed. Fields can be added, removed, or converted through the optional serialConvert method.
    public class ExampleSubClass extends ExampleSuperClass {
         private static final String serialId = "xsub";
         private static final String serialVersion = "1.0";
         ExampleAggClass exNullAggClass = null;
         String exString;
         ExampleNonXCSerialClass nonXCSerialClass;
         String exNum;
         ExampleAggClass conAggClass;
    public class RevisedExampleSubClass extends ExampleSuperClass {
         private static final String serialId = "xsub";
         private static final String serialVersion = "1.1";
         ExampleAggClass exNullAggClass = null;
         String newStringA;
         String newStringB;
         String exString;
         Integer exNum;
         ExampleNonXCSerialClass nonXCSerialClass;
         String conAggString;
         private void serialConvert(Converter converter, String fromVersion) {
              if (fromVersion.equals("1.0")) {
                   converter.addField("newStringA", String.class, "new string!");
                   // intentionally not adding newStringB to see if warning is thrown
                   converter.convertField("exNum", new ConvertScript<String,Integer>(String.class, Integer.class) {
                        @Override
                        public Integer convert(String fromValue) {
                             return new Integer(fromValue);
                   converter.convertField("conAggClass", "conAggString", new ConvertScript<ExampleAggClass, String>(ExampleAggClass.class, String.class) {
                        @Override
                        public String convert(ExampleAggClass fromValue) {
                             return fromValue.getAggString();
    // and then in some other class...
         ExampleSubClass example = new ExampleSubClass();
         System.out.println("Serializing class...");
         XCObjectOutputStream xcoos = new XCObjectOutputStream(new FileOutputStream(file));
         xcoos.writeObject(example);
         xcoos.close();
         System.out.println("Deserializing class...");
         XCObjectInputStream xcois = new XCObjectInputStream(new FileInputStream(file), RevisedExampleSubClass.class);
         RevisedExampleSubClass resc = (RevisedExampleSubClass) xcois.readObject();There is still a little more work to do to fully support arrays and collections, and I need to develop a rigorous test suite for it. But so far it's looking good.
    Edited by: Skotty on Jul 18, 2010 5:31 PM

  • How to find from Data target filled by which  process chain.

    hi all.
    i have list of cubes i want to know that which cube is filled by which prcess chain ...
    can anyone suggest me appropriate solution.
    simply i want to know that when reconcilation which process chain affect on which bex report so that if one process chain got failed then i will not generate that specific report for that day..
    i have list of multiprovider on which we are generating rports and tech. name of report also i have.

    Ganesh ji,
    Choose your infopackage which holds the data targets, in the Infopackage screen reach the Scheduler tab and you will find the where-Used list. This will let you know the particular process chain responsible.
    thanks
    Prabhakaran
    09176665954

  • How to query two data blocks simultaneously?

    Dear all,
    Need your inputs on the following problem statement...
    Existing Functionality:
    We have two data blocks A (Parent) and B (Child) in a relationship. Both data blocks refer to different tables.
    Data block A is the query data block and for a single record in block A we can have multiple records in block B. Multiple records in block B are shown one at a time after executing a query, this is implemented by using a list item C (belongs to a third block).
    For example
    Let us say block B can have 5 different types of entries for each record in block A. In this case the list item C will have 5 values corresponding to these entries. Once the query is executed, block B will show the default entry for the queried record in block A. To see other entries for the record user can select the required value in list item C and corresponding entry in block B will be fetched.
    Requirement:
    Our requirement now is to enable querying upon both data blocks A and B simultaneously. To implement this I replaced data blocks A and B with a single data block X which is based on the join of the two tables referred by the Data blocks A and B earlier. As the fields should allow insert, update, delete operations we did not use a view here.
    Issue:
    Now the problem is, each record in block A for which block B had multiple entries earlier is now getting listed multiple times because of the join.
    I have tried but could not find any solution for this. I would appreciate if any of you can suggest how we can query both blocks simultaneously without affecting the existing functionality.
    Thanks,
    Amit

    I don't understand your requirement in detail. I try to repeat what i understood so far.
    You have a master-block A based on a table A and a detail-block B based on a table B. So far so good. You can now query based on conditions just the datablock A, because B is a detail and therefore can only be queryied in context of block A.
    Your reuirement is to query on both blocks A and B and find block in B also without giving conditions for the relevant block A.
    Is it that ?
    What i don't understand, what is block C used for?
    An idea for the querying of block B's data: Create Non-database-items items in block A for the search-criteria you need on block B and make them Queryable.
    In the PRE-QUERY-trigger on block A build a WHERE-condition if that search-criteria is entered, something like
    IF :BLOCK_A.SEARCH_CRITERIA_FOR_BLOCK_B IS NOT NULL THEN
      SET_BLOCK_PROPERTY('BLOCK_A', ONETIME_WHERE, 'WHERE PKVALUE IN (SELECT FKVALUE_TO_A FROM TABLE_B WHERE FIELDVALUE=' ||:BLOCK_A.SEARCH_CRITERIA_FOR_BLOCK_B)');
    END IF;This would query also records to A for which you want to have the B-records. So you could keep block-structure up to master-detail.

  • How to query the Date/Time Dataype

    Hi,
    I am trying to query the database with Data/Time Datatype.
    String date=request.getParameter("date");
    String month=request.getParameter("month");
    String year=request.getParameter("year");
    String tosearch=month+"/"+date+"/"+year;
    String getTable="select * from tableRes where dmy='"+tosearch+"'";I would like to know why it is not working?
    I ran through tomcat and it appeared this error:
    Data type mismatch in criteria expression.
    Thanks!

    pramudya81 wrote:
    Rock,
    May I know more detail on your specs?
    What is your DB? Or how is exactly you execute the sql.
    to_date is anyway an Oracle syntax.
    So I guess your DB might be an SQL Server.
    to_date for oracle is equivalent as Convert in SQL Server
    example Select Convert(datetime ,'2002/01/01')
    Hope it works nowBad idea. See reply 1.

  • How to query geography data type?

    Hello
    In my db i create table having geography type column and insert location detail (lat & lon) using point method. How can i do query for getting that location in my console application?
    and also i try this got an error?

    It looks like you chose one line (the one beginning with "set") and ran it, stand-alone, in an SSMS query window. You need to run all 3 lines of code (i.e don't select any particular line, and hit the Run button). Or select all 3 lines and hit
    the Run button.
    What the error message says is that you are trying to use the variable @g without defining it. This could only mean that you're running only line 2 (the highlighted line).
    The lifetime of a SQL variable (@g) is one-batch long, a variable goes out of scope at the end of the batch. So running each line as a separate batch won't work with SSMS. You need to run them all at once.
    Cheers, Bob

  • Error while loading data to hfm application

    Hi
    Friends i m totally new with this hfm, i created an application and i have loaded metadata,while loading data it gives error messsage as
    Line: 2, Error: Invalid cell for Period January.
    Actual; 2009; January; Periodic; Marina Beach; INR; Income; [ICP None]; Tea; [None]; [None]; [None]; 5000
    Line: 3, Error: Invalid cell for Period July.
    Budget; 2010; July; Periodic; White Field; INR; Income; [ICP None]; Cofee; [None]; [None]; [None]; 4800
    please help me to debug this error

    The Data seems to be ok, so i suggest you log into your application and make sure the interception point is a data entry point. Basically in a grid view select the same members listed in the row of data. This will tell you what the issue is...

Maybe you are looking for

  • CS5.5 Production Premium Dynamic Link error

    I have trial CS5.5 Production Premium. I'm trying to dynamic link premiere pro to after effects but error "Using Adobe Dynamic Link with Adobe After Effects requires Adobe Production Premium". I already instal Production Premium.I reinstall but still

  • How do i load the music from my ipod onto a new computer without the old computer

    my ipod has music on it from another computer that died and i just downloaded itunes on my new computer, how do i put new songs on my ipod without erasing all the music already on it?

  • Problem with rollback

    Hello, I have this query DECLARE @TransactionName varchar(20) = 'inlinefunctionTransaction'; begin tran @TransactionName  select * from jsp('S1','P1'); ROLLBACK TRAN @TransactionName; go but when executing it I get a message Cannot roll back inlinefu

  • Why can't I import clips with foreign character file names?

    What the **** man? I've got a series of clips with foreign character file names that FCP will not let me access via the Import->File method. Some of the offending character sets include Chinese, Arabic, and a couple of less well known Unicode sets li

  • Camera RAW - reference to Java 2D

    If you know of a good implementation of Camera RAW in Java please respond to my question in the Java 2D forum. I'm only cross-posting here since that forum has a very low activity level.