The Batch Processor, is a very different application from the old Data Source Connector from 9.4. Its much more powerful and much easier to configure.
From the Batch Processor documentation at: Oracle Policy Automation Developer's Guide
For a one-to-many relationship, the relationship mapping should be placed in the entity which has the foreign key, this is usually the entity on the "to-many" side of the relationship
- name attribute - defines relationship public name.
- source-entity attribute - defines the source entity for the relationship.
- foreign-key attribute - defines the column in which the foreign-key for the source entity is stored. This field must be a integer field which references a primary key in the source entity table (or csv file).
So I think your configuration should probably be the following
- put the relationship" element in the "mapping" element for the entity "account"
- make sure to define the "name" (public name of the relationship), source-entity (the one side of the one-to-many), and the "foreign-key (database column which is the foreign key).
In you case that should look something like.
<mapping entity="account" ....>
<relationship name="settlementaccounts" source-entity="global" type="1m" foreign-key="sett_run_id" />
for more information, have a look at:
Thanks a lot for your advice.
I did try for the new relationship syntax you suggested before, however the "sett_run_id" is not an integer, it a string, thus it is having error. Need your advice.
As for the attributes, may I know the new syntax which I configured is correct?
Beside that, while processing the rulebase, there are java jar file to be processed as well by calling the "CallCustomFunction".
the interval’s EGA IEQ = Number(CallCustomFunction("EGAMinimumSum", "intervalsmarket,market_number,marketsintervals,interval_number,interval_account,interval_ega_id,interval_wpq,interval_ieqp"))"
Is there any way in which we can confirm the jar file is been called while processing the rule base as I can't see anything from the log?
<function platform="Java" library-path="SettlementFunctions.jar" class="com.emc.sett.SettlementFunctions"/>
Thanks for your help once again.
Sorry for the late reply, a nasty flu had me in its grasp.
If you are using the 10.4.4 version of the batch processor, you should have no problem handling string based ids. Can you confirm your version?
With regards to your custom function, if you turn the debugging up to to level="debug" in the log4j.xml of the batch processor, you should be able to see if the custom function is being loaded from the. Also, I would expect an error to be thrown if a custom function was not loaded.
Sorry for the very late reply as I am busy with other things.
Yest, our batch processor s actually 10.4.4 version.
I having this error in the log file:
"Stored error message: Error parsing value in column 'interval_account' in table 'interval'. Value 'XXXXXX' is not a number"
And also I notice that when I run for the batch processor, it only processed the Global entities and skipped the rest.
How can I go about resolving this?
Need your advice.