Batch Processor and Custom Functions

Hi,
We're using the 10.4.2 Batch Processor, connected to an Oracle 11g database to handle large amounts of data.
Recently, four custom functions have been added to the rulebase. Nothing complicated, just some string manipulation stuff (trim whitespace etc.). Each function is just a few lines of fairly simple code. No database calls, no web service calls or anything like that. It stays within the Java jar file.
Suddenly the processing time of the BP has gone up from a couple of minutes to well over an hour. The only change to the rulebase has been the addition of the functions, nothing else.
It almost looks like the BP is initialising the custom functions with every case that's processed. If this is the case then this would be massively inefficient and as a result we would not be able to implement our new functions.
Has anybody else come across this before?
Regards,
Evert

943413 wrote:
Hi,
We're using the 10.4.2 Batch Processor, connected to an Oracle 11g database to handle large amounts of data.
Recently, four custom functions have been added to the rulebase. Nothing complicated, just some string manipulation stuff (trim whitespace etc.). Each function is just a few lines of fairly simple code. No database calls, no web service calls or anything like that. It stays within the Java jar file.
Suddenly the processing time of the BP has gone up from a couple of minutes to well over an hour. The only change to the rulebase has been the addition of the functions, nothing else.
It almost looks like the BP is initialising the custom functions with every case that's processed. If this is the case then this would be massively inefficient and as a result we would not be able to implement our new functions.
Has anybody else come across this before?
Regards,
EvertEvert,
You are correct, it does initialise the custom function for every case that is processed. This is necessary as every case is a determinations engine session.
However, you have control over how long the initialization process. If you make the time consuming parts of your custom function static, and then make the initialization fast, then you will get a much faster custom function call. The custom function code is entirely within your control and you can make it as fast as you like.
Cheers
Frank

Similar Messages

  • OPA 10.4 - batch processor and Entity

    Hello all.
    I have a problem with the use of Entity with batch processor.
    The fact is we want to use OPA with csv input named like "TARIF_ONE.csv". One different csv for every way of tarification and each time a different project that will be call by a batch process (the client need)... without the use of a configuration file !
    So, if I well understood the OPA batching process, I need, for a "TARIF_ONE" project to be feed with a "TARIF_ONE.csv" file, to have a "TARIF_ONE" entity that will get all the data from the csv input file.
    I've done so.
    But my problem is that when I call the OPA zip by batch, the TARIF_ONE entity are well feed by the data from the csv file... but the calculation from the excel file are not made at all... and in a exporttsc file, the Entities (TARIF_ONE) are set as "unknown" for all the cases inputed...
    I've setted my project like this :
    my Properties file is setted like that :
    Global
    - TARIF_ONE (entity)
    --- INPUT_DATA_ONE (attribute) : Text = "Input data one"
    --- INPUT_DATA_TWO (attribute) : Text = "Input data two"
    --- OUTPUT_DATA_ONE (attribute) : Text = "Output data one"
    --- OUTPUT_DATA_TWO (attribute) : Text = "Output data two"
    And my excel rules file is setted like below
    - Declaration Sheet
    -- INPUT_DATA_ONE : Text = "Input data one from TARIF_ONE"
    -- INPUT_DATA_TWO : Text = "Input data two from TARIF_ONE"
    -- OUTPUT_DATA_ONE : Text = "Output data one from TARIF_ONE"
    -- OUTPUT_DATA_TWO : Text = "Output data two from TARIF_ONE"
    - Calculation Sheet
    -- OUTPUT_DATA_ONE = INPUT_DATA_ONE * INPUT_DATA_TWO
    As I said, when using the batch process, the inputs attribute for the TARIF_ONE entity are well feed, but the OUTPUT attribute are not (still unknown)... and the Entity itself is said as "Unknown"... any way of reflexion to soluce that ?
    Thank-you,
    Philippe,

    Philippe Carpentier wrote:
    Thank you Franck for your answer.
    I would have just one more question : is it possible to use different entity in the zero configuration mode ?
    I tried with one data file by entity, and the entities ares not created
    I tried with all the datas for entities in the global.csv file, and the same.
    It seams to me that when using differents entities in a projetc for batch, we have to use a configuration file... do you confirm my feeling ?
    Philippe,
    Edited by: Philippe Carpentier on 25 mai 2012 03:12You can definitely load entities other than global using zero configuratiuon. To do this create a csv file that has the same name as the public name of your entity. For example if you have an entity with the name "person" then create a person.csv file for each entity instance.
    You will need to have a reference to which global instance each entity instance relates to. The way to do this is to have a column named for the containment relationship for the entity to hold the foreign key to the entity instances parent.
    Example
    We have a global.csv with 3 globals (3 cases)
    #, (number_of_persons)
    1,
    2,
    3,And then a person.csv with 7 people which must all be link to their owning (parent) global. This is done through the containment relationship with the public name "all_persons"
    #,person_name,person_age,all_persons
    1,Fred,      ,27,       ,1
    2,Barney,    ,28,       ,1
    3,Homer,     ,40,       ,2
    4,Marge,     ,38,       ,2
    5,Bart,      ,10,       ,3
    6,Maggie,    ,1,        ,3
    7,Lisa,      ,8,        ,3Each value in the column "all_persons" is a foreign key to the global value which contains that person
    For more information on this, see "CSV input for the Batch Processor", and "Zero-configuration conventions for CSV input" in the "Oracle Policy Automation Developer's Guide". http://docs.oracle.com/html/E29403_01/toc.htm

  • After deleteing Custom CSS and Custom Functions, cannot get FireFox to recognize audio player. Works in IE and Safari. Site is https and using bluehost.

    Using the Genesis Framework on my WordPress site. I can use Safari and IE. However, when I try to use Fire Fox, it will not appear. I deleted all of my Custom CSS and Functions. Still, nothing is working. Contacted bluehost, the representative there was not able to help me out and also emailed CD Baby to see what might work. I am not sure if it is something with my site using HTTPS instead of HTTP of why this is not working? I am told the plugin works on Fire Fox but I cannot for the life of me figure out what's going on. Also changed themes and used Twenty Thirteen among others. Still the same thing. Fire Fox will not work. Tried in Text widget, and pasting on a page, and still not working. IE and Safari it is fine. Do I need to add something else within my site? Thanks ahead of time for any way to solve this situation.

    There is mixed active content loaded in an iframe that Firefox is blocking as you can see by the shield icon at the left end of the location/address bar.
    *https://developer.mozilla.org/Security/MixedContent
    *https://developer.mozilla.org/Tools/Web_Console

  • Custom schema and custom functions, menus and responsibilities

    Hi All,
    My company has developed an integration for the EBS to enable third party software to create items and other objects. We are using a JDBC connector and call the underlying pl/sql APIs (like EGO_ITEM_PUB.PROCESS_ITEM) from Oracle. We have added some functions, menus and responsibilities to our EBS 12.1.1 installation in order to provide an access control mechanism for our JDBC integration since it connects to a db schema directly. We call FND_FUNCTION.TEST to check if the logged in user/responsibility has the function he wants to call assigned to him. We also plan to use a custom schema so that we do not have to connect to the apps schema directly because we think that our customer will not allow us to do that. What do you think?
    I planed to use FNDLOAD to download all the function, menus and responsibilities in order to provide a script for our customer so that they can simply upload all the objects (menus...).
    My problems/questions now are:
    Should they upload those menus, functions and responsibilities into our custom schema or into the apps schema?
    Are menus and responsibilities always defined in the apps schema?
    In which schema are they defined if they are created in the GUI (oracle forms)?
    Thanks,
    Konrad

    Hi!
    Recomended way for to create custom menu,function etc not in APPS schema.Do you mean that those things should not be created in the APPS schema?
    I just share link to can check how you can customize forum which can be avaliable in menus etc.So please see below link which can be applicable for r12 too
    http://download.oracle.com/docs/cd/A91568_01/acrobat/115saug.pdf
    Oracle Applications System Administrator's Guide RELEASE 11 Page 2-36
    Oracle Applications System Administrator's Guide RELEASE 11i Page 2-36 & 11-3I checked this documentation and I created my responsibilities in the same way as it is described in there. In what schema are responsibilities created if you use the resp window to create them? Or does it depend on the application which is provided while creating the responsibility?
    Konrad

  • SSRS - Pass Field Value List To Custom Function Assembly And Display Result

    I have written a SQL Server Reporting Services custom function as a C# assembly DLL and added it to my report. The purpose of the function is to search for outlier records in a collection of data. The data is represented as an array of floating point -tuplets
    (float[][]). In a medical patient database, these might be things such as blood pressure, cholesterol, hight, weight, waist measurement, etc.
    Several user input parameters are provided in the report, including numeric seed values for this particular algorithm. One multivalued parameter is a list of the numeric columns to be used as input to the algorithm because, importantly,
    the user can choose any subset of the value columns. I have a tablix that will display columns from the dataset conditionally, based on which of those columns are chosen.
    At this point, there are two issues I'm having difficulty with:
    How do I, in the course of running the report, take just the numeric columns that the user has chosen (ignoring all others in the dataset) and pass them as a float[][] to my custom function? Or is there something in the
    Microsoft.ReportingServices namespace that I should use to query an input dataset and convert it to an array in my C# code?
    How can I present the array subset returned by my custom function in a tablix in the report?
    Note: One thought that occurs to me is that outlier records tablix could be contained in a subreport, but I'm not clear on the logistics of passing dataset field results from a master report to a subreport.
    I envision a final report when run to be similar to the following:
    - Mark Z.

    Hi Mark,
    Sorry for the delay.
    From your description, you want to pass the dataset data to a custom code array, and return the subset of the array, right? In this case, you can use a custom function to add the data to array, and use the a custom function to sort the data base on your
    requirement and then use a function to get the subset of the array. Here are some sample custom code for your reference.
    Add to arryay
    Dim values As System.Collections.ArrayList=New System.Collections.ArrayList()
    Function SetText(ByVal value As Integer) As Integer
        values.Add(value)
        return value
    End Function
    Sort array
    Function Sort()
    Dim i as Integer
    Dim j as Integer
    Dim t as Integer
    Dim n as Integer=values.Count-1
    For i=n To 1 Step-1
     For j=0 To i-1
     if values(j)<values(j+1) Then
        t=values(j)
        values(j)=values(j+1)
        values(j+1)=t
     End if
     Next j
    Next i
    End Function
    Return value.
    Function Rank(ByVal value As Integer)
       return values(value)
    End Function
    Assume that you pass [Weight] field to array, you can use the expression below on the Weight column:
    =Code.SetText(Fields!Weight.Value)
    Then use the expression below to get the values.
    PatientID:=Sort() & Lookup(Code.Rank(0),Fields!Weight.Value,Fields.Patient.Value,"Dataset")
    Height:=Lookup(Code.Rank(0),Fields!Weight.Value,Fields.Height.Value,"Dataset")
    Weight:=Code.Rank(0)
    Hope this helps.
    Regards,
    Charlie Liao
    If you have any feedback on our support, please click
    here.
    We
    are trying to better understand customer views on social support experience, so your participation in this
    interview project would be greatly appreciated if you have time.
    Thanks for helping make community forums a great place.

  • I am trying to batch convert cr2 to jpg. in bridge i go tools ps image processor and it returns a message "Image Processor.jsx could not be found." I updated cc to no avail. i am on mac 10.7.5

    I am trying to batch convert cr2 to jpg. in bridge i go tools>ps>image processor and it returns a message "Image Processor.jsx could not be found." I updated cc to no avail. i am on mac 10.7.5

    I go to file scripts but there is no option there for Image Processor

  • I have Photoshop CS5 and my image processor and batch tool are gone. How do I get them back?

    I have Photoshop CS5 and my image processor and batch tool are gone. How do I get them back?
    I went into edit preference and all the start up scrips are selected so what else is there?

    When you installed CS5, you have a chance to register it. If you do, your serial number is on file under your Adobe (My Products). If you did not, you have no serial number on file and even worse, no proof you own it.
    You do not have your serial number copied down anywhere? Hard to believe you tossed the dvd box and all the documents away.
    So Help > Register might give you a chance to do this without you knowing the number.
    If not, you may want to consider the Photography Plan. Creative Cloud Photography plan | Adobe Creative Cloud

  • Export, Import and Table declaration in custom function module

    I am creating a custom function module. Parameters needed are export internal table and one data field from the internal table.
    What do i need to fill for 'associated type' for these export parameters since size of the internal table and type for the data field from the internal table vary.

    Hello Albert
    If the function module need not be RFC-enabled then you have many ways to define such dynamic parameters, e.g.:
    FUNCTION ZUS_SDN_DYNAMIC_PARAMS.
    *"*"Local Interface:
    *"  EXPORTING
    *"     REFERENCE(ET_ITAB) TYPE  TABLE
    *"     REFERENCE(ET_ITAB_1) TYPE  ANY
    *"     REFERENCE(ET_ITAB_2)
    *"     REFERENCE(ED_DATA) TYPE  CLIKE
    *"     REFERENCE(ED_DATA_1) TYPE  ANY
    *"     REFERENCE(ED_DATA_2)
    ENDFUNCTION.
    See also: How to return back a structure of dynamic tables in a Function Module
    Regards
      Uwe

  • Batch Processor, WIA and Inferred entity instances

    Hi All,
    I'm playing around with the new OPA 10.4. I bumped into an error in What-If-Analysis document when I tried to add a new worksheet for an inferred entity. Is this not possible in WIA? Does it mean it will not work as well with Batch Processor.
    Here's my data model:
    global
    --- the applicant
    --- --- the qualification
    --- --- --- the exempted course (inferred instances from 'the qualification' attributes)
    Thank you in advance!
    Regards,
    Jerome

    Brad Tuckett wrote:
    Jerome wrote:
    Is there a possible workaround right now in 10.4 to persist inferred instances in Batch Processor?The Batch Processor will not output any inferred instances in 10.4
    One more thing, I'm also using 10.2 and have implemented InferencingListener to create instances, would you happen to know if I will bump on the same issue with DSC?
    There probably isn't a way of having any entity instances created by an event listener appear in the Batch Processor output for database or CSV.
    However, you may be able to set the output to saved sessions. Although this isn't explicitly supported, I would expected that any instances you have created would show up in the exported sessions, which will be xml files in the xds format. This will create one session file for each case.
    You can set the output to be exported sessions by using "--export <dir>" in the command line or use the xml configuration for the Batch Processor.
    When 10.4.1 is released you should be able to switch to using inferred entities which will be compatible with the Batch Processor.

  • Batch changes don't function. Apt 3.2. From simple commands like "rotate clockwise" to "lift and stamp" the command only affects to the last image in the group selected. Similar problems? Solutions?

    Batch changes don't function. From simple commands like "rotate clockwise" to "lift and stamp" the command only affects to the last image in the group selected. Similar problems? Solutions? Suggestions? Thanks, Bruce

    Glad it helped. Everyone has been bitten by this at one time or another. Fortunately you only get bit once
    Well if you haven't already read it two or three times the User manual is really very good. Apple really did a nice job with it. The on-line version is nice because it is searchable.
    After that the Apple Pro Training Series book Aperture 3 is very useful. Its basically split into three parts. The library, adjustments and sharing. In addition if you get all the way through it you can take the Certification test and become, well certified.
    Rwboyer who posts here on and off has a good site and a couple of ebooks that I found useful.
    good luck

  • I recently upgraded my Mac to Yosemite and I can't use the custom function (grayed out) in Image Trace Illustrator CS6 (physical version). Anyone else having this issue?

    I recently upgraded my Mac to Yosemite and I can't use the custom function (grayed out) in Image Trace Illustrator CS6 (physical version). Anyone else having this issue?

    Custom will show automatically as soon as you just edit some options. So just go ahead, you don't need to select "custom"

  • Custom functions and operation - PE04

    Hi,
    I required a solution for my scenario.
    I have two absence quota type QA1 and QA2,  if a employee has the basic pay less than 8000 then he will get assigned with QA1 and if a employee has a basic pay is equal to or greater than 8000 then he get assigned to QA2.
    Similarly leave carry forward, QA1 employee has 120 days and QA2 has 240days.
    I am using RPTIME00 to generate my Quota QA1 and QA2.
    I need to create a custom functions and operation(PE04) for my requirement, can u help me for the same

    Sughy,
    If for some reason, you cannot do what Antoine suggested here's another idea.
    Is your basic salary based on a pay scale structure? If it is may be you can query the pay scale group and level by using OUTWPxxxx opertation (TRFAR, TRFGB, TRFGR, TRFST). However you have to first configure generation rules for the quota buckets correctly esp for the base entitlement to be a day balance time type. Then you can write a PCR to add this time type during time evaluation by looking up the values in pay scale structure of individual employees.
    There are probably several other ways to group these employees together like having the same additional time ID indicator in 0007 or having a different Daily DWS class indicator etc. The concept is to have a unique identifier if a simple grouping as mentioned by Antoine is not possible. You can seperate them and write your own PCR for both accruals as well as limiting the carry forward balances.
    Hope this helps.
    Good Luck.
    Regards,
    Raj.

  • How to export and import custome functions...

    Hi Biddies,
    I am wondering is there any way the custome functions in an existed report can be exported.
    If there is, how can I do it?
    For example,   "Custome Functions.rpt", which was distributed  with Crystal Reports, has a custome function library. How can I export it from the report?
    Thanks
    Edited by: Jonas sun on Mar 18, 2009 7:13 AM

    Hi,
    Did  you try exporting it ?
    What format you are using to export it .
    As I have seen you can export the custom functions contained report.
    I had done it in pdf format for your references go to sample report folder
    select featured example report folder in that open custom function report and export it to pdf format.
    The report will exported with the field data of custom function.
    Is this answer you wanted ? if not please explain me bit further.
    Regards,
    Neo.

  • How to find master data info objects. Partner function and customer class.

    hi,
    Can you please tell me what are the available extractors for Partner Function (PARVW from VBPA)and Customer Class (KUKLA from KNA1).
    I hope these fields are master data. I checked in 0customer. But I didn't find it. There is a info object (Business partner). Is it the same?
    pls reply

    I will admit that I am not familiar with ECC and there may be different interpretations of what KUKLA means and different means of extracting Customer information to/from ECC.
    However, for us, when extracting Customer Attributes using the 0CUSTOMER_ATTR datasource in R/3, we map KUKLA to 0CUST_CLASS.  They are both set up as 2 CHAR.  That is not to say that you should also.  You can map it to a custom infoobject in BW as long as you set it up as an attribute of 0CUSTOMER.  KUKLA is available in the standard datasource 0CUSTOMER_ATTR in R/3.  When looking at what is available in the infosource for 0CUSTOMER in BW, 0CUST_CLASS is a logical choice to map.
    As far as VBPA-PARVW, VBPA is not a source for master data for 0BPARTNER.  VBPA contains the business partners associated with Sales documents.  So if you are going to create a data provider (cube/ODS) in BW and VBPA-PARVW is part of the transactional datasource in R/3, the you can map it to 0BPARTNER in your cube/ODS.
    Hope this helps.

  • Sales District and Partner function relationship in customer master

    Hello there
    I am working on a report and need to know one table relation for sales District and Partner function 
    i have a requirement , where i want to list all the partner number/Partner function assign to the customer with ref to the sales District
    we have one partner function Tab at sales Area tab in customer master , and another when we click on Sales district tab at header will get another window where we maintain partner function relate to the sales District , i want to have all those partner function in report , can you please help me where i can find that in table ? when i do F1 its says  KNVP but that table maintain at the sales area leval , not for the Sales District !! if you can help
    thanks
    Sonam

    Hi Sonam -
    and another when we click on Sales district tab at header will get another window where we maintain partner function relate to the sales District
    Do you have custom table/maintenance for sales district? Are you not maintaining Sales District in Sales Tab of customer master.
    You have to look for the field and table where you have maintained sales distict along with Customer and join the customer with KNVP customers and get all the partners.
    For Example - if you have mainationed sales district in KNVV table of BZIRK field then you have to join KNVV -KUNNR with KNVP-KUNNR and extract all records of customer distict and associated partner functions.
    Let me know,if the given solution is not applicable for your case.
    Thanks
    Amit Gupta

Maybe you are looking for

  • Itunes match 4010 error

    Today I'm getting an "unknown error occured (4010)" when iTunes Match tries to update.  It sits at "Waiting for Apple to deliver your iTunes Match result..." for awhile and then it puts up that error.  It did so both before updating to iTunes 10.7 (W

  • IPhone casing loose?

    Last night I was using my iPhone when I realized that if you touch the left side of the black area on the back that its loose and squeaks. Has anyone had this problem, if so what are my options with apple?

  • How Assigned TO field will be updated in "start Approval process" Task Action

    I have created a reusable workflow in sharepoint designer. Am using "start Approval process" Task Action. I have a question in "start Approval process" Task Action. I have username field in the list.  I have created a task form field with name userna

  • Mail not coming through

    netflix tried 3 times to send me mail so I could change my password but I could not get the email. I gave them my yahoo email address and the mail came right through . Any idea why I could not receive email they told me to check my junk mail box but

  • Podcast not showing up on phone after download

    I download a podcast on my iphone over wifi, it downloads, finishes and it's not there!????