a wrong number or types of arguments in the call to and

Hello

Description: problem connecting to a database of the relationship of the processor of the NDA.

I want to enrich the incoming events with available data in the relational database. As stipulated in the Oracle® CEP Administrator's Guide, I created the

Data source JDBC in queue server configuration (config.xml). As he didn't throw me any error while staring at the server, I guess, the data source is fine.

I followed the steps below:

1 creation of the types of events in my context.xml in my application (fields in my paintings are shown as the property).

< wlevs:event - type the type name = "walletMonitoringEvent" >

< wlevs:properties >

<! - walletkey in db is of type varchar - >

< name wlevs:property = "walletkey" type = 'char []' length = "20" / >

< / wlevs:properties >

< / wlevs:event - type >

2 create a "table" in context.xml

< wlevs:table - event type = "walletMonitoringEvent" id = "walletMonitoring" data source = "walletDataSource" / >

3. added the table source in my processor.

< wlevs: channel id = "inputChannel" - type of event = "WalletEvent" >

< wlevs:listener ref = "walletProcessor" / >

< / wlevs: channel >

4. has tried to link the database to the CQL processor.

" < = xmlns:wlevs wlevs:config ' http://www.BEA.com/ns/wlevs/config/application "xmlns:jdbc =" " http://www.Oracle.com/ns/OCEP/config/JDBC "> "

< processor >

< name > walletProcessor < / name >

< rules >

< request id = "F1" >

<! [CDATA]

Select i.walletkey, i.createdDate in inputChannel as I, walletMonitoring w

where i.walletkey = w.walletkey

[]] >

< / query >

< / rules >

< / processor >

< / wlevs:config >

I get the error in the logs when I try to deploy the project below:

< 17 November 2014 13:46:16 THIS > < emergency > < CQLServer > < BEA-000000 > < CREATE QUERY AS F1

Select i.walletkey, i.createdDate in inputChannel as I, walletMonitoring w

where > > i.walletkey = w.walletkey < <

a wrong number or types of arguments in the call to and. Check the spelling of the registered service. Also confirm that his appeal is correct and its settings are correct data types. >

< 17 November 2014 13:46:16 THIS > < emergency > < CQLServerTrace > < BEA-000000 > < oracle.cep.exceptions.CEPException: number or types of arguments in the call to and wrong >

< 17 November 2014 13:46:16 THIS > < error > < CQLProcessor > < BEA-000000 > < unable to create the declaration [F1].

Invalid statement: "select i.walletkey, i.createdDate from inputChannel as I, walletMonitoring w.

"where > > i.walletkey = w.walletkey < < '.

Description: a wrong number or types of arguments in the call to and

Cause: This error occurs when the named function call cannot be matched to any declaration for this function name. The function name can be spelled, a parameter can have the wrong data type, or the function declaration may be faulty

Action: Check the spelling of the registered service. Also confirm that his appeal is correct and its settings are correct data types. >

< 17 November 2014 13:46:16 THIS > < error > < deployment > < BEA-2045013 > < the context of the "updateWallet" application could not be started. The cause is:

Invalid statement: "select i.walletkey, i.createdDate from inputChannel as I, walletMonitoring w.

"where > > i.walletkey = w.walletkey < < '.

Description: a wrong number or types of arguments in the call to and

Cause: This error occurs when the named function call cannot be matched to any declaration for this function name. The function name can be spelled, a parameter can have the wrong data type, or the function declaration may be faulty

Action: Check the spelling of the registered service. Also confirm that his appeal is correct and its settings are correct data types. >

Hi Siva,

It seems the event type walletkey property is set incorrectly. Please try to set the event as follows:

Use "char" instead of "char []."

Best regards

Sandeep

Tags: Fusion Middleware

Similar Questions

  • PLS-00306: wrong number or types of arguments in the call to 'XXC_AMOUNT' ORA-06550

    Hi all

    CREATE OR replace PROCEDURE Xxc_amount (v_item_id IN NUMBER,

                                             v_amount  OUT NUMBER,

                                             v_size    OUT NUMBER)

    IS

      v_size   NUMBER := NULL;

    v_amount NOMBRE;

    START

        BEGIN

    CHOOSE conversion_rate

            INTO   v_size

    FROM mtl_uom_class_conversions

            WHERE  inventory_item_id = v_item_id -- 2289;

            v_amount := Nvl (Trunc (v_size), 0);

    -RETURN (cp_cartons);

        EXCEPTION

            WHEN OTHERS THEN

              v_size := 0;

              dbms_output . Put_line ()' Error getting Item Id:'| V_ITEM_ID );

        END ;

    dbms_output. Put_line ('Qty-->' || v_amount );

    dbms_output. Put_line ('Qty1-->'|| v_size );

    END ;

    DECLARE

        amount NUMBER;

        v_size NUMBER;

    START

        Xxc_amount (2289, amount, v_size);

    dbms_output. Put_line (amount || '--' || v_size );

    END ;

    ORA-06550: line 5, column 5:

    PLS-00306: wrong number or types of arguments in the call to 'XXC_AMOUNT '.

    ORA-06550: line 5, column 5:

    PL/SQL: Statement ignored

    Thank you

    Post edited by: 994122 changed the name of the procedure to Xxc_amount Xxc_amount1

    Simply remove the declarations of the v_size and v_amount and it should work.

    The following text compiles and works for me when I call:

    CREATE OR replace PROCEDURE Xxc_amount (v_item_id IN NUMBER,
                                            v_amount  OUT NUMBER,
                                            v_size    OUT NUMBER)
    IS
    BEGIN
        BEGIN
            SELECT conversion_rate
            INTO  v_size
            FROM  mtl_uom_class_conversions
            WHERE  inventory_item_id = v_item_id; -- 2289;
            v_amount := Nvl (Trunc (v_size), 0);
        --RETURN (cp_cartons);
        EXCEPTION
            WHEN OTHERS THEN
              v_size := 0;
              dbms_output.Put_line ('Error in Getting for Item Id :'|| v_item_id);
        END;
        dbms_output.Put_line ('Qty-->' || v_amount);
        dbms_output.Put_line ('Qty1-->'|| v_size);
    END;
    
    DECLARE
        amount NUMBER;
        v_size NUMBER;
    BEGIN
        Xxc_amount (2289, amount, v_size);
        dbms_output.Put_line (amount || '--' || v_size);
    END;
    
  • ORA-06550, PLS-00306: wrong number or types of arguments in the call to ' |'

    Hi all

    Please help me about this error, if I comment the threshold (in the color of the thickness)

    ERROR on line 19:

    ORA-06550: line 19, column 25:

    PLS-00306: wrong number or types of arguments in the call to ' |'

    ORA-06550: line 19, column 3:

    PL/SQL: Statement ignored

    DECLARE

        TYPE nametable IS TABLE OF CHAR(10) INDEX BY BINARY_INTEGER;

        vname NAMETABLE

        CURSOR cf

        IS

          SELECT ename

            FROM emp;

        i     NUMBER;

    START

        OPEN cf;

        i := 1;

        LOOP

            FETCH cf INTO Vname (i);

            EXIT WHEN cf%NOTFOUND;

            i := i + 1;

        END LOOP;

        CLOSE cf;

    dbms_output. Put_line ('Name is ' || VNAME );

        FOR n IN 1.. VNAME . County LOOP

    dbms_output. Put_line ('Name is ' || VNAME (n));

        END LOOP;

    END ;


    Thank you

    VNAME is an associative array. You can not use in DBMS_OUTPUT. Put_line as such. You need to loop through what you did in the code after the DBMS_OUTPUT and print each element of the array individually.

  • PLS-00306: wrong number or types of arguments in the call to 'UPDATE_ORDER_NUMBER_SEQUENCE '.

    Hi Please help me solve the error given by this procedure

    TEXT

    --------------------------------------------------------------------------------

    PROCEDURE UPDATE_ORDER_NUMBER_SEQUENCE)

    sequenceName IN VARCHAR2,

    Inc. in full)

    AS

    stmt VARCHAR2 (2000);

    number of l_n;

    Start

    BEGIN

    -change the increment to Inc.

    stmt: = 'ALTER SEQUENCE | sequenceName | ' INCREMENT ' |

    Inc.;

    TEXT

    --------------------------------------------------------------------------------

    dbms_output.put_line (' execution "' | stmt |) '''');

    EXECUTE IMMEDIATE stmt;

    -Read the following value

    stmt: = "SELECT" | sequenceName | '. DOUBLE NEXTVAL ';

    dbms_output.put_line (' execution "' | stmt |) '''');

    EXECUTE IMMEDIATE stmt in l_n;

    -change the increment of 1

    stmt: = 'ALTER SEQUENCE | sequenceName | ' INCREMENT OF 1';

    dbms_output.put_line (' execution "' | stmt |) '''');

    EXECUTE IMMEDIATE stmt;

    EXCEPTION

    TEXT

    --------------------------------------------------------------------------------

    While some OTHER THEN dbms_output.put_line (SQLERRM);

    END;

    end UPDATE_ORDER_NUMBER_SEQUENCE;

    following error please help me solve this error

    ERROR on line 1:

    ORA-06550: line 1, column 7:

    PLS-00306: wrong number or types of arguments in the call to

    'UPDATE_ORDER_NUMBER_SEQUENCE '.

    ORA-06550: line 1, column 7:

    PL/SQL: Statement ignored

    Well, the error message is pretty self-explanatory, isn't it? What you use

    to call this procedure actually raises this error.

    However, you have not posted the SQL that actually calls this procedure

    so please post that.

    That said, the whole procedure seems wrong - what business requirement is there for

    edit sequences? This isn't normally how they should be used.

  • PLS-00306: wrong number or types of arguments in the call to PUT_LINE

    Hi all

    I m new to the pl sql, when I run the below block I get errors.

    kindly help me on this.

    DECLARE

    Siva ARRAY TYPE IS VARCHAR2 (100);

    s siva;

    Cur_i IS SELECT name FROM employee of CURSOR;

    BEGIN

    OPEN cur_i.

    LOOP

    SEEK cur_i s INTO;

    EXIT WHEN cur_i % NOTFOUND;

    DBMS_OUTPUT. Put_line (s);

    END LOOP;

    CLOSE Cur_i;

    END;


    I m getting the error below:

    PLS-00597: expression' in the INTO list has the wrong type

    PLS-00306: wrong number or types of arguments in the call to "PUT_LINE '.



    Hello

    I think that you are learning/exercises PL/SQL. See below the approach.

    declare

    siva type is table of the varchar2 (100);

    s siva;

    cursor cur_i is
    Select first_name from employees;

    Start

    Open cur_i;

    loop
    collect fetch cur_i in bulk
    s;
    When the output cur_i % notfound;
    end loop;

    close cur_i;

    -Printing values in the collection

    because me s.first... loop of s.Last
    dbms_output.put_line (s (i));
    end loop;

    end;

    Thank you

    Suri

    Post edited by: Suri

    Simple loop removed and exit when collecting conditions because we fetch all the records of a sudden in the collection using the bulk.

  • Iterating through a collection of cursor type give PLS-00306: wrong number or types of arguments in the call to "PUT_LINE '.

    I wrote the following anonymous block. He has a slider ""cur_total_tckt "who choose 6 columns."  A nested table 'total_tckt_colcn' is declared of type ""cur_total_tckt "."  In the dbms_output.put_line I want to print each item in my collection. It gives me the following error:

    PLS-00306: wrong number or types of arguments in the call to "PUT_LINE '.

    ORA-06550: line 29, column 2:

    PL/SQL: Statement ignored

    06550 00000 - "line %s, column % s:\n%s".

    I want to print all 6 columns of an element for 366 these elements.

    ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    DECLARE
    CURSOR cur_total_tckt    
      is
      select t.ticket_id ticket_id, t.created_date created_date, t.created_by created_by, t.ticket_status ticket_status,
      t.last_changed last_changed, h.created_date closed_date
      from n01.cc_ticket_info t
      inner join n01.cc_ticket_status_history h
      on (t.ticket_id = h.ticket_id)
      where t.last_changed >= '6/28/2012 17:28:59' and t.last_changed < (sysdate + interval '1' day);

    type total_tckt_colcn
    is
      TABLE OF cur_total_tckt%rowtype;
      total_tckt_col total_tckt_colcn;
      total_coach_col total_tckt_colcn;
    begin
    total_tckt_col := total_tckt_colcn ();
    total_coach_col := total_tckt_colcn ();
      OPEN cur_total_tckt;
      loop
      fetch cur_total_tckt bulk collect into total_tckt_col limit 100;

      dbms_output.put_line(total_tckt_col.last);

      FOR i IN total_tckt_col.first..total_tckt_col.last
      loop

      -- dbms_output.put_line(total_tckt_col(i).ticket_id);          -- this line works
      dbms_output.put_line(total_tckt_col(i));                       -- this line gives error

      END LOOP;

      exit
      WHEN (cur_total_tckt%NOTFOUND);

      END LOOP ;
      CLOSE cur_total_tckt; 




    end;

    making reference to an element differs from the reference to a field in the record that is part of the collection.

    'dbms_output.put_line (total_tckt_col (i))' works if there is only a single element.

    will not work if this element has subcomponents. in your case it has subcomponents as fields in a record.

  • PLS-00306: wrong number or types of arguments in the call

    Hello

    I get this error when I run the script to test below:
    < font color = "red" >
    PLS-00306: wrong number or types of arguments in the call to 'SPLIT_AMOUNT '.
    < / make >

    This script is to test that the package below that I wrote. It seems to use the same 9 parameters of the same type:

    TEST SCRIPT+ *.
    declare
      TYPE g_table_number  IS TABLE OF  NUMBER INDEX BY BINARY_INTEGER;
      p_customer_trx_ids        g_table_number;
      p_total_amount_to_apply   NUMBER := 10;
      p_total_amount_to_adjust  NUMBER;  
       --
      p_result                  NUMBER;
      p_message                 VARCHAR2(200);
      p_payment_schedule_ids    g_table_number;
      p_terms_sequence_numbers  g_table_number;
      p_apply_amounts           g_table_number;
      p_adjust_amounts          g_table_number;
    begin
      p_customer_trx_ids(1)        := 23613;
      p_customer_trx_ids(2)        := 23614;
     hirap.split_amount
      (
       p_customer_trx_ids        
      ,p_total_amount_to_apply   
      ,p_total_amount_to_adjust 
      ,p_result                  
      ,p_message                
      ,p_payment_schedule_ids   
      ,p_terms_sequence_numbers 
      ,p_apply_amounts          
      ,p_adjust_amounts         
      );
      for i IN p_customer_trx_ids.FIRST .. p_customer_trx_ids.LAST LOOP
        dbms_output.put_line( 
        i || ' p_customer_trx_id: ' || p_customer_trx_ids (i) || ' p_apply_amounts(i): ' ||
         p_apply_amounts(i) || ' p_adjust_amounts: ' || p_adjust_amounts(i) );
      END LOOP;
    end;
    /
    PACKAGE+ *.
    CREATE OR REPLACE PACKAGE hirap
    AS
    TYPE g_table_number  IS TABLE OF  NUMBER INDEX BY BINARY_INTEGER;
    
    PROCEDURE split_amount
      (
       p_customer_trx_ids        IN   g_table_number
      ,p_total_amount_to_apply   IN   NUMBER
      ,p_total_amount_to_adjust  IN   NUMBER
       --
      ,p_result                  OUT  NUMBER
      ,p_message                 OUT  VARCHAR2
      ,p_payment_schedule_ids    OUT  g_table_number
      ,p_terms_sequence_numbers  OUT  g_table_number
      ,p_apply_amounts           OUT  g_table_number
      ,p_adjust_amounts          OUT  g_table_number
      );
    
    END hirap;
    /
    
    CREATE OR REPLACE PACKAGE BODY hirap
    AS
    PROCEDURE split_amount
      (
       p_customer_trx_ids        IN   g_table_number
      ,p_total_amount_to_apply   IN   NUMBER
      ,p_total_amount_to_adjust  IN   NUMBER
       --
      ,p_result                  OUT  NUMBER
      ,p_message                 OUT  VARCHAR2
      ,p_payment_schedule_ids    OUT  g_table_number
      ,p_terms_sequence_numbers  OUT  g_table_number
      ,p_apply_amounts           OUT  g_table_number
      ,p_adjust_amounts          OUT  g_table_number
      )
    IS
      l_total_pay_sched_amount   NUMBER;
      l_customer_trx_id          NUMBER;
      l_amount_due_remainings    g_table_number;
    
      CURSOR pay is
            SELECT p.payment_schedule_id
                  ,p.terms_sequence_number
                  ,p.amount_due_remaining
            FROM   ar_payment_schedules_all p
            WHERE  customer_trx_id = l_customer_trx_id
            AND    p.terms_sequence_number =
                  (SELECT  min(p1.terms_sequence_number)
                   FROM    ar_payment_schedules_all p1
                   WHERE   p1.customer_trx_id = l_customer_trx_id
                   AND     p1.status          = 'OP'
                  );
    
    
    BEGIN
      p_result := 0; -- means OK
    
      -- read the payment schedule for each transaction and store values and totals:
      FOR i IN p_customer_trx_ids.FIRST .. p_customer_trx_ids.LAST LOOP
        l_customer_trx_id          := p_customer_trx_ids(i);
        l_total_pay_sched_amount   := 0;
          BEGIN
            OPEN  pay;
            FETCH pay INTO
                   p_payment_schedule_ids(i)
                  ,p_terms_sequence_numbers(i)
                  ,l_amount_due_remainings(i);
    
            CLOSE pay;
            l_total_pay_sched_amount   := l_total_pay_sched_amount + l_amount_due_remainings(i);
         
          EXCEPTION WHEN NO_DATA_FOUND THEN
            fnd_file.put_line(fnd_file.LOG, 'Transaction does not exist for CUSTOMER_TRX_ID: ' ||
                              p_customer_trx_ids(i) );
            RAISE;
          WHEN OTHERS THEN
              RAISE;
          END;
      END LOOP;
    
      -- save values for each payment schedule based on total
      FOR i IN p_customer_trx_ids.FIRST .. p_customer_trx_ids.LAST LOOP
        p_apply_amounts(i)         := round
                                        (
                                         l_amount_due_remainings(i) / l_total_pay_sched_amount
                                         * (p_total_amount_to_apply + p_total_amount_to_adjust)
                                         , 2
                                        );
        p_adjust_amounts(i)        := l_amount_due_remainings(i) - p_apply_amounts(i);
    
      END LOOP;
    
    EXCEPTION
      WHEN OTHERS THEN
        p_result := 2;
        p_message := 'SQLCODE= ' || SQLCODE || ', SQLERRM = ' || SQLERRM;
        fnd_file.put_line( fnd_file.LOG , TO_CHAR(SYSDATE, 'HH24:MI:SS') || ' - ' || p_message );
    END;
    --
    END hirap;
    /
    Does anyone know what is the problem?

    Thank you
    Steve

    Hi, Steve,.

    The package contains a data type called g_table_number and also a procedure called split_amount.
    That does not create another data type (different), also called g_table_number, outside of the package, any more that it prevents you from creating another procedure, also called split_amount, also. When you want to reference the data type or the procedure outside the package from the package, then you must prefix the name with the name of the package. You do this correctly when you reference the name of the procedure of your anonymous block:

     hirap.split_amount
      (
       p_customer_trx_ids     ...
    

    Now you must do the same when you reference the data type:

    declare
      p_customer_trx_ids        hirap.g_table_number;
      p_total_amount_to_apply   NUMBER := 10;
      p_total_amount_to_adjust  NUMBER;
       --
      p_result                  NUMBER;
      p_message                 VARCHAR2(200);
      p_payment_schedule_ids    hirap.g_table_number;
      p_terms_sequence_numbers  hirap.g_table_number;
      p_apply_amounts           hirap.g_table_number;
      p_adjust_amounts          hirap.g_table_number;
    begin ...
    

    If you do not create another type of (different) data outside of the package, it will be the same as the type of data inside the packaging, even if the name is the same and they are defined in the same way. The package expects the arguments of the type hirap.g_table_number, so you have to give the hirap.g_table_number of type arguments.

  • a wrong number or types of arguments in the call to 'Procedure_Name '.

    I call a procedure with the type of table but its me gives error
    "ORA-06550: line 1, column 7:
    PLS-00306: wrong number or types of arguments in the call to 'VSKU_DETAIL_GRID '.
    How can I fix?



    String stmt = "start xxData_supplwrkbch_functions. VSKU_DETAIL_GRID(?,?,?,?,?,?,?,?); end; « ;
    DBTransaction dbtxn = (DBTransaction) getTransaction ();
    CallableStatement cs = dbtxn.createCallableStatement (stmt.toString (), 1);
    int row_ptr = 0;
    int col_ptr = 0;
    error_code int;
    String msg_erreur;
    String [] [] outb_vsku_array = new String [300] [50];

    Connection Conn = null;
    ArrayDescriptor descriptor_width = null;
    ArrayDescriptor descriptor_qty = null;

    oracle.sql.ARRAY p_width_Arr = null;
    oracle.sql.ARRAY p_qty_Arr = null;
    ARRAY newWidthArray = null;
    ARRAY newQtyArray = null;
    try {}
    Conn = getDBTransaction () .createCallableStatement ("select 1 from dual", 1) .getConnection ();
    }
    catch (SQLException e)
    {
    System.out.println ("error getting connection object");
    }

    Try
    {
    System.out.println ("creating descriptor");
    descriptor_width = ArrayDescriptor.createDescriptor ("XXMSN_VSKU_WIDTH_TYPE", conn);
    }
    catch (System.Exception e)
    {
    System.out.println ("Descriptor ERROR-" + e.getMessage ());
    }

    Try
    {
    System.out.println ("creating descriptor");
    descriptor_qty = ArrayDescriptor.createDescriptor ("XXMSN_VSKU_QTY_TYPE", conn);
    }
    catch (System.Exception e)
    {
    System.out.println ("Descriptor ERROR-" + e.getMessage ());
    }

    Try
    {
    p_width_Arr = new oracle.sql.ARRAY (descriptor_width, conn, p_width_ArrData);
    newWidthArray = new ARRAY (descriptor_width, conn, p_width_Arr);
    }
    catch (System.Exception e)
    {
    System.out.println ("Array training ERROR-" + e.getMessage ());
    }

    Try
    {
    p_qty_Arr = new oracle.sql.ARRAY (descriptor_qty, conn, p_qty_ArrData);
    newQtyArray = new ARRAY (descriptor_qty, conn, p_qty_Arr);
    }
    catch (System.Exception e)
    {
    System.out.println ("Array training ERROR-" + e.getMessage ());
    }

    cs.setString(1,p_ssku_id);
    cs.setString(2,p_dim_2);
    cs.setArray(3,p_width_Arr);
    cs.setArray(4,p_qty_Arr);
    cs.setInt(5,is_blanket);
    cs.registerOutParameter(6,OracleTypes.CURSOR);
    cs.registerOutParameter(7,OracleTypes.NUMERIC);
    cs.registerOutParameter(8,OracleTypes.VARCHAR);
    CS. Execute(); Error is here

    Published by: Rahul Sharma 902 February 12, 2013 05:52

    I don't think and the error you get points in that direction too.
    From my understanding, the OracleTypes.CURSOR is only used for ref Cursor.

    Timo

  • PLS-00306: wrong number or types of arguments in the call to 'PAYROLL_MAIN '.

    Hi all

    I created under the package to extract data from people. I call below package throug CP (parameter are form_date and to_date) but
    get the error as PLS-00306: wrong number or types of arguments in the call to 'PAYROLL_MAIN '.

    I called the main procedure: PER_PAYROLL_XIR_PKG. PAYROLL_MAIN (form_date, to_date)

    Please help me solve error below

    -PER_PAYROLL_XIR_PKG. PAYROLL_MAIN: =.


    CREATE OR REPLACE PACKAGE BODY APPS. "" PER_PAYROLL_XIR_PKG ".
    AS


    procedure payroll_main (in_from_date IN date, date of IN in_to_date out_err_msg OUT varchar2) is

    /

    Thank you

    Published by: 981527 on February 9, 2013 02:35

    Published by: 981527 on February 9, 2013 02:35

    Published by: 981527 on February 11, 2013 21:14

    Hello

    Your package procedure has 3 parameters (2, 1 output), but your appeal involves only 2 parameters

    I think it is always best to use the "named notation" to specify the values of the parameters, for example package.procedure (param1-online value1-value2 online param2, param3-online value3);

    In this way, you can be sure what values are what settings

    Clive

  • PLS-00306. wrong number or types of arguments in the call to the 'procedure '.

    now I'm on oracle10g xe, I get the following error

    create or replace procedure proc_name (slno_in in number,
    name_out out varchar2, fee_out certain number)
    is
    v_Name student.name%type;
    v_fee student.fee%type;
    Start
    Select name, cool in v_name, v_fee of
    student where slno = slno_in;
    name_out: = v_name;
    fee_out: = v_fee;
    end proc_ref;

    Created procedure.

    SQL > exec proc_name (1);
    BEGIN proc_ref (1); END;

    *
    ERROR on line 1:
    ORA-06550: line 1, column 7:
    PLS-00306: wrong number or types of arguments in the call to 'PROC_REF '.
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored





    Please help me
    DECLARE
     p_name VARCHAR2(50);
     p_fee NUMBER;
    BEGIN
     proc_name(1,p_name,p_fee);
     DBMS_OUTPUT.PUT_LINE(p_name||'--'||p_fee);
    END;
    
  • PLSQL simultaneous error: wrong number or types of arguments in the call

    Hello

    I defined a PLSQL simultaneous with 2 parameters:
    (10) DELIVERABLE_ID using valueset 10/number (A 10-digit positive numeric field whose validation)
    (20) STATUS using valueset 10 characters (10 text free characters without validation)

    My request has encountered error, with parameter values DELIVERABLE_ID = 105367, STATUS = New
    Cause: FDPSTP failed due to the ORA-06550: line 1, column 7:
    PLS-00306: wrong number or types of arguments in the call to 'EBOARD_WF_START '.
    ORA-06550: line 1, column 7:

    But I ran the the same Toad PLSQL
    ADB_PA_BC_WF. EBOARD_WF_START (105367, 'Nine');
    I have no error, it completed successfully.

    No idea what went wrong?

    You define the package / procedure argument RETCODE and ERRBUF calling as simultaneous program.
    procedure my_cp
    (errbuf out varchar2)
    RETCODE out varchar2,.
    p_arg1 in varchar2,
    p_arg2 in varchar2
    );

    Kind regards
    Gareth

  • PLS-00306: wrong number or types of arguments in the call to "TO_CHAR.

    Hi guys, I learn Pl/SQL. Writing a simple function which allows to calculate dates. It takes contract_date and determines the date of the following Sunday.

    My current code has the compile error: PLS-00306: wrong number or types of arguments in the call to 'TO_CHAR' which I believe has to do with the to_char (trunc(contract_date,'D')): = contract_weekday;

    I don't understand what the problem with my return it...

    Here is my code: thanks for any help!

    display errors

    create or replace FUNCTION
    contract_dates(contract_date in date)
    DATE OF RETURN
    IS

    starting_sunday DATE;
    -DATE of ending_saturday: = starting_sunday + 6;
    contract_weekday varchar (32);
    days_add NUMBER;

    BEGIN

    TO_CHAR (trunc(contract_date,'D')): = contract_weekday;

    case contract_weekday
    When 1 then days_add: = 6;
    When 2 then days_add: = 5;
    When 3 then days_add: = 4;
    When 4 then days_add: = 3;
    When 5 then days_add: = 2;
    When 6 then days_add: = 1;
    Another days_add: = 7;

    end case;


    starting_sunday: = contract_date + days_add;

    To_date (starting_sunday) RETURN;

    END;

    It is the reverse:

    CREATE OR REPLACE FUNCTION
    contract_dates(contract_date IN DATE)
    RETURN DATE
    IS
    
    starting_sunday DATE;
    --ending_saturday DATE := starting_sunday + 6;
    contract_weekday varchar(1);
    days_add NUMBER;
    
    BEGIN
    
     contract_weekday := to_char(trunc(contract_date,'D'));
    
    case contract_weekday
    when 1 then days_add := 6;
    when 2 then days_add := 5;
    when 3 then days_add := 4;
    when 4 then days_add := 3;
    when 5 then days_add := 2;
    when 6 then days_add := 1;
    else days_add := 7;
    
    end case;
    
    starting_sunday := contract_date + days_add;
    
    RETURN to_date(starting_sunday);
    
    END;
    
  • call procedure: wrong number or types of arguments in the call getHour

    Hello, everybody, when I call a procedure like this: call getHour ('2009-1-1 ',' 2009-12-31'), and it not show that: the following error has occurred:

    ORA-06553: PLS-306: wrong number or types of arguments in the call to "GETHOUR '...
    And the procedure as follows: Please help me to find the mistakes, thanks a lot! Please, I beg you!

    create or replace procedure (getHour)
    sDate in date,
    eDate to date,
    oHour number
    )
    as
    number of pNum;
    number of wNum;
    mDate date;
    number of mNum;
    wStr tank (3);
    l_num NUMBER;
    l_date DATE;
    l_str VARCHAR2 (20);

    Start
    Select count (*) in the l_num of vacation where cdate > = cdate and to_date(sDate,'yyyy-mm-dd') < = to_date(eDate,'yyyy-mm-dd');
    oHour: = pNum;
    loop
    Select to_date (sDate, 'yyyy-mm-dd') + 1 in double l_date;
    If to_date(mDate,'yyyy-mm-dd') > to_date(eDate,'yyyy-mm-dd') then
    "exit";
    on the other
    Select to_char (to_date (mDate, 'yyyy-mm-dd'), 'dy') in the double l_str; / * get week string * /.
    If wStr = 'sat' or wStr = "Sun" then
    Select count (*) in the l_num of workingday where cdate = to_date(mDate,'yyyy-mm-dd'); / * * /
    If mNum = 0 then
    oHour: = oHour + 1;
    end if;
    end if;
    end if;
    end loop;
    oHour: = oHour * 8.5;
    end;

    Hello

    Sorry, I missed the:(il faut le déclarer.) output parameter

    Example:

    DECLARE
       v_sDate VARCHAR2(10) := '2009-01-01';
       v_eDate VARCHAR2(10) := '2009-12-31';
       v_oHour NUMBER;
    BEGIN
       getHour(sDate => v_sDate,
               eDate => v_eDate,
               oHour => v_oHour);
    END;
    

    Kind regards

    Published by: Walter Fernández on March 5, 2009 12:24 AM

  • a wrong number or types of arguments in the call to 'DECLARE_SECTION80CCE '.

    Declare

    L_Warnings Boolean;

    Date of L_Effective_Date;

    Begin

    L_Warnings: = false;

    Pay_In_Tax_Declaration.Declare_Section80cce

    (P_Assignment_Id = > '1212121212',)

    P_Investment_Type = > "xxxxx."

    P_Investment_Amount = > 123,

    P_Effective_Date = > L_Effective_Date,

    P_Element_Entry_Id = > 123,

    p_warnings = > L_warnings);

    End;

    When executing the above code gives the error as an incorrect number or types of arguments in the call to 'DECLARE_SECTION80CCE '.

    Please help someone.

    Hello

    Here is the description of the procedure:

    PROCEDURE DECLARE_SECTION80CCE

    Name of default input/output argument type?

    ------------------------------ ----------------------- ------ --------

    P_ASSIGNMENT_ID NUMBER (10) IN

    P_INVESTMENT_TYPE VARCHAR2 IN

    NUMBER OF P_INVESTMENT_AMOUNT IN

    P_EFFECTIVE_DATE DEFAULT DATE

    P_ELEMENT_ENTRY_ID NUMBER (15) OUTSTANDING

    VARCHAR2 P_WARNINGS OUT

    (1) P_ASSIGNMENT_ID is that a number so feed a few steps a character (12121212 and not '12121212')

    (2) P_WARNINGS is a VARCHAR2: variable 'L_Warnings' has been declared as a Boolean type; Please change to "VARCHAR2 (2000)" (for example) and not need to initialize it with "L_Warnings: = false;

    Note This is on R12...

    Kind regards
    Rajen

    PS: Please mark post as relatively useful/correct if this can help solve your problem. Thks.

  • PLS-00306: wrong number or types of arguments in the call to ' |'

    Hello

    SQL> select * from v$version
      2  /
    
    BANNER
    ----------------------------------------------------------------
    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
    PL/SQL Release 10.2.0.1.0 - Production
    CORE    10.2.0.1.0      Production
    TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
    NLSRTL Version 10.2.0.1.0 - Production
    

    Code

    DECLARE
    TYPE SARR IS TABLE OF VARCHAR2(8);
    l_tempdate SARR;
    l_temptable VARCHAR2(30) := 'TBL_EDATE';
    BEGIN
    EXECUTE IMMEDIATE ' SELECT FORMATDATE  BULK COLLECT INTO ' || l_tempdate || ' FROM  ' || l_temptable;
    END;
    /
    

    Error

    ERROR at line 6:
    ORA-06550: line 6, column 19:
    PLS-00306: wrong number or types of arguments in call to '||'
    ORA-06550: line 6, column 1:
    PL/SQL: Statement ignored
    

    TABLE (it will create dynamically)

    CREATE TABLE TBL_EDATE
    (
      FORMATDATE       VARCHAR2(8 BYTE),
      ORDERFORMATDATE  NUMBER
    )
    

    Insert Scripts

    Insert into TBL_EDATE   (FORMATDATE, ORDERFORMATDATE) Values   ('H2-2012', 2);
    Insert into TBL_EDATE   (FORMATDATE, ORDERFORMATDATE) Values   ('H1-2012', 1);
    
    

    Thank you

    Well, you asked?

    SQL > declare

    2 type sarr is table of the varchar2 (8);

    3 l_tempdate sarr;

    4 l_temptable varchar2 (30);

    5 str varchar2 (100);

    6 start

    7 - l_temptable: = get_temp_table_name (some arg); -logical, you must be knowing

    8 l_temptable: = "TBL_EDATE"; -Suspected function returned this value

    9 str: = ' Select format of ' | l_temptable | » ';

    10 run immediately str bulk collect into l_tempdate;

    11 dbms_output.put_line ('count' | l_tempdate.) (Count);

    12 end;

    13.

    County 2

    PL/SQL procedure successfully completed.

Maybe you are looking for