Generate output XML for a PL/SQL stored procedure concurrent program (EBS).

Hello

I trying to generate XML output for a simultaneous PL/SQL program and then use it as a model for BEEP.
Program PL/SQL for a report consist of sliders/queries and other calculations of output data.
Program (report) made up of topics, couple of col. values of one or more tables DB and rest of the columns are values read from DB colonel and calculated. The length of the neck extends up to 280 characters.

All out - put is shown using fnd_file.put_line (fnd_file.ouput,...);
before first fnd_file statement, included the following stmt.
fnd_file.put_line (fnd_file.output,' <? xml version = "1.0" encoding = "UTF - 8"? > ');

Using demand conc., notice ouptut poster error...
The XML page cannot be displayed
Invalid at the top level of the document. Error during processing of the resources ' http://ohcol0ws023.amp-ohio.org:8004/OA_CGI/FNDWRR.exe...
<? XML version = "1.0" encoding = "UTF-8"? >

I tried to add tags in the rest of the fnd_file.put_line stmts. as
fnd_file.put_line (fnd_file.output, '< Heading1 >' |) 'Report name ' | (/ head2 > '); etc.

View output shows the same error message.

PL. advise how go further or tell me the link, if it's already been answered earlier.

Thank you
Prak

Copy the file from $APPLCSF / $APPLOUT to your customer and try to open it. Find out what's wrong with the code XML, for example, you may need to top level element:

Write to me if you can't get by - see my profile.

Kind regards
Gareth

Tags: Business Intelligence

Similar Questions

  • Creation of XML report using the PL/SQL stored procedure

    Hi friends,

    I'm working on a report xml with the xml source as a PL/SQL stored procedure.

    I mean the fiscal year indicated in the following link to understand the process:

    http://orclapp.blogspot.com/2012/02/developing-xml-publisher-report-using.html

    In the example shown in the link above, I did not understand the following:

    (1) in the following procedure, setting out "retcode" is not used at all.

    What is the importance of this parameter.

    REPORT PROCEDURE (errbuf OUT VARCHAR2, retcode OUT VARCHAR2, p_product_id in NUMBERS)

    (2) after the xml data are prepared and updates 'l_result' variable Clob, what follows

    Loop is executed. I am not able to understand why the following loop is required.

    LOOP

    EXIT WHEN l_length = l_retrieved;

    IF (l_length - l_retrieved) < 32000

    THEN

    SELECT SUBSTR (l_result, l_retrieved + 1) IN l_xmlstr FROM DUAL;

    l_retrieved: = l_length;

    fnd_file.put_line (fnd_file.output, l_xmlstr);

    ON THE OTHER

    SELECT SUBSTR (l_result, l_retrieved + 1, l_offset)

    IN l_xmlstr

    FROM DUAL;

    l_retrieved: = l_retrieved + l_offset.

    fnd_file.put_line (fnd_file.output, l_xmlstr);

    END IF;

    END LOOP;

    (3) in the example it is not explained how the concurrent program gets the xml data?

    I guess that it is written to a file by using the following line of code:

    fnd_file.put_line (fnd_file.output, l_xmlstr);

    I would be grateful if someone can shed some light in my questions above so that I can well understand the process.

    Thanks and greetings

    Hawker

    Hi 32000 in the code is a 'safe' than 32767 available max mesh, loops is intended to get around the entire thing into pieces that can be managed within the limits of the data type.

    BTW; If you are in the following Oracle e-business, you can also use the Oracle reports very simply to create the XML output.

    If you have reports developer all you need to do is put raw sql (create XML without any "Fireworks") in the SQL report and then set reporting in XML format in the definition of program in Oracle e-business.

    Best regards

    Robert.

  • BPEL does not receive "return value" of MS SQL, stored procedure

    Hello

    We are facing this problem citing a MS SQL stored procedure the BPEL (jdbc 1.2 driver). We have created the wsdl for the stored procedure correctly using a command line utility tool provided with Oracle SOA Suite.
    But the question is THAT BPEL is not able to get the data present in the statement of "return" of the procedure. We receive null output. But it is able to extract the data from the output variable, if any. Case 1 below is for the return statement. Case 2 is for the output variable


    Case 1: in the following, the output is returned using the return statement. The BPEL that calls this procedure is to obtain a NULL value as an answer to this.


    ALTER PROCEDURE [dbo]. [AddNumbersRet]
    -Add the parameters for the procedure
    @Number1 int,
    @Number2 int
    AS
    BEGIN
    -SET NOCOUNT ON added to avoid additional results sets from
    -interfering with SELECT statements.
    SET NOCOUNT ON;

    -Controls insert for procedure here
    Return (@Number1 + @Number2);
    END

    Case 2: in the following, the output is returned using the SumOfNums output variable. The BPEL that calls this procedure is to obtain a correct answer.


    ALTER PROCEDURE [dbo]. [AddNumbers]
    @Number1 int,
    @Number2 int,
    @SumOfNums int output
    AS
    BEGIN

    -SET NOCOUNT ON added to avoid additional results sets from
    -interfering with SELECT statements.
    SET NOCOUNT ON;

    Set @SumOfNums = (@Number1 + @Number2);

    END



    Case 1 is a failure and case 2 is successful. We cannot change our procedures similar to case 1 to use variables of output because of dependencies on other applications.

    All the world is facing this problem? This looks like a bug in BPEL. Please, share your experiences.


    Thanks and greetings

    Mohan

    Published by: user10980910 on December 8, 2009 05:16

    There is a gap in the command line utility that was addressed in the adapter configuration (AS11gR1) Wizard. The API is a procedure, not a function, so does not return the query for the parameters that the utility made anything for the RETURN statement.

    The adapter configuration wizard is unable to say if there is a RETURN statement either, but it provides the user with a check box that can be used to indicate the presence of the declaration. In the wizard, if you check the checkbox, a parameter is added to the XSD to the RETURN statement. In essence, the adapter will process the procedure as a function and you will get the value of the PERFORMANCE.

    Usually, I wish to indicate that you certainly should NOT change the generated XSD. But you might be able to do it, by adding the necessary element to the OutputParameters for your RETURN statement. Add the following immediately AFTER the element of 'Lines', which occurs first in the XSD and BEFORE all items for the other none.

    Use a value for the "" that is meaningful to you. The wizard uses the name of the stored procedure with the name of the element. We could call this "RETURN_VALUE" or else if is more to your liking. Add the item after you generate the XSD using the command line utility, and then use the XSD when you model your BPEL processes. The WSDL should already have the content for this element handling.

  • How to create simultaneous program of type PL/SQL stored procedure?

    I have the procedure to reset sequence as below:

    CREATE OR REPLACE PROCEDURE DEV_RESET_XX IS

    V_NEXT_VAL1 NUMBER;

    BEGIN

    RUN IMMEDIATELY "ALTER SEQUENCE DEV_RECEIPT_S1 MINVALUE 0';"

    RUN IMMEDIATELY "SELECT DEV_RECEIPT_S1. DOUBLE NEXTVAL ' IN V_NEXT_VAL1;

    RUN IMMEDIATELY "ALTER SEQUENCE DEV_RECEIPT_S1 INCREMENT BY ' |" -V_NEXT_VAL1;

    RUN IMMEDIATELY "SELECT DEV_RECEIPT_S1. DOUBLE NEXTVAL ' IN V_NEXT_VAL1;

    RUN IMMEDIATELY "ALTER SEQUENCE INCREMENT DEV_RECEIPT_S1 1 ';"

    END DEV_RESET_XX;

    And if I run this query don't use PL/SQL, no problem and success.

    EXEC DEV_RESET_XX

    And then I want to create simultaneous program for this procedure.

    1. create the executable program

    -Methods: PL/SQL, stored procedure

    2. create the simultaneous program

    -Call the executable program

    -Nothing parameter

    3. assign the application group to receive

    And then I try to run this competitor.

    But, status complete error.

    8-31-2015 7-10-22 PM.jpg

    Help, please.

    Thank you.

    Hello

    To save pl sql program, we have two required parameters. ERRBUFF and RETCODE

    Steps to create a concurrent program of type PL/SQL stored procedure. Techmandate.com

    No need to create these parameters in the simultaneous program window. Just use those in your procedure.

    hope this will help you

  • Call a PL/SQL stored procedure - data type mismatch

    I call a PL/SQL stored procedure from within a procedure of ODI using the specified technique page Cezar and Julien (http://odiexperts.com/how-to-use-plsql-procedures-and-functions-in-odi) and I get the error "Wrong number or argument types»

    I tested each of the types of parameters, in that I'm passing and it is the text that is causing the problem. I tried to use 'Text' and 'Alphanumeric' for the data type of the variable of the ODI and so many VARCHAR2 and VARCHAR for the PL/SQL parameter type and I can't make it work.

    Is there a trick for passing a string in the ODI PL/SQl?

    Hello

    Ensure

    1. to declare/refresh of the variable before call to PL/SQL.

    2. If the variable is of "alphanumeric" ODI calling must be attached to apostrophes and prefix with the code project as ' #MYPROJECT. ODI_Var'

    3. as parameters you have u who must pass both during the call (IN, OUT, etc.).

    Thank you
    Guru

  • to find the location of PL/SQL, stored PROCEDURE in the database

    Hello

    This is the detail I have the executable of the Application Developer program simultaneous

    Executable NAPESCO_STAFF_LEDGER_DTLS

    Short name NPSTALEDDTLS

    Application of human resources

    Execution of PL/SQL, stored procedure method

    Name of file execution NAPESCO_STAFF_LEDGER_DTLS


    I would like to know how to view and change this procedure, where it is stored

    kindly help

    Hello

    This seems to be a custom package. To display the source of the simultaneous program ' PL/SQL Stored Procedure', please refer to (Note: 455582.1 - where can I get the whole "stored procedure" Pl/Sql Source file on the current program?).

    Thank you
    Hussein

  • Register proc of pl/sql under the concurrent program

    I'm looking to which a pl/sql package.procedure as a concurrent program.

    I would like to run the concurrent request of user FX_RATES, i.e.
    SQL> l
      1  select fnd.User_id
      2        ,fresp.Responsibility_ID
      3        ,fresp.Application_ID
      4  from   FND_User fnd
      5        ,FND_Responsibility_tl fresp
      6  where  upper(fnd.User_Name)              = 'FX_RATES'
      7* and    upper(fresp.Responsibility_Name)  = 'GL SUPERUSER'
    SQL> /
    
       USER_ID RESPONSIBILITY_ID APPLICATION_ID
    ---------- ----------------- --------------
          1067             50254            101
    So I used the following script to record the simultaneous program:
    declare
      b_OK boolean;
    begin
    
      fnd_global.apps_initialize(1067, 50254, 101);
    
      b_OK := fnd_submit.set_nls_options('AMERICAN');
    
      fnd_program.executable( 'GL_MNH_FX_LOAD'                  -- executable name
                            , 'SQLGL'                           -- application name
                            , 'GL_MNH_FX_LOAD'                  -- short_name
                            , 'GL Mnh Rate Load'                -- description
                            , 'PL/SQL Stored Procedure'         -- execution_method
                            , 'GL_RATE_LOAD.LOAD_FX_MNH_RATES'  -- execution_file_name
                            , null
                            , null
                            , 'US'            -- language code
                            , null);
      commit;
    
      fnd_program.register ( program                => 'GL Mnh Rate Load' -- Name seen on concurrent request screen
                            ,application            => 'SQLGL'
                            ,enabled                => 'Y'
                            ,short_name             => 'GL_MNH_FX_LOAD'
                            ,description            => 'Loads FX Rate file'
                            ,executable_short_name  => 'GL_MNH_FX_LOAD'
                            ,executable_application => 'SQLGL'
    
      commit;
        
      fnd_program.add_to_group('GL_MNH_FX_LOAD'
                               ,'SQLGL'
                               ,'GL Concurrent Program Group' -- Request Group Name
                               ,'SQLGL');
      
      commit;
    end;
    /
    But when I login as FX_RATES I can't view the competitor ask "GL Mnh charge rate.
    When I login with administrator user, I can see the program is defined, i.e. simultaneous-> program-> define.

    So why is the simultaneous program not available in the screen after you select SUBMIT new request when logged in as FX_RATES?

    Hints would be much appreciated!

    After you connect as user FX_RATES, what responsibility you choose? The new concurrent program should be added to the application group that belongs to this responsibility.

    For research through forms, you access the form, press F11, enter the search criteria, and then press Ctrl + F11 to retrieve results.

    PL note this change of basic objects (such as responsibilities and application groups etc.) is not recommended. These changes will not survive an upgrade, as the upgrade process will be back on all these custom changes. It is best to create custom query groups / menus / responsibilities etc. to all custom objects.

    HTH
    Srini

  • SQL stored procedure input and output parameters

    Hello Gang,

    My dead end trying to call a stored procedure in SQL Server 2008 with the LV database tool.

    for purposes of experimentation, I've created a small procedure with an input parameter that returns an integer as return value.  It works describing a query, but all attempts at LV produce an error-2147217900 when executing query VI.  I did find examples of that.

    Sending a bunch of parameters to a stored procedure and checking the value of return seems to be pretty common stuff.

    I'll appreciate any help.

    Thank you

    Roger

    Hi Roger,

    There are a few prerequisites which I will list below. If you have not checked these things, so don't hesitate, as your hiccups can be there.

    Prerequisites:

    1. Ensure that you can read from a table in the database to verify that you can access the database (user permissions) and ensure that your login details are correct. Among other things, make sure that the. DSN switches to the correct database. (See the simple example below, SQL Select.vi)
    2. Make sure that your user (if you use SQL authentication) has permissions to run the STORED procedure by running the procedure in SQL Server Management Studio (you seem to have already done this)

    Example by calling a procedure without parameters (attached as SPROC_No_Parameters.vi):

    Example by calling a procedure with parameters (attached as SPROC_Parameters.vi):

    An article on the execution of stored procedures is here:

    http://digital.NI.com/public.nsf/allkb/07FD130746083E0686257300006326C4

    Don't forget to download the example VI since it includes the cases where you want an output parameter of the procedure rather than a table.

    I tested these against two very simple SPROCs and it worked fine (on SQL Server 2005, but 2008 should be the same).  Stored procedures have been:

    CREATE PROCEDURE [dbo]. [GetContacts]

    AS
    BEGIN
    -SET NOCOUNT ON added to avoid additional results sets from
    -interfering with SELECT statements.
    SET NOCOUNT ON;

    -Controls insert for procedure here
    SELECT * FROM Contacts
    END

    and

    CREATE PROCEDURE [dbo]. [MultiplyAges]
    @param1 INT = 1
    AS
    BEGIN
    -SET NOCOUNT ON added to avoid additional results sets from
    -interfering with SELECT statements.
    SET NOCOUNT ON;

    -Controls insert for procedure here
    SELECT (age * @param1) OF Contacts
    END

    I would like to know if these examples work for you or if you have any other questions.  Don't forget to go through this KB article and articles related to it, they should cover other situations.

    Matt

  • SQL to generate the last weeks date (not a stored procedure)

    I need SQL to generate the last dates of weeks from Monday to Sunday. I don't want to use the data in the table or the stored procedure. I need inline SQL. Please help me with your suggestions. Thanks in advance for the help.

    Varun says:
    I need SQL to generate the last dates of weeks from Monday to Sunday. I don't want to use the data in the table or the stored procedure. I need inline SQL. Please help me with your suggestions. Thanks in advance for the help.

    below should help you get started

      1* SELECT SYSDATE-LEVEL from dual CONNECT BY LEVEL < 8
    SQL> /
    
    SYSDATE-L
    ---------
    21-APR-13
    20-APR-13
    19-APR-13
    18-APR-13
    17-APR-13
    16-APR-13
    15-APR-13
    
    7 rows selected.
    
  • B2B Gateway fails to generate data xml for 997

    Hi all

    I am faced with a particular problem with one of my test B2B case, where xml for 997 EDI X 12 file is not generated. The file EDI 997 is get picked up however it will fail to generate the request message. In the report so there will be no errors. When I click on the details link on the page of reports for the 997 message the message of application link is not active and does not redirect to the details of the application pop up message by clicking on it.

    Could someone of you please think why this problem occurs... It worked perfectly in my case of dev...

    Please also suggest if more details could be found in the log files of B2B.


    concerning
    Rakesh

    Your real problem is configuration...

    You must go to the Configuration under Administration tab and section of the page, set "notify functional Inbound" accused of reception and the "receipt functional managed automatically ' to 'true '. Otherwise the message from the Application does not get generated for your 997 s entering.

  • Generate the XML for double

    Hey gurus,

    I am trying to generate the XML code next to the double, however, I get an error message indicating that my higher level is not set. Any ideas? Thank you!

    < PUDOOUTPUT >
    < PKG >
    < > 12345 SHIPMENTID < / SHIPMENTID >
    < ERROR > 'NO DATA' < / ERROR >
    < ERRORTEXT > "" error: could not find alias sender in SPL_SHIPPER_ACCOUNTS. "< / ERRORTEXT >"
    < / PKG >
    < / PUDOOUTPUT >



    Select xmlelement ("PUDOOUTPUT", xmlelement ("PKG", xmlelement("SHIPMENTID",i.shipmentid),
    XmlElement ("ERROR", "NO DATA")
    XmlElement ("ERRORTEXT", "error: could not find the sender aliases in SPL_SHIPPER_ACCOUNTS.'")))
    in p_wms_output
    Double;

    It works on 10.2.0.3

    select xmlelement("PUDOOUTPUT",xmlelement("PKG",xmlelement("SHIPMENTID",123456),
    xmlelement("ERROR",'NO DATA'),
    xmlelement("ERRORTEXT",'Error: Cannot find shipper alias in SPL_SHIPPER_ACCOUNTS.')))
    from dual;
    

    I suspect the question is because you have "i.shipmentid" in your SQL statement you have to table with an alias of 'I' in your SQL statement. Do you mean something like l_shipmentid as a variable from your PL/SQL code?

  • Failed to retrieve input or output XML for a BP

    Hello

    Unfier 10.1 running.  Logged as administrator. After the opening of a company under uDesigner/Business process, select a BP.  In the menu select integration.  When we try to recover the input or output XML, we get an empty document of 0 bytes.  The entry CSV Template shows to the menu option and XLS document with data.

    Anyone encountered this?

    Thank you

    Rudy

    Solved.

    I logged in as a user with Admin privileges, then changed to user mode Admin open the workspace under uDesigner and company I can export documents of integration with success.

  • appellant the pl/sql stored procedure

    Jdev11g R2, ADF BC

    I have a stored procedure 'COPY_BKG_E2I' and it has three input parameters to generate a new record in the database.
    ===========================================================================
    I created the AM method as follows and defined as method of the client AM class:
    =========================================================

    helper method:
    ===========

    protected void callStoredProcedure (String stmt, Object [] bindVars) {}
    PreparedStatement st = null;
    try {}
    // 1. Create a JDBC PreparedStatement for
    St = (PreparedStatement class) getDBTransaction () .createPreparedStatement ('start' stmt + ";"end;", 0);
    If (bindVars! = null) {}
    // 2. Loop on values for the bind variables passed, if any
    for (int z = 0; z < bindVars.length; z ++) {}
    // 3. Set the value of each variable binding in the statement
    st.setObject (z + 1, bindVars [z]);
    }
    }
    // 4. Execute the statement
    st.executeUpdate ();
    }
    catch (SQLException e) {}
    throw new Aexception.getLocalizedMessage (e);
    }
    {Finally
    If (st! = null) {}
    try {}
    // 5. Close statement
    St.Close ();
    }
    catch (SQLException e) {}
    }
    }
    }


    call the stored procedure:

    {} public void callProcWithThreeArgs (String V_BKG_NO, String V_VESSEL_ARRIVED_REMARKS, Date V_ATA_POD_D)
    callStoredProcedure ("COPY_BKG_E2I(?,?,?)", ")
    New Object [] {V_BKG_NO, V_ATA_POD_D, V_VESSEL_ARRIVED_REMARKS});
    }


    Now, I created back bean and page fragment,
    =================================

    in my page fragment, I bind the field three entries to the bean back:
    ============================================

    package olfms.view.backing;

    Import oracle.adf.view.rich.component.rich.input.RichInputDate;
    Import oracle.adf.view.rich.component.rich.input.RichInputText;
    Import oracle.adf.view.rich.component.rich.output.RichOutputText;

    public class saveBkgUpd {}
    Private RichOutputText bkg_no;
    Private RichInputDate arrive_date;
    Private RichInputText arrive_remarks;

    public saveBkgUpd() {}
    Super();
    }

    {} public void setBkg_no (RichOutputText bkg_no)
    This.bkg_no = bkg_no;
    }

    public RichOutputText getBkg_no() {}
    Return bkg_no;
    }

    {} public void setArrive_date (RichInputDate arrive_date)
    This.arrive_date = arrive_date;
    }

    public RichInputDate getArrive_date() {}
    Return arrive_date;
    }

    {} public void setArrive_remarks (RichInputText arrive_remarks)
    This.arrive_remarks = arrive_remarks;
    }

    public RichInputText getArrive_remarks() {}
    Return arrive_remarks;
    }

    My question:
    //?????? How to call the callProcWithThreeArgs with these three bkg_no; arrive_date; arrive_remarks; Help, please! Thank you!

    ?
    }

    Check your imports
    especially: import oracle.binding.BindingContainer;
    This is the bean of tire

    import oracle.adf.model.BindingContext;
    import oracle.binding.BindingContainer;
    import oracle.binding.OperationBinding;
    
    public class Test {
        public Test() {
        }
    
        public BindingContainer getBindings() {
            return BindingContext.getCurrent().getCurrentBindingsEntry();
        }
    
        public String callProcedureProgramatically() {
            BindingContainer bindings = getBindings();
            OperationBinding operationBinding = bindings.getOperationBinding("callProcWithThreeArgs");
            operationBinding.getParamsMap().put("param1", "first value");
            operationBinding.getParamsMap().put("param2", "second value") ;
            operationBinding.getParamsMap().put("param3", "third value");
            Object result = operationBinding.execute();
            if (!operationBinding.getErrors().isEmpty()) {
                return null;
            }
            return null;
        }
    }
    
  • PL SQL Stored Procedure help

    Hello
    I'm new to the development of Oracle.
    I have the following scenario for which I need your help/suggestions to write a stored procedure.
    A load process in a table unfolds with about million files once a month.
    I have a LOG Table to record the events of job loading IE when it starts, when it stops, status etc. with the following columns

    job_name, job_status, start_time, end_time, date, flag

    work focuses on the work that is in charge of the table.
    Based on the values in this table, I want to develop a stored procedure sql pl verifies the status of the job and does the following

    When the flag = R (assume for running job) set it to run the job again as 1 hour later... if its still ongoing then 1 hour later... so now up to 5 trys
    = F (Finished)
    = E (error problem) launch the load immediately

    The flag State values noted above are not binding... values just to give you an idea... all the other variables to use to store procedure or any new passes in the table... .suggestions are welcome for these values as well.
    Basically, I would like the stored procedure to be called at some point... say SUNDAY at 06:00 and check the STATUS of the INDICATOR/table newspaper column and run.

    In short, I like the pl sql store procedure to use table to log and monitor the loading process.

    Structure/Basic code stored procedure for this requirement or a stored procedure that you have met similar requirements are welcome.

    Thanks in advance.

    Published by: user13517642 on March 23, 2011 13:28

    Published by: user13517642 on March 23, 2011 13:29

    Your process or procedure shud look like - [not tested]

    DECLARE
       l_flag   LOG.flag%TYPE;
    BEGIN
    
          SELECT flag
            INTO l_flag
            FROM LOG
           WHERE job_name = p_job_name;
    
       WHILE l_flag = 'R'
       LOOP
          DBMS_LOCK.sleep (3600);   --3600secs in 1hr
    
          SELECT flag
            INTO l_flag
            FROM LOG
           WHERE job_name = p_job_name;
       END LOOP;
    
       IF (l_flag IN ('F', 'E'))
       THEN
            --<>
       END IF;
    END;
    

    Look at the following to find out how to plan work-

    http://www.oradev.com/dbms_scheduler.jsp

    Published by: Sri on 23 March 2011 14:10

    Published by: Sri on 23 March 2011 14:11

  • Call a PL/SQL stored procedure

    Hello

    I created a stored procedure p1 that calls another stored procedure PLSQLScheduler(). This PLSQLScheduler() is invoking a Web service and it works very well.

    create or replace procedure p1 as
    Start
    call PLSQLScheduler();
    end;

    Now, I created a job, that must call my webservice for all hours. From now on, I gave to every 2 minutes.

    Start
    () dbms_scheduler.create_job
    job_name = > Test_Job',.
    job_type = > 'PLSQL_BLOCK ',.
    job_action = > ' start p1(); end;',
    repeat_interval = > ' FREQ = MINUTELY; RANGE = 2',
    enabled = > TRUE,
    auto_drop = > FALSE,
    Comments = > 'Test job');
    end;

    When the Planner call p1() for every 2 minutes, it is defeat and I get the error below.

    ORA-06550: line ORA-06550: line 1, column 476:
    PLS-00905: ORABPEL object. P1 is not valid
    ORA-06550: line 1, column 476:
    PL/SQL: Statement ignored
    *, column :*

    But when I try to call my Web service using call PLSQLScheduler(); It is on the basis of my webservice. The same that I gave in a stored procedure. But it does not work. Can anyone help.

    Thank you.

    Little things that I notice, although they might not have something to do with the question.

    1)

    create or replace procedure p1 as
    begin
    call PLSQLScheduler();
    end;
    

    I would have written that:

    create or replace procedure p1 as
    begin
      PLSQLScheduler;
    end;
    

    (2) similar with your pl/sql block which is on demand:

    'begin p1; end;'
    

    Are you sure that there is only one p1 in your database? If the Scheduler is picking up a different p1 (which is not valid) than you think?

Maybe you are looking for