Adding Concurrent Request monitoring to an application

I am trying to implement just the concurrent request monitoring and did the exact steps as described in the OA Dev. Guide. Also, I am passing the requestID as an additional parameter to the request monitoring page. I am using a fireAction to get the request id that the user clicked on and doing the following
HashMap params = new HashMap();
params.put("requestID",requestId);
pageContext.forwardImmediately("FNDCPVIEWREQUEST", (byte)0, null, params, true, this.ADD_BREAD_CRUMB_YES);
I am getting the following errors when it gets into the request monitoring page,
# Method findChildIndex cannot find the child with the given itemName.
# The window title attribute for the page layout region has not been set. This attribute value will be used for the browser window title and should be set according to the UI standards. A default window title will be displayed for all such pages that violate the standards. Action: Set the window title or title attribute for the page layout region. The title attribute is used as a secondary source for the window title if the window title is missing.
Also, it is not filtering the results with the requestID that I passed.
Any help is greatly appreciated.
Cheers,
Nat

Just a thought before you can goto support is that you can create a function of your own with the given akRegionCode and other values. Give it a try with your function call or check if the provided seeded function is correct in all aspect, at times seeded values are corrupted.
--Shiv                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

Similar Messages

  • Estimating number of concurrent requests

    Hello,
    I want to estimate the number of concurrent requests that my server application may need to handle.
    Here are 3 approaches I tried to compute the probability of concurrent requests. Each of them gives different results, and obviously some of the results are palin wrong.
    It's been a while since I've learnt probabilities, I used to be comfortable with them back then, but this time's over it seems.
    Can you help me point out the flaw in the reasoning of each approach (that's for my culture), and, better yet, suggest how to correctly estimate the reasonable number of concurrent requests the server will have to handle (that's for my current problem)?
    Preliminary assumptions:
    Here are the figures, to fix ideas, and illustrate examples given below of the approach I took.
    The application will have 1000 users, each of them issuing 10 requests per day.
    Each request take approx 1 minute to be processed.
    Users are supposed evenly distributed over worlwide timezones, and the requests are supposed to be evenly distributed over the time of a day (which is not true for a single given user, but is true if enough users are evenly distributed over timezones).
    Users are supposed to work independantly of each other, so the probabilities of their actions are independant.
    *1) Approach 1: brute linear approach:*
    Each user uses 10 requests * 60s/rq = 600s of server time per day.
    1000 users therefore use 600,000 seconds of server time; as there are 86400s per day, in average the server is serving *600K/86,K = approx 7* request at any instant of the day.
    *2) Approach 2: estimate probability of N concurrent requests*
    Each user uses 600s of server time per day.
    So the probability to be serving one given user at any given instant of one day seems to be *600/86,400 = approx 0.007*
    The probability to be serving N given users at any given instant is therefore 0.007 pow N.
    As we don't care about which specific N users are served, the probability to be serving whatever N users is therefore: *(0.007 pow N)xC(1000,N)* where C(1000,N) is the binomial coefficient for subsets of N elements among 1000.
    For N=7 it gives a probability of approx 151%
    For N=10 it gives a mighty 68%
    You have to wait above N=20 to fall under a 1% probability
    *3) Approach 3: estimate probability of "not N" concurrent requests*
    Each user uses 600s of server time per day.
    So the probability to not serve one given user at any given instant of one day seems to be *85,800/86,400 = approx 0.993*
    The probability to not serve N given users at any given instant is therefore *0.993 pow N* .
    This probability is interesting for big values of N (the probability to serve m users = probability to not serve N=1000-m users), which for N=993 gives 0.09%
    But if I multiply by the binomial coefficient, the value is much above 1 for almost all values of N (interestingly, N=999 gives 95%, and N=1000 (0 user served) is 0.09%, but these results are probably artifacts of the floating point computations).
    What mixes me up are the following questions:
    Q1) Is approach 1 reasonable enough?
    It seems to be modelling a degenerate form of approach 2, where the requests would not be randomly spread over the day, but optimally organized in queues.
    I cannot force this usage pattern.
    Q2) How would you approach this estimation? Do you have a better approach?
    Q3) Obviously the formula in approach 2 is wrong at some point as for certain values of N it is above 1.
    It is expected that the probability for these values of N is 1, as the linear formula prooves that it is not possible to fit all 40000 requests into one day under a concurrency level of 7. But >1 is mathematically incorrect, so what is the flaw in the reasoning, that leads to this formula?
    Q4) What worries me in approach 2 is that I actually use approach 1 to compute the basic probability of 0.007, then use this result in the supposedly more general formula. I'm not sure whether the computing of the 0.007 qualifies as a deduction or as an assumption?
    Q5) What's wrong with approach 3 (probability to not serve N clients)? Why are the results inconsistent with approach 2?
    Q6) What worries me too is that I based all three approaches on instants of duration zero ("the probability that at any instant..."). Should I instead try to compute "the probability that over a period of 1 second, one user issues a request"? How does this modify the reasoning and the formulaes?
    Thank you in advance for your help.
    J.

    When it becomes difficult to get closed form solutions then resort to simulation. The following is a basic event simulation of 1 days of your problem as I understand it but using a uniform random active period. It will be trivial to change the active distribution to match your exact requirement. You will need to add JFreeChart to the classpath to run it.
    One advantage of this form of simulation is that one can easily add logic such as that to throttle the response and then examine how this affects users.
    import java.awt.Dimension;
    import java.awt.geom.Point2D;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.PriorityQueue;
    import java.util.Queue;
    import java.util.Random;
    import javax.swing.JFrame;
    import org.jfree.chart.ChartFactory;
    import org.jfree.chart.ChartPanel;
    import org.jfree.chart.JFreeChart;
    import org.jfree.chart.plot.PlotOrientation;
    import org.jfree.data.DomainOrder;
    import org.jfree.data.xy.AbstractXYDataset;
    public class Sabre20090403
        private static final double MEAN_TIME_BETWEEN_ACTIVE = 24D * 60 * 60 / 10; // seconds
        private static final double MEAN_PROCESSING_TIME = 60; // seconds
        static class Context
            public String toString()
                return "Number active = " + numberActive;
            public void appendPoint(double x, double y)
                Point2D.Double p = new Point2D.Double(x, y);
                results.add(p);
            public Point2D.Double[] getPoints()
                return results.toArray(new Point2D.Double[0]);
            private final List<Point2D.Double> results = new ArrayList<Point2D.Double>();
            private int numberActive = 0;
        abstract static class Task implements Comparable<Task>
            abstract void run();
            public double getEventTime()
                return time_;
            public int compareTo(Task other)
                if (time_ < other.time_)
                    return -1;
                else if (time_ > other.time_)
                    return +1;
                else
                    return 0;
            protected double time_ = 0; // in seconds
        static class TerminalTask extends Task
            public TerminalTask(double simulationDuration)
                time_ = simulationDuration;
            public void run()
                System.out.println("Simulation finished");
        static class PrintTask extends Task
            public PrintTask(Context context, double printInterval)
                context_ = context;
                printInterval_ = printInterval;
            public void run()
                context_.appendPoint(time_, context_.numberActive);
                System.out.println("Time " + time_ + "\t" + context_);
                time_ += printInterval_;
            private final double printInterval_;
            private final Context context_;
        static class User extends Task
            public User(Context context)
                context_ = context;
                run();
            public int getID()
                return ID;
            public void run()
                active = !active;
                if (active)
                    context_.numberActive++;
                    // Uniformly distributed from 0.5 mpt to 1.5 mpt
                    double p = random.nextDouble();
                    time_ += MEAN_PROCESSING_TIME * (0.5 + p);
                } else
                    double p = random.nextDouble();
                    // Exponential distribution with mean of MEAN_TIME_BETWEEN_ACTIVE
                    double delta = -MEAN_TIME_BETWEEN_ACTIVE * Math.log(p);
                    time_ += delta;
                    if (context_.numberActive > 0)
                        context_.numberActive--;
            private boolean active = true;
            private final int ID = nextID++;
            private static int nextID = 0;
            private final Context context_;
            private static Random random = new Random();
        static class Problem implements Runnable
            private Queue<Task> eventQueue = new PriorityQueue<Task>(20000);
            public void run()
                final Context context = new Context();
                for (int i = 0; i < 1000; i++)
                    eventQueue.offer(new User(context));
                eventQueue.offer(new PrintTask(context, 60 * 10L)); // 10 minutes print interval
                eventQueue.offer(new TerminalTask(24L * 60 * 60)); // 1 day
                while (true)
                    final Task task = eventQueue.poll();
                    task.run();
                    if (task instanceof TerminalTask)
                        break;
                    else
                        eventQueue.offer(task);
                final AbstractXYDataset xyDataset = new AbstractXYDataset()
                    private final Point2D.Double[] points = context.getPoints();
                    public double getXValue(int series, int item)
                        return points[item].x / 60.0;
                    public double getYValue(int series, int item)
                        return points[item].y;
                    public DomainOrder getDomainOrder()
                        return DomainOrder.ASCENDING;
                    public Comparable getSeriesKey(int index)
                        return "P" + index;
                    public int getSeriesCount()
                        return 1;
                    public Number getX(int series, int item)
                        return new Double(getXValue(series, item));
                    public Number getY(int series, int item)
                        return new Double(getYValue(series, item));
                    public int getItemCount(int series)
                        return points.length;
                final JFrame frame = new JFrame("");
                final JFreeChart jfreechart = ChartFactory.createXYLineChart("Simulation", "Time (minutes)", "Number active", xyDataset, PlotOrientation.VERTICAL, true, true, false);
                final ChartPanel panel = new ChartPanel(jfreechart);
                panel.setPreferredSize(new Dimension(1024, 768));
                frame.setContentPane(panel);
                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                frame.pack();
                frame.setLocationRelativeTo(null);
                frame.setVisible(true);
            public static void main(String[] args)
                new Problem().run();
    }Edited by: sabre150 on Apr 3, 2009 7:34 PM

  • Concurrent Managers & request monitoring and tunning

    Hi,
    Kindly share with me some scripts if you have for Concurrent Managers & request monitoring and tunning.
    Many thanks before.

    Check the following Metalink Notes:
    Note: 169935.1 - Troubleshooting Oracle Apps Performance Issues
    https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=169935.1
    Note: 108185.1 - Oracle Applications Object Library SQL scripts
    https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=108185.1
    Note: 104664.1 - Setup & Usage (Concurrent Manager Unix specific)
    https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=104664.1
    Note: 187504.1 - bde_request.sql - Process and Session info for one Concurrent Request (11.5)
    https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=187504.1
    You may also use Oracle Application Manager (OAM) to monitor the concurrent managers and requests.

  • Rwrun.exe - Application Error while running Concurrent Requests in R12(Win)

    Hi Gurus,
    I am getting the Rwrun.exe Application error, whenever i am running a concurrent request. The thing, that i feel is: Probably, The concurrent requests that has the output file associated with them are the one that are running into error.
    The following is the description of the error popup:
    rwrun.exe - Application Error
    The instruction at "0x663ed168" referenced memory at "0x00000004". The memory could not be "read".
    Click OK to terminate the program.
    Click CANCEL to debug the program.
    Due to this, am not able to submit any of the Reports.
    Details of My installation:
    Apps Version: Release 12
    Platform: Windows XP SP2
    Installed on: External HDD of 250GB
    Addon Patches after install: None.
    Has anybody faced this problem earlier?
    Please help me out gurus..
    Thanks in advance.
    Regards,
    Ajit

    Check the Event Viewer to see if there is more information about the error that can help.

  • How to submit a concurrent request from a button in Selfservice

    Hi,
    I hope this is the forum where to start.
    I want to submit a concurrent request when a button is pushed in selfservice.
    I've implementend the event for button in java and its woring fine, but how to submit a conurrent request in java?
    Can anyone help me or tell me if this is not the correct forum?
    Thank you!
    Best regards
    Gjermund Lunder
    Developer/DBA

    hi,
    This question suppose to be in framework forum.
    you can try:
    OA Framework provides the ConcurrentRequest class to call the concurrent program from the page. The submitRequest() method in the ConcurrentRequest class takes 6 parameters and returns request id of the submitted concurrent request:
    public int submitRequest(
    String ProgramApplication ,
    String ProgramName ,
    String ProgramDescription ,
    String StartTime,
    boolean SubRequest,
    Vector Parameters ) throws RequestSubmissionException
    ProgramApplication -Application Short name of application under which the program is registered.
    ProgramName - Concurrent Program Name for which the request has to be submitted
    ProgramDescription - Concurrent Program Description
    StartTime - Time at which the request has to start running.
    SubRequest - Set to TRUE if the request is submitted from another running request and has to be treated as a sub request.
    Parameters - Parameters of the concurrent Request
    Here is the example for calling a concurrent program from a OA framework page.
    import oracle.apps.fnd.cp.request.ConcurrentRequest;
    import oracle.apps.fnd.framework.server.OADBTransaction;
    public int submitCPRequest(Number headerId) {
    try {
    OADBTransaction tx = (OADBTransaction)getDBTransaction();
    java.sql.Connection pConncection = tx.getJdbcConnection();
    ConcurrentRequest cr = new ConcurrentRequest(pConncection);
    String applnName = "PO"; //Application that contains the concurrent program
    String cpName = "POXXXX"; //Concurrent program name
    String cpDesc = "Concurrent Program Description"; // concurrent Program description
    // Pass the Arguments using vector
    // Here i have added my parameter headerId to the vector and passed the vector to the concurrent program
    Vector cpArgs = new Vector();
    cpArgs.addElement(headerId.stringValue());
    // Calling the Concurrent Program
    int requestId = cr.submitRequest(applnName, cpName, cpDesc, null, false, cpArgs);
    tx.commit();
    return requestId;
    } catch (RequestSubmissionException e) {
    OAException oe = new OAException(e.getMessage());
    oe.setApplicationModule(this);
    throw oe;
    I got it from http://prasanna-adf.blogspot.com/2008/11/call-concurrent-program-from-oa.html

  • Error while getting the ORACLE user account for your concurrent request

    Hi ,
    When I am submitting the Concurrent Program from OAF page Iam getting
    Error
    Encountered an error while getting the ORACLE user account for your concurrent request. Contact your system administrator.
    When we will face this error.
    Not able to submit the Request
    Krishna

    Krishna
    Try like this
    public int submitCPRequest(String shipmentId) {
    System.out.println("into submitCPRequest");
    try {
    OAApplicationModule am = pageContext.getApplicationModule(webBean) ;
    OADBTransaction transaction = am.getOADBTransaction();
    Connection conn = transaction.getJdbcConnection();
    ConcurrentRequest cr = new ConcurrentRequest(conn);
    cr.setDeferred();
    String applnName = new String("XXAPL"); //Application that contains the concurrent program
    System.out.println("ApplName"+ applnName);
    String cpName = new String("SHIP_REQ"); //Concurrent program name
    System.out.println("Concc Name"+ cpName);
    // String cpDesc = new String("Shipping Request"); // concurrent Program description
    // Pass the Arguments using vector
    // Here i have added my parameter headerId to the vector and passed the
    //vector to the concurrent program
    Vector cpArgs = new Vector();
    cpArgs.addElement(shipmentId);
    System.out.println("Args"+ cpArgs);
    After this it is going into exception
    // Calling the Concurrent Program
    int requestId = cr.submitRequest(applnName, cpName, null, null, false, cpArgs);
    System.out.println("Req Id"+ requestId);
    tx.commit();
    return requestId;
    catch (SetDeferredException e)
    throw new OAException("SetDeferredException " + e.getMessage(),OAException.ERROR);
    catch (RequestSubmissionException e) {
    System.out.println("Into Exception");
    OAException oe = new OAException(e.getMessage());
    oe.setApplicationModule(this);
    throw oe;
    }Thanks
    AJ

  • Submitting concurrent request through oa framework page

    want to submit a concurrent request through oa framework page and i wrote this code in controller
    try
    OAApplicationModule am = pageContext.getApplicationModule(webBean) ;
    OADBTransaction transaction = am.getOADBTransaction();
    Connection conn = transaction.getJdbcConnection();
    ConcurrentRequest cr = new ConcurrentRequest(conn);
    cr.setDeferred();
    Vector param = new Vector();
    param.add("21092008");
    int reqId = cr.submitRequest("XXC", "XXC_DATE_VALIDATION_TEST_1", "XXC DATE VALIDATION TEST 1", null, false, param);
    transaction.commit();
    System.out.println("Request ID >>> "+reqId);
    String id = "" + reqId + "";
    HashMap parameters = new HashMap();
    String url = "OA.jsp?akRegionCode=FNDCPREQUESTVIEWREGION&akRegionApplicationId=0";
    //parameters.put("akRegionApplicationId", "0");
    // parameters.put("akRegionCode", "FNDCPREQUESTVIEWPAGE");
    //parameters.put("akRegionCode", "FNDCPPROGRAMPAGE");
    parameters.put("requestMode", "DEFERRED");
    parameters.put("requestId", id);
    pageContext.setForwardURL(url,
    null,
    OAWebBeanConstants.KEEP_MENU_CONTEXT,
    null,
    parameters,
    true,
    OAWebBeanConstants.ADD_BREAD_CRUMB_NO,
    OAWebBeanConstants.IGNORE_MESSAGES);
    catch (SetDeferredException e)
    throw new OAException("Munish SetDeferredException " + e.getMessage(),OAException.ERROR);
    catch (RequestSubmissionException e)
    throw new OAException("Munish RequestSubmissionException " + e.getMessage(),OAException.ERROR);
    catch (Exception e)
    throw new OAException("Munish Exception " + e.getMessage(),OAException.ERROR);
    but i dont know whether it is submitted or not
    when i find my request using request id through e bussiness suite i can see ant thing regarding this id
    and i m getting this error
    java.lang.NullPointerException
    at oracle.apps.fnd.cp.viewreq.webui.ViewRequestsPageCO.processRequest(ViewRequestsPageCO.java:213)
    could anyone help me please
    Thanks

    Check the "Adding Request Monitoring to Your Product" section from dev guide.
    --Shiv                                                                                                                                                                               

  • Reprints output from concurrent requests

    Hi, I copied the above Concurrent Program to a custom one and added 'XML Report Publisher' in the list of incompatible programs, because my custom program (Custom Reprints output from concurrent requests) should run only after XML Report Publisher completes. But the custom program ends in 'Inactive' Phase and 'NO Manager' Status. We tried bouncing the CM, but no luck. Any help is highly appreciated.
    P.S: When I add XML Report Publisher to the list of incompatible programs for the seeded program - Reprints output from concurrent requests, everything works fine.
    Thanks, Naveen Gagadam.

    Hi Hussein, we are on: Oracle Applications : 11.5.10.2, Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi on LINUX.
    I am submitting my Custom Reprints output from concurrent requests, XML Report Publisher from FND_REQUEST.SUBMIT_REQUEST. I cannot print the XML report without adding it to the list of incompatible programs because even though I submit the Custom Reprints output from concurrent requests after XML Report Publisher, it starts off before the XML Report Publisher completes and eventually it ends up in a warning. Please see below 1/2 of the log file (Will post the Other half immediately) from $FND_TOP/log. The name of the file is five_0908.mgr, 'five' being the name of the instance
    Thanks, Naveen Gagadam.

  • Purge Concurrent Request and/or Manager Data program:

    Hi Friends,
    I am purging all my test report output logs using the above program, but the table
    FND_CONC_PP_ACTIONS is not being deleted;
    SQL> select count (*) from FND_CONC_PP_ACTIONS;
    COUNT(*)
    9470
    FND_CONC_PP_ACTIONS
    Stores the post request processing actions(e.g., print, notify) for each
    submitted request. There's a concurrent_request_id here for each request_id
    in the FND_CONCURRENT_REQUESTS.
    How can i forced delete the tables? since im still on the testing phase its OK if i zero out
    all of it.
    Thanks a lot

    or I want it zero (0) to delete all You cannot set it to zero (0). The Age parameter should be between (1) and (9999999).
    Did I mess it up? when I manually deleted the contents of
    I thought I can delete this logs manually because they are on filesystem.
    I thought only the database tables are needed to be cared for. Even though you should not bother yourself and delete the files manually under $APPLOG and $APPLOUT directories since the concurrent request will do the job for you, it is safe to delete it manually. The only impact you would have here is, you would not be able to access the log/out files of the concurrent requests (if the requests still presented in the tables and you can see it from the application).
    Did you try to use the "Count" parameter instead of the "Age"? The "Count" parameter indicates the number of (most recent) records for which you want to save concurrent request history, log file, and report output files.

  • Concurrent Request 를 처리하는 File과 Tables

    제품 : AOL
    작성날짜 : 2003-12-02
    Concurrent Request 를 처리하는 File과 Tables
    =================================================
    PURPOSE
    이 Note는 Concurrent Reqeust output & Log 의 저장위치와 DB내 저장되는
    Object들에 대한 설명입니다. Purge Concurrent Request and Output을 실행할때 다음 table들의 해당 record들이 삭제됩니다.
    Explanations
    - FND_CONCURRENT_REQUESTS
    This table contains a complete history of all concurrent requests and
    stores information about all submitted jobs(requested directly or by a
    report set) within applications.
    There's one request_id for each requested job in this tables.
    - FND_RUN_REQUESTS
    When a user submits a report set, this table stores information about the
    reports in the report set and the parameter values for each report.
    Stores information about all request sets submittted within applications.
    Columns parent_request_id and request_id reflect the job# for the
    report-set and the jobs it calls to.
    - FND_CONC_REQUEST_ARGUMENTS
    This table records arguments passed by the concurrent manager to each program
    it starts running.
    FND_DUAL
    This table records when requests do not update database tables.
    FND_CONCURRENT_PROCESSES
    This table records information about Oracle Applications and operating system
    processes.
    FND_CONC_STAT_LIST
    This table collects runtime performance statistics for concurrent requests.
    FND_CONC_STAT_SUMMARY
    This table contains the concurrent program performance statistics generated by
    the Purge Concurrent Request and/or Manager Data program.
    The Purge Concurrent Request and/or Manager Data program uses the data in
    FND_CONC_STAT_LIST to compute these statistics.
    FND_CONC_PP_ACTIONS
    Stores the post request processing actions(e.g., print, notify) for each
    submitted request. There's a concurrent_request_id here for each request_id
    in the FND_CONCURRENT_REQUESTS.
    FND_RUN_REQ_PP_ACTIONS
    Stores the post request processing actions(e.g., print, notify) for
    submitted request set programs that are stored in FND_RUN_REQUESTS.
    Reference Documents
    Note 132823.1

  • CE Bank Statement Load and Import Concurrent Request

    Hi All,
    I am trying to submit a concurrent request via PL/SQL for CE Bank Statement Loader but request_id always returns 0..
    Being new to here i somehow cannot understand why so as I've tried this with GL's SQLLDR for the Journal Import.
    Here's a part of my code:
    fnd_global.APPS_INITIALIZE (1090,50563,260);
    Commit;
    reqid := FND_request.submit_request('CE','CESSQLLDR',null,null,FALSE,'LOAD',1000,'filename.dat','/dir/filedir/statementdir',3205,11066,null,null,null,null,null,'N',null,null);
    Commit;
    dbms_output.put_line(reqID);
    Forgive me if this is such novice problem.
    Thanks in advance!

    Hi,
    Then I guess you've got an error in the parameters somewhere - is the concurrent program registered under the application you are passing in as the application short name? Have you got the program short name correct?
    Regards,
    Gareth

  • How To Schedule a Concurrent Request on completion of a Spawned Request

    As soon as the concurrent request submitted through Oracle Form(Consolidation Transfer)is completed we need to schedule another Concurrent Request which had to be kicked off automatically on completion of the First concurrent request. Since, the First concurrent request of Consolidation Transfer is a Spawned Program, the request set could not be created, to kick off the second concurrent program.
    I would Appreciate if anyone can advise any solution to achieve this objective.

    Hi Harish,
    Doesn't matter what you need to do all you need is the hook!
    a) Nice. Force the request to print and use print driver to call CONCSUB to submit your new "child" request
    -- Since the Consolidation Trasnfer concurrent request could only be submitted through Consolidation Trasnfer Form only, I am not sure how we can do Force Print for this request.
    GR: Set printer and style on concurrent program definition. Set profile option "Concurrent:Report Copies" to 1 (even by Forms Personalization if you want to). Sorted. Still think this is the best option.
    c) Abstraction. Replace the C executable with a shell script that takes arguments and calls the C program and then submits new "child" request via CONCSUB
    -- Appreciate, if you can elaborate this option. I think we can try this, with the help of your detailed input.
    GR: Change the executable on the concurrent program to a host shell script under your mods application. Initially just get the shell script to capture program call and arguments. Run the program to get arguments. Next iteration, change shell script to call the C program from your shell script with correct arguments. Verify okay. Next iteration do the same plus call CONCSUB to submit request / set.
    d) Nasty. Trigger on fnd_concurrent_requests to call new "child" request via fnd_request.submit_request - NB: very unsupported! Make sure trigger doesn't raise an exception.
    -- On completion of the Consolidation Transfer concurrent request, we tried to submit the request set using the Trigger on Consolidation History table and/or fnd_concurrent_requests table. But it is entering into infinite loop.
    GR: Need to use trigger condition to capture update of status_code to C (Completed) and other codes e.g. Warning. Personally I'd avoid this option because you have others! Although once I did use this method when I wanted absolute transparency :-)
    Update: Changed "Print: Copies" to "Concurrent:Report Copies"
    Regards,
    Gareth
    Edited by: gareth.roberts on Dec 8, 2008 4:55 PM

  • How to submit a Concurrent Request Set from OAF

    All,
    I understand we can submit a concurrent program from OAF using
    oracle.apps.fnd.cp.request.ConcurrentRequest.submitRequest( String pApplication,
                        String pProgram,
                        String pDescription,
                        String pStartTime,
                        boolean pSubRequest,
                        Vector pArgArray) method,
    But the class ConcurrentRequest don't have any method to submit a concurrent request set. The workaround is directly call the pl/sql package FND_SUBMIT.submit_program.
    Is there any other oracle.apps.fnd.cp.request.* class have method to call a concurrent request set?
    Thanks.
    With Regards,
    Kali.
    OSSI.

    Sorry for my typo.....! I meant use the pl/sql way, there is no standard solution for this in OAF.
    didn't get what you mean by,
    You mean i need to use FND_SUBMIT.submit_program? or you want me to check in OAF itself?
    >>Kali, You can use [b]fnd_submit.submit_set , this is explained "Application Developer User Guide"!
    Even i tried to use that PL/SQL FND_SUBMIT.submit_program, that is returning BOOLEAN so i am facing the problem which you have discussed in the forum
    >>Use the work around i suggested in the thread u mentioned in ur reply.
    --Mukul                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Notify via email upon concurrent request failure

    Hi,
    I would like suggestions on the best way to solve the problem of being able to notify user(s) via email upon the failure of a concurrent request. Apps has the built-in ability to notify upon completion, not just upon failure. I want to limit the need for any user/passwd info being exchanged.
    So far, my best bet I think is a dbms_job.
    Any suggestions other than writing a shell script to login to the database and check on fnd_concurrent_requests?
    Seems like this would be a good feature to add for Apps.

    All you need is to create a trigger as below
    CREATE OR REPLACE TRIGGER sgldba.sgl_concurrent_request_status
    after insert or update on apps.fnd_concurrent_requests
    for each row
    WHEN (new.status_code in ('E','G','T'))
    begin
    insert into sgldba.sgl_concurrent_request_track values (
    :new.request_id,
    :new.status_code,
    :new.actual_start_date,
    :new.actual_completion_date);
    end sgl_concurrent_request_status;
    I am having the trigger to update a table sgldba.sgl_concurrent_request_track with the request_id , status_code , actual start date , actual completion date .
    You can proceed further by adding addition information to the trigger like sending mail
    Regards

  • Submitting Concurrent Request from Standard OAF Page

    Hi,
    I'm a new comer to both Java and OA Framework.. I'm working in oracle apps from a long time but my experience is with forms and reports based world so excuse me if i'm asking a dumb question.. My requirement is to add a button to a standard page.. When the button is pressed, i should kick off a concurrent request and after that re-direct to the view output page to view the output..
    I added the button to the screen via personalization.. I want to extend the controller of that page and execute the submitRequest.. I'm getting this error which i'm not able to figure it out.. I will appreciate if you can let me know what is the cause..
    Thanks for your help!!
    Shree
    =======================================================
    "Error(73,27): method submitRequest(java.lang.String, java.lang.String, java.lang.String, null, boolean, com.sun.java.util.collections.Vector) not found in class oracle.apps.fnd.cp.request.ConcurrentRequest"
    ========================================================
    Here is my code
    =======================================================
    import oracle.apps.fnd.common.VersionInfo;
    import oracle.apps.fnd.framework.webui.OAControllerImpl;
    import oracle.apps.fnd.framework.webui.OAPageContext;
    import oracle.apps.fnd.framework.webui.beans.OAWebBean;
    import oracle.apps.fnd.framework.OAApplicationModule;
    import oracle.apps.fnd.framework.server.OADBTransaction;
    import oracle.apps.fnd.cp.request.ConcurrentRequest;
    import oracle.apps.fnd.cp.request.RequestSubmissionException;
    import oracle.apps.fnd.cp.request.SetDeferredRequestException;
    import oracle.apps.fnd.framework.webui.OAWebBeanConstants;
    import com.sun.java.util.collections.HashMap;
    import com.sun.java.util.collections.Vector;
    import oracle.apps.fnd.cp.request.SetDeferredException;
    import java.sql.Connection;
    import oracle.apps.fnd.framework.OAException;
    if (pageContext.getParameter("Report") != null)
    try
    OAApplicationModule am = pageContext.getApplicationModule(webBean) ;
    OADBTransaction transaction = am.getOADBTransaction();
    Connection conn = transaction.getJdbcConnection();
    ConcurrentRequest cr = new ConcurrentRequest(conn);
    cr.setDeferred();
    Vector param = new Vector();
    int reqId = cr.submitRequest("XXXAP", "XXAPTRLB", "AP Trial Balance",null, true, param);
    transaction.commit();
    System.out.println("Request ID >>>"+reqId);
    HashMap parameters = new HashMap();
    String url = "OA.jsp";
    parameters.put("akRegionApplicationId", "0");
    parameters.put("akRegionCode", "FNDCPREQUESTVIEWPAGE");
    String id = "" + reqId + "";
    parameters.put("requestMode", "DEFERRED");
    parameters.put("requestId", id);
    pageContext.setForwardURL(url,
    null,
    OAWebBeanConstants.KEEP_MENU_CONTEXT,
    null,
    parameters,
    true,
    OAWebBeanConstants.ADD_BREAD_CRUMB_NO,
    OAWebBeanConstants.IGNORE_MESSAGES);
    catch (SetDeferredException e)
    throw new OAException("Set Deferred=" + e.getMessage(),OAException.ERROR);
    ========================================================

    Updated the original thread Re: Submitting Concurrent Request
    --Shiv                                                                                                                                                                                                                       

Maybe you are looking for

  • Return PO for a Blocked Vendor (Purchasing Block)

    Hi, We have an advanced returns functionality activated in our system. We have a requirement that we need to create a return PO (To be able to return goods) for a vendor for which we have a purchasing block. Means, We do not want to create any regula

  • Receiver server for Receiver file system

    Hi, I am trying to create a scenario where the data from SAP system goes to XI through ABAP proxy and has to write the data in the file. My Question... In the Integration directory my sender system is ABAP Proxy and receiver system is File adapter. W

  • Why is the network time WRONG??

    Anyone have a clue why the time on the Verizon network is roughly 8 minutes fast tonight?  It is ridiculous that my phone is using the network time signal and I know that the time on the phone is wrong.

  • Black screen - can not get in touch with my Ipod Nano

    I have an Ipod Nano, latest model. After a short time the monitor shuts down and turns black / standby, can ths be disable? I use my Nano with the Nike Ipod censor when I run, and it is diffical to get in touch with my Ipod Nano, when the screen afte

  • What's different between event handle by bsp frame & MAC

    Hi, Can anyone know the different between event handle by BSP frame & handle by MAC? and how to know which event is handle by BSP frame or MAC? thanks Gang