ERROR PLS-00306

PL / SQL: statement ignored
PLS-00306: wrong number of arguments in the call types
to "INCLUDE".

WHY?

(PROCEEDINGS) include
p_id_frota_cliente IN OUT frota_cliente.id_frota_cliente%TYPE,
p_id_cliente IN frota_cliente.id_cliente%TYPE,
p_limite_mensal IN frota_cliente.limite_mensal%TYPE,
p_limite_trans IN frota_cliente.limite_trans%TYPE,
p_qtd_max_litros IN frota_cliente.qtd_max_litros%TYPE,
p_valor_max IN frota_cliente.valor_max%TYPE,
p_ver_agenda_condutor IN frota_cliente.ver_agenda_condutor%TYPE,
p_ver_km IN frota_cliente.ver_km%TYPE,
p_ver_valor_max IN frota_cliente.ver_valor_max%TYPE,
p_diaval_carta_credito IN frota_cliente.diaval_carta_credito%TYPE
);

IN ANY OTHER PROCEDURE, TO CALL THE PROCEDURE ABOVE:

include (p_id_cliente = > p_id_empresa);

Because you do not have a variable to contain your setting IN OUT (p_id_frota_cliente IN OUT frota_cliente.id_frota_cliente%TYPE).

Also, in the decree for the parameters to be considered in option (OUT or in OUT parameters can be optional) you can use the default clause to specify a value when it has failed.
For example:

SQL> create or replace procedure test (p1 in varchar2,
  2                                    p2 in varchar2)
  3  is
  4  begin
  5    null;
  6  end test;
  7  /

Procedure created.

SQL>
SQL> begin
  2    test(p1 => 'hi');
  3  end;
  4  /
  test(p1 => 'hi');
  *
ERROR at line 2:
ORA-06550: line 2, column 3:
PLS-00306: wrong number or types of arguments in call to 'TEST'
ORA-06550: line 2, column 3:
PL/SQL: Statement ignored

SQL>
SQL> create or replace procedure test (p1 in varchar2,
  2                                    p2 in varchar2 default null)
  3  is
  4  begin
  5    null;
  6  end test;
  7  /

Procedure created.

SQL>
SQL> begin
  2    test(p1 => 'hi');
  3  end;
  4  /

PL/SQL procedure successfully completed.

Tags: Database

Similar Questions

  • Convert number to Varchar for printing the Type of table in a loop error: PLS-00306:

    Hello

    I am trying to print a number of the Table that I get from a ref cursor But cannot convert the number to Varchar to print. What I'm doing wrong here

    Thank you

    Ken

    OUT_REFCURSOR FETCH BULK COLLECT INTO theTBL_RCRD_ID ;

    So THAT (theTBL_RCRD_ID IS NOT NULL)

    LOOP

    strRCRDID: = TO_CHAR (onTBL_RCRD_ID (indx), "99999");    -This line throws error message

    dbms_output.put_line (strRCRDID);

    INDX: = indx + 1;

    END LOOP;

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

    Try this...

    strRCRDID: = TO_CHAR (outTBL_RCRD_ID (indx). RCRD_ID, "99999");

  • Please help solve the problem error: PLS-00306: wrong number or types of a

    Hello

    Please see my statement of types and the procedure. Object and the nested table that is declared at the schema level

    I'm using the oracle version 11.2
    CREATE OR REPLACE TYPE T_COPY_EVNT_DTL IS OBJECT
    
    ( 
    
    eventId varchar2(100),
    
    eventDescription varchar2(100),
    
    promoMonthDescription varchar2(100),
    
    promoStartDate varchar2(100),
    
    promoEndDate varchar2(100),
    
    PROMOCOSTSTARTDATE varchar2(100)
    
    );
    
    
    CREATE OR REPLACE TYPE T_EVENT_TABLE IS TABLE OF T_COPY_EVNT_DTL;
    
    create or replace PROCEDURE Pr_Event_Details_new(ip_xml          CLOB,
                                                                                                                                                     op_sections_xml OUT XMLTYPE) AS
         
         event_list     t_copy_evnt_dtl;
         event_data_sec t_event_table := t_event_table();
         
         
         CURSOR get_event_cur IS
              SELECT cast(collect(t_copy_evnt_dtl(evnt.event,                                                                                                                    evnt.event_desc,
                        mth.promo_month_desc,
                        TO_CHAR(evnt.start_date,
                        'DD/MM/YYYY'),
                        TO_CHAR(evnt.end_date,
                        'DD/MM/YYYY'),
                        TO_CHAR((evnt.start_date - 21),
                        'DD/MM/YYYY'))) as
                        t_event_table)
                   FROM RETEK_PROMO_EVENT_MST evnt
               INNER JOIN  .....
               WHERE ... 
               ORDER BY evnt.event_desc,
                                       mth.promo_month_desc,
                                       dtl.promo_start_date,
                                       dtl.promo_end_date,
                                       dtl.promo_cost_start_date;
    
         type get_event_tab is table of get_event_cur%rowtype index by Binary_Integer;
         l_get_event_tab get_event_tab;
    BEGIN
    
         ....
         
         
              OPEN get_event_cur;
              fetch get_event_cur
                   into event_data_sec;
         
              event_data_sec := set(event_data_sec);
              ...
              
              
              
    EXCEPTION
              --log_errors...                                                                 
              Raise;
    END Pr_Event_Details_new;
    Error: PLS-00306: wrong number or types of arguments in the call to 'SET '.
    Online: 117
    Text: event_data_sec: = set (event_data_sec);

    Error: PL/SQL: statement ignored
    Online: 117
    Text: event_data_sec: = set (event_data_sec);

    You will raise a wrong number or types of argument error, or an exception of PLS-00306, if you use the fixed operator with the collection of user-defined object types.

    The collection must contain SQL scalar data types - single values without internal components...

    Numeric values, on which you can perform arithmetic operations.
    Alphanumeric values that represent individual or strings of characters, characters that you can manipulate.
    Logical values, on which you can perform logical operations.
    Dates and times, you can manipulate.
    Time intervals, you can handle.

    Published by: stefan nebesnak on January 24, 2013 13:22

  • Date arithmetic gives error PLS-00306

    Hi all
    SQL> select*from v$version;
    
    BANNER
    ----------------------------------------------------------------
    Oracle Database 10g Express Edition Release 10.2.0.1.0 - Product
    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
    Here is my code:
      1  declare
      2  v_date_time timestamp;
      3  v_dod  date;
      4  begin
      5  v_date_time:=to_date('11:20','HH12:MI AM');
      6  dbms_output.put_line('v_date_time ='||v_date_time);
      7  v_dod:=sysdate+v_date_time;
      8  dbms_output.put_line('v_dod ='||v_dod);
      9  exception when others then
     10  dbms_output.put_line('Error is'||sqlerrm);
     11* end;
    SQL> /
    v_dod:=sysdate+v_date_time;
           *
    ERROR at line 7:
    ORA-06550: line 7, column 8:
    PLS-00306: wrong number or types of arguments in call to '+'
    ORA-06550: line 7, column 1:
    PL/SQL: Statement ignored
    /
    How to add time with the minutes with sysdate otherwise...
    Please help me.

    And even using the arithmetic of the dates that uses the day as unit of measure (so 1 / 24 is an hour and a 1 / 24 / 60 is one minute):

    select  trunc(sysdate) + 11 / 24 + 20 /24 / 60 eleven_twenty_am_today
      from  dual
    /
    
    ELEVEN_TWENTY_AM_TO
    -------------------
    11/18/2012 11:20:00
    
    SQL>
    

    And:

    select  sysdate current_time,
            sysdate + 11 / 24 + 20 /24 / 60 current_time_plus_11_20
      from  dual
    /
    select  sysdate current_time,
            sysdate + 11 / 24 + 20 /24 / 60 current_time_plus_11_20
      from  dual
    /
    

    SY.

  • Error PLS-00306 with stored procedure

    I am trying to create a simple package and store the procedure to remove the date of treatment for Crystal Reports can read all data. I used an example on the web site for Crystal report as reference in SAP: link: [http://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/1084c536-711e-2b10-e48a-924a60745253;jsessionid= (J2EE3417200) ID0966300750DB00193623365600119940End]

    I ran the following and receive PLS-00306: wrong number or type of argument on the stored procedure. I am also pulling data with a databaselink to another data base given that our third-party vendor will not connect directly to the main database.

    I am new to PL/SQL, so I don't know what else to solve problems. Thank you for taking the time to review this.

    -1. Create a temporary table
    CREATE TEMPORARY TABLE global test_temp
    (processdate DATE NOT NULL);

    -2.Create package w / require REF CURSOR for Crystal reports
    CREATE or REPLACE PACKAGE test_package
    IN the TYPE processdate_TYPE IS REF CURSOR
    RETURN test_temp % ROWTYPE;
    END test_package;
    /

    -3. Stored procedure
    CREATE OR REPLACE PROCEDURE test_Procedure
    (processdate_cursor IN OUT test_Package.processdate_TYPE,
    processdate_parameter IN test_temp.processdate%TYPE)
    AS
    processdate DATE;
    BEGIN
    OPEN FOR Processdate_cursor
    SELECT processdate
    OF processlog@WEATEST
    WHERE processname = "F_ExecuteScheduleProcess" and processtype = ';
    END test_Procedure;
    /

    You say that you do not understand where there is a wrong number or type?

    This error occurs because there is an incorrect number of parameters passed. Your procedure
    Test_SP expects 3 parameters as defined by you as follows
    (p_ID in number,
    p_firstname OUT varchar2,
    p_lastname OUT varchar2)

    But when you run, you're not not p_id, has not managed to p_firstname, has failed to p_lastname. So there are number of parameters and that's what suggests the error.

    To run your test_sp
    Declare
    sFirstName Test_Table.FirstName%Type;
    sLastName Test_Table.Lastname%Type;
    Nest Test_Table.ID%Type: = 1;
    Begin
    Test_SP(1,sFirstName,sLastName);
    End;

    I hope this helps.

  • Error: PLS-00306: wrong number or types of arguments

    Hello

    I created a function:

    create or replace procedure AS Test11
    x Test.Emp_No%Type;
    Begin
    Select emp_no in x from Test whose name = 'South '.
    x: = x + 1;
    Update Test set emp_no = x where emp_no < 100;
    commit;
    end Test11;

    It has compiled with success in PL/SQL Developer. Now, I created an executable of this procedure in front-end - 11i. And then I created a program of this executable. Then I added this program to a group of application.

    Now that I run this query and I get this error in the log:

    Error ORACLE 6550 in FDPSTP

    Cause: FDPSTP failed due to the ORA-06550: line 1, column 7:
    PLS-00306: wrong number or types of arguments in the call to 'TEST11 '.
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    .

    Hello
    Whenever you save a function, or a PL/SQL procedure as a simultaneous program to apps, you must
    to add two parameters of type varchar2 (errbuf and retcode) Moreover to your settings.
    If you change procedure as follows:

    create or replace procedure Test11(errbuf   out varchar2,
                                       retcode out varchar2) AS
    x Test.Emp_No%Type;
    Begin
    select emp_no into x from Test where name = 'Sud';
    x := x + 1;
    update Test set emp_no = x where emp_no < 100;
    commit;
    end Test11;
    

    Published by: Anthony Alix on December 3, 2008 05:20

    Published by: Anthony Alix on December 3, 2008 05:25

    Published by: Anthony Alix on December 3, 2008 05:35

  • PLS-00306 with DBMS_METADATA_DIFF

    Oracle Database 11 g Enterprise Edition Release 11.2.0.3.0 - 64 bit Production

    Hello
    I try to use the package DBMS_METADATA_DIFF (http://docs.oracle.com/cd/E11882_01/appdev.112/e40758/d_metadiff.htm#ARPLS66923) to find out whether two schema objects are the same or not.

    I want to check that OUT parameters 'diffs' domestic FETCH_CLOB can answer this question, but the following code gives me error PLS-00306: wrong number or types of arguments in the call to 'FETCH_CLOB' and I can't understand what I'm doing wrong here.

    'Doc' FETCH_CLOB procedure is specified as "IN OUT NOCOPY CLOB", not requiring special attention?

    Anyone?

    
    CREATE TABLE T1 (X_ID NUMBER, X_NAME VARCHAR2(100));
    CREATE TABLE T2 (X_ID NUMBER, X_NAME VARCHAR2(100));
    
    DECLARE
      l_table_1 varchar2(30) := 'T1';
      l_table_2 varchar2(30) := 'T2';
      l_comp_handle number;
      l_sxml_1 clob;
      l_sxml_2 clob;
      l_doc clob;
      l_diffs boolean;
    BEGIN  
      l_comp_handle := DBMS_METADATA_DIFF.OPENC (object_type => 'TABLE');
      l_sxml_1 := DBMS_METADATA.GET_SXML (object_type => 'TABLE', name => l_table_1, schema => user);
      l_sxml_2 := DBMS_METADATA.GET_SXML (object_type => 'TABLE', name => l_table_2, schema => user);
      DBMS_METADATA_DIFF.ADD_DOCUMENT (handle => l_comp_handle, document => l_sxml_1);
      DBMS_METADATA_DIFF.ADD_DOCUMENT (handle => l_comp_handle, document => l_sxml_2);
      LOOP
        DBMS_LOB.CREATETEMPORARY(l_doc, TRUE );
        DBMS_METADATA_DIFF.FETCH_CLOB(handle => l_comp_handle, doc => l_doc, diffs => l_diffs);
        EXIT WHEN l_doc IS NULL;
        DBMS_LOB.FREETEMPORARY(l_doc);
      END LOOP;
      DBMS_METADATA_DIFF.CLOSE(handle => l_comp_handle);
      IF l_diffs THEN
        DBMS_OUTPUT.PUT_LINE ('Tables are not equal');
      ELSE
        DBMS_OUTPUT.PUT_LINE ('Tables are equal');
      END IF;
    EXCEPTION
      WHEN OTHERS THEN
        DBMS_LOB.FREETEMPORARY(l_doc);
        DBMS_METADATA_DIFF.CLOSE(handle => l_comp_handle);
    END;
    /
    

    Let's not documentation.

    In SQL * Plus, do a 'desc' dbms_metadata_diff and you will see that the real parameters of dbms_metadata_diff.fetch_clob are called "handle," "xmldoc", and "diffs."

    It works (which is good, it runs - he's apparently an infinite loop):

    DECLARE
      l_table_1 varchar2(30) := 'T1';
      l_table_2 varchar2(30) := 'T2';
      l_comp_handle number;
      l_sxml_1 clob;
      l_sxml_2 clob;
      l_doc clob;
      l_diffs boolean;
    BEGIN
      l_comp_handle := DBMS_METADATA_DIFF.OPENC (object_type => 'TABLE');
      l_sxml_1 := DBMS_METADATA.GET_SXML (object_type => 'TABLE', name => l_table_1, schema => user);
      l_sxml_2 := DBMS_METADATA.GET_SXML (object_type => 'TABLE', name => l_table_2, schema => user);
      DBMS_METADATA_DIFF.ADD_DOCUMENT (handle => l_comp_handle, document => l_sxml_1);
      DBMS_METADATA_DIFF.ADD_DOCUMENT (handle => l_comp_handle, document => l_sxml_2);
      LOOP
        DBMS_LOB.CREATETEMPORARY(l_doc, TRUE );
        DBMS_METADATA_DIFF.FETCH_CLOB(handle => l_comp_handle, xmldoc => l_doc, diffs => l_diffs);
        EXIT WHEN l_doc IS NULL;
        DBMS_LOB.FREETEMPORARY(l_doc);
      END LOOP;
      DBMS_METADATA_DIFF.CLOSE(handle => l_comp_handle);
      IF l_diffs THEN
        DBMS_OUTPUT.PUT_LINE ('Tables are not equal');
      ELSE
        DBMS_OUTPUT.PUT_LINE ('Tables are equal');
      END IF;
    EXCEPTION
      WHEN OTHERS THEN
        DBMS_LOB.FREETEMPORARY(l_doc);
        DBMS_METADATA_DIFF.CLOSE(handle => l_comp_handle);
    END;
    /
    

    Once I removed the loop and it ran, it reports always tables are different - similar to this is because the names are different.

    Edit: Here is a much simpler way:

    SQL> ed
    Wrote file afiedt.buf                                                            
    
      1  begin
      2  dbms_output.put_line(dbms_metadata_diff.compare_alter('TABLE', 'T1', 'T2'));
      3* end;
    SQL> /
    ALTER TABLE "HR"."T1" RENAME TO "T2"                                             
    
    PL/SQL procedure successfully completed.
    
  • Can't get the procedure to update - PLS - 00306:Wrong number or types of arguments

    I'm in a situation where I think that despite the correct number of parameters by the way my local procedure (which has been "forward declarations" in addition to logical writing for her; I use all this in a package) fails to compile in SQL * faster due to the error PLS - 00306:Wrong number or types of arguments in the call to P_SENDMAIL.


    I'm passing 5 parameters in the area of forward declarations and also in the logic/header inside in addition to calling the procedure in the package. Can one of you help mewith this and tell me where exactly the error might be. Here is the code:


    [code]

    -Local variable

    CRLF VARCHAR2 (2) CONSTANT: = CHR (13) | CHR (10);

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

    -FORWARD DECLARATIONS

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

    PROCEDURE p_sendmail (p_sender_email IN VARCHAR2,

    P_FROM IN VARCHAR2,

    p_to IN VARCHAR2,

    msg_subject IN VARCHAR2 DEFAULT NULL,

    p_msg_body IN LONG DEFAULT NULL);

    [/ code]


    The procedure itself:


    [code]


    PROCEDURE p_sendmail (p_sender_email IN VARCHAR2,

    P_FROM IN VARCHAR2,

    p_to IN VARCHAR2,

    msg_subject IN VARCHAR2 DEFAULT NULL,

    p_msg_body IN LONG DEFAULT NULL) is

    LONG v_to_list;

    LONG v_cc_list;

    LONG v_bcc_list;

    T_DATE VARCHAR2 (255) DEFAULT TO_CHAR(SYSDATE, 'DD MON YYYY HH24:MI:SS PM');

    g_mail_conn UTL_SMTP. CONNECTION;

    SMTP_HOST CONSTANT VARCHAR2 (256): ='smtp - abc.defg.ca';

    SMTP_PORT CONSTANT PLS_INTEGER: = 25;

    BEGIN

    g_mail_conn: = UTL_SMTP. OPEN_CONNECTION (SMTP_HOST, SMTP_PORT);

    UTL_SMTP. HELO (g_mail_conn, SMTP_HOST);

    UTL_SMTP.mail (g_mail_conn, p_sender_email);

    UTL_SMTP. RCPT (g_mail_conn, p_to);

    UTL_SMTP.open_data (g_mail_conn);

    UTL_SMTP.write_data (g_mail_conn, "|) CRLF);

    UTL_SMTP.write_data (g_mail_conn, p_msg_body);

    UTL_SMTP.close_data (g_mail_conn);

    UTL_SMTP. Quit (g_mail_conn);

    EXCEPTION

    WHEN utl_smtp.transient_error THEN

    Dbms_output.put_line ('TransientError: invalid operation in the service may not be available.) ") ;

    WHEN utl_smtp.permanent_error THEN

    Dbms_output.put_line (' permanent error: the entered email is invalid or recepients mailbox is full.) ») ;

    WHILE others THEN

    Dbms_output.put_line ('Unable to send an email' |') '|| SQLERRM);

    END p_sendmail;

    [/ code]

    Now by calling the procedure to send an email:

    [code]

    p_sendmail (p_sender_email = > ' [email protected]'-, send an E-mail to the donor )

    p_from = > ' ADS < [email protected] > ',

    p_to = > v_store_email_address,

    p_msg_subject = > 'anonymous user ',.

    p_msg_body = > 'thank you ' |

    CRLF.

    "Email confirms that we have received your promise |

    CRLF.

    CRLF.

    ' Name: '. v_full_name |

    CRLF.

    ' Temporary ID: ' | v_azbwccp_id |

    CRLF.

    "Reference number: ' |" MTID |

    CRLF.

    "Amount: ' | '. TO_NUMBER (campaign_desg_amt1) |

    CRLF.

    "Campaign: ' | '. campaign |

    CRLF.

    ' Description: ' | '. adbdesg_rec.adbdesg_name |

    CRLF.

    ' Type: ' | atvpldg_rec.atvpldg_desc |

    CRLF.

    ' Duration: ' | '. atvpdur_rec.atvpdur_desc |

    CRLF.

    "Frequency: ' | '. atvfreq_rec.atvfreq_desc |

    CRLF.

    "Start date: ' | '. bill_date2 |

    CRLF.

    CRLF.

    'Your commitment is processed.' |

    CRLF.

    "At the same time, if you want to change this transaction, please contact us.

    CRLF.

    CRLF.

    "Thank you for your support." |

    CRLF.

    CRLF.

    CRLF.

    CRLF.

    ' * This is an automated message system. Please, do not respond to this email. *** ') ;

    [/ code]


    I've also attached a screenshot of the error message below:

    ScreenHunter_15 Nov. 27 09.35.jpg

    Please help me if you can. I just can't understand the question.


    Thanks in advance

    Sandeep

    In the header of the procedure, I spent my parameter as msg_subject and during the call, he was p_msg_subject. The minute that I corrected the error, I was able to correctly compile the whole package body.

    The question can be now closed.

  • PLS 00306 evil type using DECODE


    Hello

    in the hope of finding a quick response and not look too stupid current...

    I have a PL/SQL procedure, I built using a save to spend a required group of data to a package values, I also built.

    Having eliminated all other errors, I finished with the error PLS 00306 wrong number or types of argument.

    To locate the offending entry...

    (1) I made a dummy copy of the procedure called (P1) and (R1) type of record in the package and that returns my driving procedure (P2).

    (2) I progressed to comment on data from a cursor for selecting data in a table P2 (SQL1) spent (P1) as a (R2) record and the corresponding (1) record (P1)

    (3) I enabled each pair of data until I found what column has generated the error.

    There were two...

    One is a field of NVARCHAR2 (F1) to enter in a NCLOB record item, SELECT

    (I'm pretty confident how to get around this - I can't just use a TO_NCLOB on F1 I use a SQL with database connection)

    The other is where I use a DECODE in SQL go to a NVARCHAR2 field (12) (F2)

    SQL1 simplified line... DECODE(COL1,'VAL1','VAL2') F1

    Here's the quesition *.

    I'm guessing that Oracle sees this as a generic string and not a NVARCHAR2 data type

    How can I change the SQL code to avoid the error?

    Thanks for your time (and be gentle with me, please).

    Elaine

    In fact using TO_NCHAR seems to have fixed - must be the string to NVARHCAR2 he had problems with.

    Thanks for posting... Elaine

  • 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;
    
  • ApexExport 06550 PLS-00306: wrong number or types of arguments

    My work of ApexExort was running great until about a month and I can't pinpoint the problem.  If I run it in production, I get the following error.  However if I run it on my localhost even exact script works very well.

    Exception in thread "main" java.sql.SQLException: ORA-06550: line 2, column 12:

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

    ORA-06550: line 2, column 5:

    Set ORACLE_HOME=C:\Oracle\product\11.2.0\dbhome_1

    set CLASSPATH = % CLASSPATH statement; \;%O RACLE_HOME%\jdbc\lib\ojdbc5.jar;%apexExportJavaDir%

    set PATH = % PATH %; \;%O RACLE_HOME%\Bin

    JAVAHOME value = C:\Program Files\Java\jdk1.8.0_45

    Set startRunLocation = \\mgasan2\hdrive\ATS_Working\Scott_Working\PROD_SCRIPTS\APEX_APP_BKUP

    CD C:\apex_4.2\utilities

    All applications to export REM

    Java oracle.apex.APEXExport - db %oracleHost%:%oraclePort%/%OracleServiceName%-utilisateur % oracleUser %-% oracleSystemPass %-forum password




    < gphmh >

    Thanks for your suggestion of Kiran, but I understood what my problem was.  The APEX version in our database is older: 4.1.1.00.23 and I have been using a version 4.2 utilities apex when I should have used the C:\apex_4.1.1_en\apex\utilities

    CD C:\apex_4.2\utilities

    C:\apex_4.1.1_en\apex\utilities


    For the record, here's what worked for me...


    Set apexExportJavaDir=C:\apex_4.1.1_en\apex\utilities

    Set apexHtmlFileName = apex_info.html

    BackupLocation = c:\PROD_SCRIPTS\APEX_APP_BKUP\OUTPUT\TEST set

    Set ORACLE_HOME=C:\Oracle\product\11.2.0\dbhome_1

    set CLASSPATH = % CLASSPATH statement; \;%O RACLE_HOME%\jdbc\lib\ojdbc5.jar;%apexExportJavaDir%

    set PATH = % PATH %; \; C:\Program Files (x 86) \Java\jre7\bin

    Set startRunLocation = c:\PROD_SCRIPTS\APEX_APP_BKUP

    FIXED % apexExportJavaDir %

    Java oracle.apex.APEXExport - db %oracleHost%:1521/%OracleServiceName%-utilisateur % oracleUser %-% oracleSystemPass %-forum password

  • 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;
    
  • Nested Tables: PLS-00306: wrong number or types of arguments

    Hello

    I created a package for updating of wages for a list of the empnos passed as parameter inside below is the package code:

    CREATE or REPLACE PACKAGE method

    AS

    type emp_list IS TABLE OF emp.empno%type;

    PROCEDURE add_sal (empnos emp_list);

    END method;

    /

    CREATE or REPLACE PACKAGE body method

    AS

    PROCEDURE add_sal (empnos emp_list)

    AS

    BEGIN

    ForAll I IN 1... empnos. Count

    UPDATE emp SET sal = sal plus 100 WHERE empno is empnos (i);

    END add_sal;

    END method;

    /

    When I try to call the procedure to aid under block it works fine:

    DECLARE

    empnos emp_info.emp_list: = emp_info.emp_list (1111,1112);

    BEGIN

    emp_info.add_sal (empnos);

    END;

    /

    But when I try to create the same as type I created in the package and try to pass to the procedure, the block fails with the error:

    DECLARE

    type emp_list IS TABLE OF emp.empno%type;

    empnos emp_list;

    BEGIN

    empnos: = emp_list (1111,1112);

    emp_info.add_sal (empnos);

    END;

    /

    Error report-

    ORA-06550: line 8, column 3:

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

    Can someone please help me understand why we see this error?

    With the help of: Windows 8.1

    Database Oracle 12 c Enterprise Edition Release 12.1.0.1.0 - 64 bit Production

    PL/SQL Release 12.1.0.1.0 - Production

    "CORE 12.1.0.1.0 Production."

    AMT for 64-bit Windows: Version 12.1.0.1.0 - Production

    NLSRTL Version 12.1.0.1.0 - Production

    But when I try to create the same as type I created in the package and try to pass to the procedure, the block fails with the error:

    No - it is NOT of the same type. One is the type of package and this news isn't the type of packet.

    The fact that they have the same projection or a set of attributes is obsolete.

    See the Oracle documentation

    http://docs.Oracle.com/CD/B28359_01/AppDev.111/b28370/Collections.htm#BEIEADAA

    You can assign values to all fields at the same time that if you assign a record to another record with the same data type. With fields that match exactly isn't enough, as shown in example 5-48.

    Example 5-48 assigning all the fields of a record in a statement

    DECLARE
    -Two declarations of the same types.
    TYPE DeptRec1 IS MADE
    (dept_num NUMBER (2), dept_name VARCHAR2 (14));
    TYPE DeptRec2 IS MADE
    (dept_num NUMBER (2), dept_name VARCHAR2 (14));
    dept1_info DeptRec1;
    dept2_info DeptRec2;
    dept3_info DeptRec2;
    BEGIN
    -Is not allowed; different types of data,
    -even if the fields are the same.
    -dept1_info: = dept2_info;
    -This assignment is OK because the files have the same type.
    dept2_info: = dept3_info;
    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.

Maybe you are looking for

  • Slow drive QNAP NAS

    Hello I mounted the SIN of QNAP (TS - 451, 4 x 3 TB WD RED, RAID-5) on network Giga ethernet (using unmanned giga ethernet switch hubs). However, the speed of file transfer is slow and he cuts every time. I use IMAC 27 "with the latest MAC updates. I

  • Recently upgraded to 12.5.1.21, the majority of the missing artist thumbnails

    Windows 8.1, just upgraded to iTunes 12.5.1.21 in order to then get iOS 10. After having launched iTunes backup all of the artist, photo thumbnails have been replaced by an icon generic microphone. The few artists that have a picture in place are tho

  • Save sent message began failing frequently, works to try again.

    In the last month or if the box display of message being sent registered Mail remains open for a very long time. Frequently, it fails and offers for me try again. The retry usually works quickly.

  • A lot of apps is not found in the app store

    Since a week or two when I search for some applications in the app store they do not appear in the search results more. If I got them until I find them under "purchases" and can the re - install. Even a few apps I have installed will not be displayed

  • Satellite A200 PS2E3E vga odd behaviors

    Hello. Sorry for my poor English, but I couldn't find PLK support Toshiba forum. First of all, I want to say thanks to Toshiba, your machines are like horses work faithful, never disappointed me so far. I have just a question on the vga output in a20