Date format  error while executing procedure

Hi,
Oracle9i
Table A has TIME column with datatype as DATE.
In table A TIME column has values in format as mm/dd/yyyy hh:mm:ss
Trying to execute the procedure (with the date value as an input parameter) to retrieve the records from the above table A, but getting the below error:
get_product_details(17012,TO_DATE(24-10-2020,'mm/dd/yyyy hh:mm:ss'),TO_DATE(26-10-2020,'mm/dd/yyyy hh:mm:ss'),v_cur); ;
ORA-01810: format code appears twice
ORA-06512: at "SYS.STANDARD", line 231
ORA-06512: at line 14
Regards

Hi,
Your format mask is incorrect.
TO_DATE(24-10-2020,'mm/dd/yyyy hh:mm:ss') The problem here is the first two characters is date but you are masking it as month and also the delimiter is - but you are masking it as / and for minutes the mask is mi and most importantly to_date accepts a String literal.
should be changed to
TO_DATE('24-10-2020 00:00:00','dd-mm-yyyy hh:mi:ss')cheers
VT

Similar Messages

  • Error while executing procedure for excel upload

    Hi Friends
    Pl. find below error while executing procedure for loading excel data. pl. verify and suggest for any changes in the format of data.
    Rgds
    SriG

    If reading Excel as a database you would use "Access LSLINK"
    Access external means you are reading a file. I don't think it is possible to treat Excel as a file because the internal structure is complex.
    In the past I have saved the Excel as a CSV or as a Tab delimeted file. Then I use something like
    ACCESS External
      USE &filename
      BEGIN
        DESCRIPTION free ,
        Variables text 20
        Organisation text 20
        'July 2008' numeric 20
        'August 2008' numeric 20
        'September 2008' numeric 20
        'October 2008' numeric 20
        'November 2008' numeric 20
        'December 2008' numeric 20
        'January 2009' numeric 20
        'February 2009' numeric 20
        'March 2009' numeric 20
        'April 2009' numeric 20
        'May 2009' numeric 20
        'June 2009' numeric 20
      END
      peek
      read
    ... quit the access sub system
    END

  • Error while executing procedure in TOAD which contains parameter and dblink

    Hi all,
    I am getting error while executing the following code in TOAD and APEX.
    It contains parameter( start_date and end_date) and dblink(@TO_FUT).
    When I hardcode the parameter values, It works fine.
    When I dont give hardcoded values in the procedure, the error comes.
    When I comment the lines whereever parameter comes, still the error comes.
    I am not sure whether it is parameter issue or dblink issue or some other issue
    Is anybody having any clue about this error?
    Your help is very much appreciated.
    The code:
    CREATE OR REPLACE PROCEDURE PROC_ENR_ACC(START_DATE DATE,END_DATE DATE)
    AS
    BEGIN
    EXECUTE IMMEDIATE 'TRUNCATE TABLE OUTPUT_TABLE';
    INSERT INTO OUTPUT_TABLE
    (FIRST_NAME ,LAST_NAME,HID ,EFF_DT,CID,PLAN, FLAG)
    SELECT
    TEMP1.FIRST_NAME,
    TEMP1.LAST_NAME,
    TEMP1.HID,
    TEMP1.EFF_DT,
    TEMP1.CID,
    TEMP1.PLAN,
    NVL((SELECT 'Y'
    FROM FADMIN.MEMI_TABLE@TO_FUT MEMI
    WHERE MEMI.MEME_CK = TEMP1.MEME_CK
    AND MEMI.TXN_EFF_DT = TEMP1.EFF_DT
    AND MEMI.PBP = TEMP1.PLAN
    AND MEMI.MEMI_TXN_CD IN ('AC','RE')
    AND MEMI.MEMI_SEQ_NO = (SELECT MAX (MI.MEMI_SEQ_NO)
    FROM FADMIN.MEMI_TABLE@TO_FUT MI
    WHERE MI.MEME_CK = MEMI.MEME_CK
    AND MI.TXN_EFF_DT = MEMI.TXN_EFF_DT
    AND MI.PBP = MEMI.PBP
    AND MI.MEMI_TXN_CD IN ('AC','RE')
    AND MI.MEMI_INTF_STS = 03 )),'N') AS FLAG
    FROM
    ( SELECT
    M1.FIRST_NAME ,
    M1.LAST_NAME ,
    M1.HID ,
    M1.EFF_DT,
    M1.CID,
    M1.PLAN ,
    (SELECT MEME.MEME_CK
    FROM FADMIN.MEME_TABLE@TO_FUT MEME, FADMIN.GRGR_TABLE@TO_FUT GRGR
    WHERE MEME.M_HIN = M1.HID
    AND MEME.GRGR_CK = GRGR.GRGR_CK
    AND GRGR.GRGR_ID = M1.GRGR_ID
    )AS MEME_CK
    FROM FADMIN.METR_TABLE@TO_FUT M1,
    ( SELECT M3.HID, M3.EFF_DT FROM FADMIN.METR_TABLE@TO_FUT M3
    WHERE M3.TYPE IN ('60','61')
    AND M3.REPLY IN ('117','118')
    AND TRUNC (M3.METR_TRANS_DT) BETWEEN START_DATE AND END_DATE
    AND M3.SYIN_INST = (SELECT MAX (M4.SYIN_INST)
    FROM FADMIN.METR_TABLE@TO_FUT M4
    WHERE M4.HID = M3.HID
    AND M4.TYPE IN ('60','61')
    AND M4.REPLY IN ('117','118')
    AND TRUNC (M4.EFF_DT) = TRUNC (M3.EFF_DT))
    ) TEMP
    WHERE M1.TYPE IN ('60','61')
    AND M1.REPLY ='011'
    AND TRUNC (M1.METR_TRANS_DT) BETWEEN START_DATE AND END_DATE
    AND M1.SYIN_INST = (SELECT MAX (M2.SYIN_INST)
    FROM FADMIN.METR_TABLE@TO_FUT M2
    WHERE M2.HID = M1.HID
    AND M2.TYPE IN ('60','61')
    AND M2.REPLY ='011'
    AND TRUNC (M2.EFF_DT) = TRUNC (M1.EFF_DT))
    AND M1.HID = TEMP.HID (+)
    AND M1.EFF_DT = TEMP.EFF_DT (+)
    AND TEMP.HID IS NULL
    UNION
    SELECT
    M1.FIRST_NAME ,
    M1.LAST_NAME ,
    M1.HID ,
    M1.EFF_DT,
    M1.CID,
    M1.PLAN ,
    (SELECT MEME.MEME_CK
    FROM FADMIN.MEME_TABLE@TO_FUT MEME, FADMIN.GRGR_TABLE@TO_FUT GRGR
    WHERE MEME.M_HIN = M1.HID
    AND MEME.GRGR_CK = GRGR.GRGR_CK
    AND GRGR.GRGR_ID = M1.GRGR_ID
    )AS MEME_CK
    FROM FADMIN.METR_TABLE@TO_FUT M1
    WHERE M1.TYPE IN ('60','61')
    AND M1.REPLY IN ('016', '017', '022', '023')
    AND TRUNC (M1.METR_TRANS_DT) BETWEEN START_DATE AND END_DATE
    AND M1.SYIN_INST = (SELECT MAX (M2.SYIN_INST)
    FROM FADMIN.METR_TABLE@TO_FUT M2
    WHERE M2.HID = M1.HID
    AND M2.TYPE IN ('60','61')
    AND M2.REPLY IN ('016', '017', '022', '023')
    AND TRUNC (M2.EFF_DT) = TRUNC (M1.EFF_DT))
    )TEMP1 ;
    END;
    The error:
    ORA-00918: column ambiguously defined
    ORA-02063: preceding line from TO_FUT
    ORA-06512: at "PROC_ENR_ACC", line 5
    ORA-06512: at line 5

    Okay
    Here's the code formatted
    CREATE OR REPLACE PROCEDURE PROC_ENR_ACC (START_DATE DATE, END_DATE DATE)
    AS
    BEGIN
       EXECUTE IMMEDIATE 'TRUNCATE TABLE OUTPUT_TABLE';
       INSERT INTO OUTPUT_TABLE (FIRST_NAME,
                                 LAST_NAME,
                                 HID,
                                 EFF_DT,
                                 CID,
                                 PLAN,
                                 FLAG)
       SELECT   TEMP1.FIRST_NAME,
                TEMP1.LAST_NAME,
                TEMP1.HID,
                TEMP1.EFF_DT,
                TEMP1.CID,
                TEMP1.PLAN,
                NVL (
                     (SELECT   'Y'
                      FROM   MEMI_TABLE MEMI
                      WHERE       MEMI.MEME_CK = TEMP1.MEME_CK
                      AND MEMI.TXN_EFF_DT = TEMP1.EFF_DT
                      AND MEMI.PBP = TEMP1.PLAN
                      AND MEMI.MEMI_TXN_CD IN ('AC', 'RE')
                      AND MEMI.MEMI_SEQ_NO = (SELECT   MAX (MI.MEMI_SEQ_NO)
                                              FROM   MEMI_TABLE MI
                                              WHERE   MI.MEME_CK = MEMI.MEME_CK
                                              AND MI.TXN_EFF_DT = MEMI.TXN_EFF_DT
                                              AND MI.PBP = MEMI.PBP
                                              AND MI.MEMI_TXN_CD IN ('AC', 'RE')
                                              AND MI.MEMI_INTF_STS = 03)
                      ),'N') FLAG
       FROM (SELECT   M1.FIRST_NAME,
                      M1.LAST_NAME,
                      M1.HID,
                      M1.EFF_DT,
                      M1.CID,
                      M1.PLAN,
                      (SELECT   MEME.MEME_CK
                       FROM   MEME_TABLE MEME, GRGR_TABLE GRGR
                       WHERE       MEME.M_HIN = M1.HID
                       AND MEME.GRGR_CK = GRGR.GRGR_CK
                       AND GRGR.GRGR_ID = M1.GRGR_ID) MEME_CK
             FROM   METR_TABLE M1,
                    (SELECT   M3.HID, M3.EFF_DT
                     FROM   METR_TABLE M3
                     WHERE   M3.TYPE IN ('60', '61')
                     AND M3.REPLY IN ('117', '118')
                     AND TRUNC (M3.METR_TRANS_DT) BETWEEN START_DATE AND  END_DATE
                     AND M3.SYIN_INST = (SELECT   MAX (M4.SYIN_INST)
                                         FROM   METR_TABLE M4
                                         WHERE   M4.HID = M3.HID
                                         AND M4.TYPE IN ('60', '61')
                                         AND M4.REPLY IN ('117', '118')
                                         AND TRUNC (M4.EFF_DT) = TRUNC (M3.EFF_DT))
                     ) TEMP
             WHERE   M1.TYPE IN ('60', '61') AND M1.REPLY = '011'
             AND TRUNC (M1.METR_TRANS_DT) BETWEEN START_DATE AND  END_DATE
             AND M1.SYIN_INST = (SELECT   MAX (M2.SYIN_INST)
                                 FROM   METR_TABLE M2
                                 WHERE       M2.HID = M1.HID
                                 AND M2.TYPE IN ('60', '61')
                                 AND M2.REPLY = '011'
                                 AND TRUNC (M2.EFF_DT) = TRUNC (M1.EFF_DT))
            AND M1.HID = TEMP.HID(+)
            AND M1.EFF_DT = TEMP.EFF_DT(+)
            AND TEMP.HID IS NULL
            UNION
            SELECT   M1.FIRST_NAME,
                     M1.LAST_NAME,
                     M1.HID,
                     M1.EFF_DT,
                     M1.CID,
                     M1.PLAN,
                     (SELECT   MEME.MEME_CK
                      FROM   MEME_TABLE MEME, GRGR_TABLE GRGR
                      WHERE       MEME.M_HIN = M1.HID
                      AND MEME.GRGR_CK = GRGR.GRGR_CK
                      AND GRGR.GRGR_ID = M1.GRGR_ID) MEME_CK
            FROM   METR_TABLE M1
            WHERE   M1.TYPE IN ('60', '61')
            AND M1.REPLY IN ('016', '017', '022', '023')
            AND TRUNC (M1.METR_TRANS_DT) BETWEEN START_DATE AND  END_DATE
            AND M1.SYIN_INST = (SELECT   MAX (M2.SYIN_INST)
                                FROM   METR_TABLE M2
                                WHERE   M2.HID = M1.HID
                                AND M2.TYPE IN ('60', '61')
                                AND M2.REPLY IN ('016', '017', '022', '023')
                                AND TRUNC (M2.EFF_DT) = TRUNC (M1.EFF_DT))
            ) TEMP1;
    END;
    /When posting code if you put {noformat}{noformat} (with the curly brackets and in lower case) above and below it you can preserve formatting.
    To your original question...
    Is the link name supposed to be variable?
    What do you mean by 'hard coding' the values, do you mean in the procedure itself so you'd actually PROC_ENR_ACC();?
    What happens when you run this?DECLARE
    start_date DATE;
    end_date DATE;
    BEGIN
    start_date := '01-JAN-2009';
    end_date := '01-FEB-2009';
    PROC_ENR_ACC(start_date, end_date);
    END;
    I need to know exactly how to recreate your error...
    Cheers
    Ben
    http://www.munkyben.wordpress.com
    +Don't forget to mark replies helpful or correct+ ;)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • ORA-06550 error while executing procedure

    HI Friends,
    I have written a proc for the below process.
    SP_Control (table)
    sno     campgn_id     campgn_typ     campgn_no     current_wave
    1     ET07001     ONB     ONB01     1
    2     ET07001     ONB     CNB01     1
    3     ET03053     IAL     IAL1A     A
    4     ET03053     IAL     IAL2A     A
    5     ET03053     IAL     IAL3A     A
    6     ET03053     IAL     IAL4A     A
    After calling the procedures with bellow parameters
    Get_next_campgn(‘ONB01’,’ONB’);
    Get_next_campgn(‘CNB01’,’ONB’);
    Get_next_campgn(‘IAL1A’,’IAL’);
    Get_next_campgn(‘IAL2A’,’IAL’);
    Get_next_campgn(‘IAL3A’,’IAL’);
    Get_next_campgn(‘IAL4A’,’IAL’);
    …………… it should update the table with below data.
    sno     campgn_id     campgn_typ     campgn_no     current_wave
    1     ET07001     ONB     ONB02     2
    2     ET07001     ONB     CNB02     2
    3     ET03053     IAL     IAL1B     B
    4     ET03053     IAL     IAL2B     B
    5     ET03053     IAL     IAL3B     B
    6     ET03053     IAL     IAL4B     B
    I have written a procedure like this and its compliled successfully.
    But throws error while executing like
    execute Get_next_campgn(‘ONB01’,’ONB’);
    create or replace procedure Get_next_campgn(p_campgn varchar2,p_type varchar2)
    as
    begin
    update SP_Control set campgn_no = substr(p_campgn,1,length(p_campgn)-1)||to_char(ascii(substr(p_campgn,-1,1))+1) ,
    curr_wave = to_char(ascii(curr_wave)+1)
    where campgn_type = p_type
    and campgn_no = p_campgn ;
    exception
    when others then
    dbms_output.put_line(sqlerrm);
    end Get_next_campgn;
    Error::::
    Error starting at line 15 in command:
    execute Get_next_campgn(‘ONB01’,’ONB’)
    Error report:
    ORA-06550: line 1, column 24:
    PLS-00103: Encountered the symbol "" when expecting one of the following:
    ( ) - + case mod new not null <an identifier>
    <a double-quoted delimited-identifier> <a bind variable>
    table continue avg count current exists max min prior sql
    stddev sum variance execute multiset the both leading
    trailing forall merge year month day hour minute second
    timezone_hour timezone_minute timezone_region timezone_abbr
    time timestamp interval date
    <a string literal with character set specification>
    06550. 00000 - "line %s, column %s:\n%s"
    *Cause:    Usually a PL/SQL compilation error.
    *Action:
    Please suggest....

    The procedure executed successfully for me.
    drop table sp_control;
    create table sp_control
      campgn_no varchar2(20),
      curr_wave varchar2(20),
      campgn_type varchar2(20)
    insert into sp_control values ('ONB01', '1', 'ONB');
    insert into sp_control values ('IAL1A', 'A', 'IAL');
    create or replace procedure Get_next_campgn(p_campgn varchar2,p_type varchar2)
    as
    begin
    update SP_Control set campgn_no = substr(p_campgn,1,length(p_campgn)-1)||to_char(ascii(substr(p_campgn,-1,1))+1) ,
    curr_wave = to_char(ascii(curr_wave)+1)
    where campgn_type = p_type
    and campgn_no = p_campgn ;
    exception
    when others then
    dbms_output.put_line(sqlerrm);
    end Get_next_campgn;
    begin
      Get_next_campgn('ONB01','ONB');
    end;
    select * from sp_control;
    --Output as Follows:
    drop table sp_control succeeded.
    create table succeeded.
    1 rows inserted
    1 rows inserted
    procedure Get_next_campgn(p_campgn Compiled.
    anonymous block completed
    CAMPGN_NO            CURR_WAVE            CAMPGN_TYPE         
    ONB050               50                   ONB                 
    IAL1A                A                    IAL                 
    2 rows selectedJust a hunch, in the Procedure call
    execute Get_next_campgn(‘ONB01’,’ONB’);the "Single Quotes" does not appear correct. They were probably typed into some other editor.
    When executed as
    execute  Get_next_campgn(‘ONB01’,’ONB’);
    Error starting at line 1 in command:
    begin
      Get_next_campgn(‘ONB01’,’ONB’);
    end;
    Error report:
    ORA-06550: line 2, column 19:
    PLS-00103: Encountered the symbol "‘" when expecting one of the following:
       ( ) - + case mod new not null <an identifier>
       <a double-quoted delimited-identifier> <a bind variable>
       table continue avg count current exists max min prior sql
       stddev sum variance execute multiset the both leading
       trailing forall merge year month day hour minute second
       timezone_hour timezone_minute timezone_region timezone_abbr
       time timestamp interval date
       <a string literal with character set specification>
    06550. 00000 -  "line %s, column %s:\n%s"
    *Cause:    Usually a PL/SQL compilation error.
    *Action:So, just replace them in any SQL editor and your Invoker block shall work properly.
    Regards,
    P.

  • Error while executing procedure

    Hi,
    I am executing a procedure, which will write a query result into a spreadsheet and it will store it into the local PC. i am trying to run this procedure using TEST username.
    Now i created a utl_file directory like below:
    create directory MYDIR5 AS 'c:\raj';
    and i tried to assign permission like below :
    grant read,write on directory MYDIR5 to TEST
    i got the below error, while i am executing the GRANT stmt:
    ORA-01749: you may not GRANT/REVOKE privileges to/from yourself
    So who has to grant privileges for this. I tried to execute the procedure without granting privileges but it end up with ORA-29283: error.
    So pls help me on this issue.
    Thanks in advance!!!

    You looked up the CREATE DIRECTORY statement right? What does it say under "Prerequisites"?
    > I am executing a procedure, which will write a query result into a spreadsheet and it will store it into the local PC
    Is the database also on your local PC? UTL_FILE runs on the database server.

  • Input Value long enough for date format ,Error in executing parallel query

    Hi,
    My Table: ANML( ID, STATUS,B_DATE,B_MONTH,B_YEAR, DEATH_DATE)
    status 1 for alive and 2 for dead.
    i wrote a view to get age.
    as
    create or relace view view1 as
    select top."ID",top."STATUS",top."DOB",top."DEATH_DATE",top."ANML_AGE",top."DAYSDIFF",
    CASE
    WHEN anml_age < 1
    THEN 'D'
    ELSE 'M'
    END age_unit,
    CASE
    WHEN anml_age < 1
    THEN TO_CHAR (daysdiff || ' Day(s)')
    WHEN anml_age < 12
    THEN TO_CHAR (anml_age || ' Month(s)')
    WHEN MOD (anml_age, 12) = 0
    THEN TO_CHAR (ROUND (anml_age / 12, 0) || ' Year(s) '
    ELSE TO_CHAR ( ROUND (anml_age / 12, 0)
    || ' Year(s) '
    || MOD (anml_age, 12)
    || ' Month(s)'
    END age_string
    from
    (SELECT a.*,
    CASE WHEN status IN ( 1)
    THEN FLOOR(MONTHS_BETWEEN(TRUNC(SYSDATE),dob))
    WHEN death_date IS NOT NULL AND status IN (2)
    THEN FLOOR(MONTHS_BETWEEN(death_date,dob))
    END anml_age,
    CASE WHEN status IN (1)
    THEN FLOOR(TRUNC(SYSDATE)-TRUNC(dob))
    WHEN death_date IS NOT NULL AND status IN (2)
    THEN FLOOR(TRUNC(death_date) - TRUNC(dob))
    END daysdiff
    from (
    SELECTanml.id, status,
    TO_DATE ( DECODE (b_date,
    NULL, 1,
    b_date
    || '-'
    || DECODE (b_month,
    NULL, 1,
    b_month
    || '-'
    || b_year,
    'dd-mm-yyyy'
    ) DOB,
    death_date
    FROM anml
    WHERE b_year IS NOT NULL
    ) a) top
    when i tried to fetch all values from view its working fine.
    But when i tried to fetch values based on condition like as follows,
    select * from view1 where anml_age > 20 and anml_age<30
    I am getting error like:
    Input Value long enough for date format and Error in executing parallel query
    Please tell me wht is wrong.

    Here is your formatted code
    create or relace view view1 as
    select top."ID",top."STATUS",top."DOB",top."DEATH_DATE",top."ANML_AGE",top."DAYSDIFF",
    CASE
    WHEN anml_age < 1
    THEN 'D'
    ELSE 'M'
    END age_unit,
    CASE
    WHEN anml_age < 1
    THEN TO_CHAR (daysdiff || ' Day(s)')
    WHEN anml_age < 12
    THEN TO_CHAR (anml_age || ' Month(s)')
    WHEN MOD (anml_age, 12) = 0
    THEN TO_CHAR (ROUND (anml_age / 12, 0) || ' Year(s) '
    ELSE TO_CHAR ( ROUND (anml_age / 12, 0)
    || ' Year(s) '
    || MOD (anml_age, 12)
    || ' Month(s)'
    END age_string
    from
    (SELECT a.*,
    CASE WHEN status IN ( 1)
    THEN FLOOR(MONTHS_BETWEEN(TRUNC(SYSDATE),dob))
    WHEN death_date IS NOT NULL AND status IN (2)
    THEN FLOOR(MONTHS_BETWEEN(death_date,dob))
    END anml_age,
    CASE WHEN status IN (1)
    THEN FLOOR(TRUNC(SYSDATE)-TRUNC(dob))
    WHEN death_date IS NOT NULL AND status IN (2)
    THEN FLOOR(TRUNC(death_date) - TRUNC(dob))
    END daysdiff
    from (
    SELECTanml.id, status,
    TO_DATE ( DECODE (b_date,
    NULL, 1,
    b_date
    || '-'
    || DECODE (b_month,
    NULL, 1,
    b_month
    || '-'
    || b_year,
    'dd-mm-yyyy'
    ) DOB,
    death_date
    FROM anml
    WHERE b_year IS NOT NULL
    ) a) top

  • Date Format  error while loading *.dat  file to Sataging .

    Hi All ,
    Loading data from *.dat file in to Staging , the dat file contains data for date in 'MM-DD-YYYY' format which is String , when it loading by control file it produce the error date format is not supported .I think ti required DD-MM-YYYY format . Is their any properties to change the date format or else need to write the function for converting date format .
    I am using OWb 10g Release 1 , with same DB .
    Please guide me
    Thanx in advance
    Regards ,

    Hi,
    Before loading into staging, you can use Expression operator to convert the CHAR into DATE with something like this:
    TO_DATE('01-02-2005','MM-DD-YYYY')
    Hope this helps.

  • Error while executing procedure for FTP

    Hi all,
    I am facing error while copying l the csv files from FTP to local directory on my machine.
    I have created a procedure & selected technology jython . please find the code below.
    import snpsftp
    ftp = snpsftp.SnpsFTP('ftp://noid-misa-01-pp/', 'indiaftp', 'PWD')
    ftp.setmode('ASCII')
    ftp.mget('INT/GPInput(AU)/', '*.csv', 'C:\D_DRIVE_NEERAJ\reading')
    ftp.close()
    The error i am receiving is :
    org.apache.bsf.BSFException: exception from Jython: Traceback (innermost last):
    File "<string>", line 2, in ?
    File "C:\OraHome_1\oracledi\bin\..\lib\scripting\Lib\snpsftp.py", line 50, in __init__
    File "C:\OraHome_1\oracledi\bin\..\lib\scripting\Lib\snpsftp.py", line 58, in connect
    File "C:\OraHome_1\oracledi\bin\..\lib\scripting\Lib\ftplib.py", line 118, in connect
    File "C:\OraHome_1\oracledi\bin\..\lib\scripting\Lib\socket.py", line 135, in connect
    java.net.UnknownHostException: ftp://noid-misa-01-pp/

    If reading Excel as a database you would use "Access LSLINK"
    Access external means you are reading a file. I don't think it is possible to treat Excel as a file because the internal structure is complex.
    In the past I have saved the Excel as a CSV or as a Tab delimeted file. Then I use something like
    ACCESS External
      USE &filename
      BEGIN
        DESCRIPTION free ,
        Variables text 20
        Organisation text 20
        'July 2008' numeric 20
        'August 2008' numeric 20
        'September 2008' numeric 20
        'October 2008' numeric 20
        'November 2008' numeric 20
        'December 2008' numeric 20
        'January 2009' numeric 20
        'February 2009' numeric 20
        'March 2009' numeric 20
        'April 2009' numeric 20
        'May 2009' numeric 20
        'June 2009' numeric 20
      END
      peek
      read
    ... quit the access sub system
    END

  • Date format error while accessing date from SQLSERVER

    Hi all, in me webdynpro application I have taken Date type for the Input Field.
    At date select it is displaying in the format
      *2/14/2009 i.e. mm/dd/yyyy*
    And when I am saving date in the sql database then the date format changes to..
    2009-02-14 i.e..yyyy/mm/dd.
    But using the Date format method I have changed the format as per the need to push date in the SQL database table...
    In the table SQL the date attribute is in form i.e.    02/14/2009 as like from the date select from the date Input Fieldu2026But the problem is that database is not being able to display in that Input field again.
    I have use the coding both at Insertion and selection of the database i.e..
    Date Sdate, Edate;
    Sdate     =   Date.valueOf (rs.getString ("Sdate"));
    Edate     =   Date.valueOf (rs.getString ("Edate"));
    SimpleDateFormat date Formatter = new SimpleDateFormat ("MM/dd/yyyy");
    Sdate = wdContext.currentProjectElement ().getEdate ();
    Edate = wdContext.currentProjectElement ().getEdate ();
      String Sd = dateFormatter.format (Sdate);
      String Ed = dateFormatter.format (Edate);
      Date Sdd =Date.valueOf (Sd);
      Date Edd =Date.valueOf (Ed);
    But at selection of the database the error for the date format isu2026.
    java.lang.IllegalArgumentException
    If somebody knows how to resolve this ,plz let me know
    Regards:
    SK

    for displaying the value only, I think, you are converting to string.
    sol1:
    1. Create a simple type in dictionary: under Dictionary -> Local Dictionary -> Simple Types
    2. go to Definition tab: Change Built-in Type as Date
    3. go to Representation tab: specify format e.g.: MM/dd/yyyy
    4. go to Context and change the date context attribute to the created type.
    sol2:
    please try to minimize the casting between Date and String.
    I believe in database date is stored as Date type itself. My suggestion will be for displaying keep a separate attribute and set it on each db call.
    below code is converting from Date to String.
    Date Sdate, Edate;
    Sdate = rs.getDate ("Sdate");
    Edate = rs.getDate ("Edate");
    SimpleDateFormat date Formatter = new SimpleDateFormat ("MM/dd/yyyy");
    String Sd = dateFormatter.format (Sdate);
    String Ed = dateFormatter.format (Edate);

  • Date format error while schedule a job!

    Dear all,
    I am using 11gR1 on Linux OS.
    I have to schedule a procedure that runs in mid night after 12:00 using dbms_scheduler.
    This is the code i am writing:
    begin
    dbms_scheduler.create_job(
    job_name => 'ATT_LATE_MIS_PRC_JOB'
    ,job_type => 'PLSQL_BLOCK'
    ,job_action => 'begin att_late_mis(1); end; '
    ,start_date => '16/10/2009 12:05 AM'
    ,repeat_interval => 'FREQ=DAILY'
    ,enabled => TRUE
    ,comments => 'Attendance MIS');
    end;
    and this is the error i am getting:
    ORA-01843: not a valid month
    ORA-06512: at line 2
    I don't know how to format date for this procedure. All i need to do is to simply schedule a procedure that runs at 12:05 daily.
    Thanks, Imran

    misterimran wrote:
    Dear all,
    I am using 11gR1 on Linux OS.
    I have to schedule a procedure that runs in mid night after 12:00 using dbms_scheduler.
    This is the code i am writing:
    begin
    dbms_scheduler.create_job(
    job_name => 'ATT_LATE_MIS_PRC_JOB'
    ,job_type => 'PLSQL_BLOCK'
    ,job_action => 'begin att_late_mis(1); end; '
    ,start_date => '16/10/2009 12:05 AM'
    ,repeat_interval => 'FREQ=DAILY'
    ,enabled => TRUE
    ,comments => 'Attendance MIS');
    end;
    and this is the error i am getting:
    ORA-01843: not a valid month
    ORA-06512: at line 2
    I don't know how to format date for this procedure. All i need to do is to simply schedule a procedure that runs at 12:05 daily.
    Thanks, ImranSee the following link
    Error with dbms_scheduler.create_job
    And try the following code (Haven't tested)
    begin
       dbms_scheduler.create_job(
           job_name = 'ATT_LATE_MIS_PRC_JOB'
          ,job_type = 'PLSQL_BLOCK'
          ,job_action = 'begin att_late_mis(1); end; '
          ,start_date = '16-NOV-2009 12:05:00 AM'
          ,repeat_interval = 'FREQ=DAILY'
          ,enabled = TRUE
          ,comments = 'Attendance MIS');
    end;
    /

  • ORA-00900: invalid SQL statement Error while Executing Procedure

    Hi:
    I am trying to execute following procedure through java code, but i am getting ORA-00900: invalid SQL statement error.
    Procedure is :
    <code>
    (vResult out int)
    as
    vCardId varchar2(16);
    vForacid varchar2(16);
    vApp_Entry_No varchar2(10);
    vSrNo number(6);
    vCardStatus char(1);
    vCardStat char(2);
    vExpiryDate date;
    Cursor cardCur1 is
    select u.card_number,trim(u.ACCOUNT_NUMBER),u.CARD_STATUS,to_char(u.EXPIRY_DATE,'dd-MM-yyyy')
    FROM DailyCardData u
    where default_indicator='1'
    and isprocessed = 'N'
    order by expiry_date;
    begin
    vSrNo := 0;
    vResult := 0;
    open cardCur1;
    Loop
    fetch cardCur1 into vCardId,vForacid,vCardStat,vExpiryDate;
    if cardCur1%NOTFOUND then
    exit;
    end if;
    if (vCardStat != null) then
    vCardStatus := 'H';
    elsif (vExpiryDate <= sysdate) then
    vCardStatus := 'E';
    else
    vCardStatus := null;
    end if;
    select a.app_entry_no into vApp_Entry_No from Application a,ApplicationLinkedAccounts l
    where l.foracid = vForacid and l.AcSrNo = '1'
    and a.app_entry_no = l.app_entry_no
    and a.cardid is null
    and a.DOWNLOADFILECREATIONFLAG = 'Y';
    update Application set CardId = vCardId,
    Card_Status = vCardStatus,APPLICATIONPROCESSEDFLAG = 'Y',
    APPLICATIONPROCESSEDdate = DOWNLOADFILECREATIONdate
    where App_Entry_No = vApp_Entry_No;
    commit;
    update DailyCardData set isprocessed = 'Y',app_entry_no = vApp_Entry_No
    where card_number = vCardId;
    commit;
    end Loop;
    close cardCur1;
    vResult := 1;
    end;
    </code>
    Can any body help me in that?
    Thank You,
    Anup

    First of all I don't see a procedure header.
    Secondly I see you commit inside your procedure. This is a bug.
    Thirdly I see you also commit inside a loop. This is also a bug, and needs to be removed asap.
    The error indicates a statement doesn't parse. As you don't post the error stack, nor a table definition no one can reproduce the problem.
    You need to isolate the statements, one by one, and run them through sql*plus to see what happens.
    Sybrand Bakker
    Senior Oracle DBA

  • RPC error while executing procedure

    Hi,
    whenever I execute a procedure which extracts data from COBOL through relativity, it gives me RPC error and exits, the procedure code and error description is provided below,
    Procedure Code:
    ===========
    CREATE OR REPLACE Procedure CDB.pop_UtilityBill AS
    txt_Truncate Varchar2(200);
    txt_Rename Varchar2(500);
    BEGIN
    txt_Truncate := 'truncate table UtilityBill_Tmp';
    execute immediate (txt_Truncate);
    --Loading of Date from UTLMERGE File to Temporary Table
    Insert into UtilityBill_TMP
    (UtlBillDate,Branch ,Booth ,Batch,Card,Bill ,DocNo,Account ,ElcAcc ,ElcFil, GasAcc, GasFil, RegCode , ExchCode, PtclAcc , PtclFil ,
    WasaAcc, WasaFil , Amount , TranType , ChequeNo , Bank , Flag , UtlBillTime , PostId , FlatbedFlag , FlatbedMicrread , FlatbedEndorse , BillingMonth )
    Select DECODE("MrgDate",0,TO_DATE(NULL),TO_DATE("MrgDate"+1721423,'J')) UtlBillDate,
    "Branch",
    "Booth",
    "Batch",
    "Card",
    "Bill",
    "DocNo",
    "Account",
    "ElcAcc",
    "ElcFil",
    "GasAcc",
    "GasFil",
    "RegCode",
    "ExchCode",
    "PtclAcc",
    "PtclFil" ,
    "WasaAcc",
    "WasaFil" ,
    "Amount",
    "TranType",
    "ChequeNo",
    "Bank" ,
    "Flag" ,
    "MrgTime" UtlBillTime ,
    "PostId",
    "FlatbedFlag",
    "FlatbedMicrread" ,
    "FlatbedEndorse",
    "BillingMonth"
    From UTLMRG2M_CURR@BIDB
    INNER JOIN Branches_Control_UtlBill BU on BU.Branch = "Branch"
    where "MrgDate" > UtilityBill_Date
    and "Card" <> 9;
    COMMIT;
    --Loading of Date from Temporary Table to Interface Table
    INSERT INTO UtilityBill_I
    (UtlBillDate,Branch ,Booth ,Batch,Card,Bill ,DocNo,Account ,ElcAcc ,ElcFil, GasAcc, GasFil, RegCode , ExchCode, PtclAcc , PtclFil ,WasaAcc,
    WasaFil , Amount , TranType , ChequeNo , Bank , Flag ,UtlBillTime , PostId , FlatbedFlag , FlatbedMicrread , FlatbedEndorse , BillingMonth )
    Select UtlBillDate,
    Branch,
    Booth,
    Batch,
    Card,
    Bill,
    DocNo,
    Account,
    ElcAcc,
    ElcFil,
    GasAcc,
    GasFil,
    RegCode,
    ExchCode,
    PtclAcc,
    PtclFil ,
    WasaAcc,
    WasaFil ,
    Amount,
    TranType,
    ChequeNo,
    Bank ,
    Flag ,
    UtlBillTime ,
    PostId,
    FlatbedFlag,
    FlatbedMicrread ,
    FlatbedEndorse,
    BillingMonth
    From UtilityBill_TMP;
    COMMIT;
    --Swapping of Data from Interface Table to Actual Table
    EXECUTE IMMEDIATE('RENAME UtilityBill TO UtilityBill_Bkp');
    EXECUTE IMMEDIATE('RENAME UtilityBill_I TO UtilityBill');
    EXECUTE IMMEDIATE('RENAME UtilityBill_Bkp TO UtilityBill_I');
    -- Insertion in Interface Table for Next Day Preparation
    INSERT INTO UtilityBill_I
    (UtlBillDate,Branch ,Booth ,Batch,Card,Bill ,DocNo,Account ,ElcAcc ,ElcFil, GasAcc, GasFil, RegCode , ExchCode, PtclAcc , PtclFil ,WasaAcc,
    WasaFil , Amount , TranType , ChequeNo , Bank , Flag ,UtlBillTime , PostId , FlatbedFlag , FlatbedMicrread , FlatbedEndorse , BillingMonth )
    Select UtlBillDate,
    Branch,
    Booth,
    Batch,
    Card,
    Bill,
    DocNo,
    Account,
    ElcAcc,
    ElcFil,
    GasAcc,
    GasFil,
    RegCode,
    ExchCode,
    PtclAcc,
    PtclFil ,
    WasaAcc,
    WasaFil ,
    Amount,
    TranType,
    ChequeNo,
    Bank ,
    Flag ,
    UtlBillTime ,
    PostId,
    FlatbedFlag,
    FlatbedMicrread ,
    FlatbedEndorse,
    BillingMonth
    From UtilityBill_TMP;
    COMMIT;
    txt_Truncate := 'TRUNCATE TABLE UtilityBill_Tmp';
    execute immediate(txt_Truncate);
    Commit;
    END;
    Error Description:
    ===========
    BEGIN pop_UtilityBill; END;
    ERROR at line 1:
    ORA-02068: following severe error from BIDB
    ORA-28511: lost RPC connection to heterogeneous remote agent using
    SID=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=cdbprd)(PORT=1521)
    ))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=HSODBC1)))
    ORA-06512: at "CDB.POP_UTILITYBILL", line 10
    ORA-06512: at line 1
    HS trace file:
    ========
    Oracle Corporation --- TUESDAY MAY 08 2012 18:03:53.979
    Heterogeneous Agent Release
    9.2.0.8.0
    HS Agent received unexpected RPC disconnect
    Network error 1003: NCR-01003: NCRS: Read error.
    Oracle database Version:
    ===============
    Oracle9i Release 9.2.0.8.0 - Production
    Operating System:
    ===========
    Microsoft Windows Server 2003 SP2
    can anybody help me out on this?

    remove the line break then if youre loading that in. Apologies, I didnt read the next line. The error is with the insert, if youre loading that up as a sql command file it wont run like that with the line break as it reads it as separate commands quick example.
    SQL> host more ins.sql
    insert into t1
    (select * from dba_objects
    where rownum = 1);
    commit;
    SQL>
    SQL> create table t1 as select * from dba_objects where 1=0;
    Table created.
    SQL> @ins
    OWNER
    OBJECT_NAME
    SUBOBJECT_NAME                  OBJECT_ID DATA_OBJECT_ID OBJECT_TYPE
    CREATED   LAST_DDL_ TIMESTAMP           STATUS  T G S  NAMESPACE
    EDITION_NAME
    SYS
    ICOL$
                                           20              2 TABLE
    OWNER
    OBJECT_NAME
    SUBOBJECT_NAME                  OBJECT_ID DATA_OBJECT_ID OBJECT_TYPE
    CREATED   LAST_DDL_ TIMESTAMP           STATUS  T G S  NAMESPACE
    EDITION_NAME
    09-DEC-10 09-DEC-10 2010-12-09:03:39:59 VALID   N N N          1
    Commit complete.
    SQL> select * from t1;
    no rows selected
    SQL>
    -- ok, try it without the linebreak
    SQL> host more ins1.sql
    insert into t1
    (select * from dba_objects
    where rownum = 1);
    commit;
    SQL> @ins1
    1 row created.
    Commit complete.
    SQL>

  • Error while executing procedure : ORA-06550 and PLS-00103

    Hi I have created the Stored Procedure as,
    CREATE OR REPLACE PACKAGE BODY APPS.TMP_IMPORT_ITEMS_PKG AS
      PROCEDURE LOAD_INTERFACE_TABLE(organization_code IN VARCHAR2, errbuf OUT VARCHAR2, retcode OUT NUMBER) IS
      org_code varchar2(3);
      BEGIN
        org_code:= organization_code;
        DBMS_OUTPUT.PUT_LINE('Organization Code is...' || org_code);
      END LOAD_TABLE;
    END TMP_IMPORT_ITEMS_PKG;
    And here is the code what i am trying to execute:
    DECLARE
      V_ERRBUF VARCHAR2(1000);
      V_RETCODE NUMBER;
    BEGIN
      EXEC TMP_IMPORT_ITEMS_PKG.LOAD_INTERFACE_TABLE('x1', V_ERRBUF, V_RETCODE);
    END;
    when i run the above code i am getting the following error:
    ORA-06550: line 5, column 10:
    PLS-00103: Encountered the symbol "TMP_IMPORT_ITEMS_PKG" when expecting one of the following:
    := . ( @ % ;
    The symbol ":=" was substituted for "TMP_IMPORT_ITEMS_PKG" to continue.
    Can any body tell me what's wrong with the above code
    Thanks in Advance,
    Kumar K
    Edited by: user2054206 on Dec 17, 2008 9:09 PM
    Edited by: user2054206 on Dec 17, 2008 9:27 PM

    BEGIN
    EXEC TMP_IMPORT_ITEMS_PKG.LOAD_INTERFACE_TABLE('x1', '', null);
    END;why are you executing it like that , it should be
    EXEC TMP_IMPORT_ITEMS_PKG.LOAD_INTERFACE_TABLE('x1', '', null);or as Prabhakar said in PL/SQL
    BEGIN
         TMP_IMPORT_ITEMS_PKG.LOAD_INTERFACE_TABLE('x1', '', null);
    END;Edited by: Rajneesh Kumar on Dec 18, 2008 11:08 AM

  • Error while executing procedure having IN and OUT parameters

    Hi,
    I will be really gratified if someone can please help me in solving with the following problem.
    I have one procedure given below
    create or replace procedure abcd1april (
                                            nd_in                IN varchar2,
                                            sal_in           IN number,
                                            success_out      OUT number,
                                            error_code_out OUT number,
                                            error_msg_out      OUT varchar2
    AS
    old_sal number;
    cursor H7 is select SERV_ACC_LINK_CODE_N from pair_bkup where PAIRE_STATUS in (3,4) and nd=nd_in;
    BEGIN
         old_sal:=0;
         open H7;
         fetch H7 into old_sal;
         close H7;
         if old_sal=0
         then
              success_out:=0;
              error_code_out:=01;
              error_msg_out:='Check this error';
         else
                   update pair_bkup set SERV_ACC_LINK_CODE_N=sal_in where nd=nd_in and SERV_ACC_LINK_CODE_N=old_sal;
         success_out:=1;
              error_code_out:=00;
              error_msg_out:='NO ERROR IS THERE';
         end if;
    EXCEPTION
              WHEN OTHERS
              THEN
              success_out:=0;
              error_code_out:=SQLCODE;
              --error_msg_out:=SQLERRM;                                                                                                                 
    END;     
    Now when i try to execute this script it throws an error given below:-
    ORA-06502: PL/SQL: numeric or value error: character string buffer too small
    ORA-06512: at "TELMATEST.ABCD1APRIL", line 39
    ORA-06502: PL/SQL: numeric or value error: character string buffer too small
    Now i am executing this procedure by following script:-
    DECLARE
              nd_in_n VARCHAR2(10);
              sal_in_n NUMBER;
              success_out_n NUMBER;
              error_code_out_n NUMBER;
              error_message_out_n VARCHAR2(10);
    BEGIN
         nd_in_n := '';
         sal_in_n:= 0;
         success_out_n := 0;
         error_code_out_n:= '';
         error_message_out_n := '';
    abcd1april('02022',3,success_out_n,error_code_out_n,error_message_out_n);
    insert into errormsgs values(&error_code_v,'error_message_v');
    END ;
    Now please help me in above case.
    Regards
    Gursimran Singh

    Gursimran,
    The error message tells you what you need to know -
    ORA-06502: PL/SQL: numeric or value error: character string buffer too small.You're calling the procedure and supplying
    error_message_out_n VARCHAR2(10);In each case, the message 'Check this error', 'NO ERROR IS THERE' or SQLERRM is longer than 10 characters - therefore the error.
    Try it with
    error_message_out_n VARCHAR2(1000);Cheers,
    Bryan.

  • Error while executing procedure from the web

    Hi,
    <p>
    I am developing some procedures that I want to execute from an html form. The problem is that when I am trying to execute it in SQL Developer I got the following error:<br>
    Connecting to the database oracle.<br>
    ORA-06502: PL/SQL: numeric or value error<br>
    ORA-06512: at "SYS.OWA_UTIL", line 325<br>
    ORA-06512: at "SYS.OWA_UTIL", line 366<br>
    ORA-06512: at "MMARTA.INSERTPROJECT", line 3<br>
    ORA-06512: at line 10<br>
    Process exited.<br>
    </p>
    <p>
    The procedure is the following:<br>
    create or replace <br>
    procedure insertproject(jnum j.j#%type, jname j.jname%type, city j.city%type) as <br>
    begin <br>
    owa_util.mime_header('text/plain');<br>
    if jpak.insertj(jnum,jname,city)<0 then<br>
    htp.print('The jnum already exists in the database!');<br>
    else <br>
    htp.print('Insert successfull!');<br>
    end if;<br>
    end;<br>
    <br>
    and the function has the following code:
    <br>
    function insertj(jnum j.j#%type, jname j.jname%type, city j.city%type)<br>
    return number is<br>
    x number;<br>
    begin<br>
    Select count(*) into x From J<br>
    Where J#=jnum;<br>
    if x=0 then<br>
    insert into J values(jnum,jname,city);<br>
    commit;<br>
    return 0;<br>
    end if;<br>
    return -1;<br>
    END insertj;<br>
    </p>
    <p>
    Does anyone have any idea why I get this error?
    </p>
    <p>
    Thanks!
    <p/>

    Hi,
    <p>
    The function has the following parameters:<br>
    function insertj(jnum j.j#%type, jname j.jname%type, city j.city%type)<br>
    where j# is varchar2(5), jname is varchar2(35) and city is varchar2(35)<br>.
    I was trying to insert the following values:<br>
    j#:='J11', jname:='JobName' and city:='Paris'.<br>
    </p>
    <p>
    The procedure just calls this function with the same parameters. It is very strange because it is hard to see what the problem is. The line 10 is return 0 in the function where I believe the error comes from. It starts in the procedure and then goes in the function body, if I am interpreting this right.
    </p>
    <p>
    Any idea?
    </p>
    Thanks!

Maybe you are looking for