Error message: 'ORA-00926:missing VALUES keyword

Hi Friends,
I am trying to update a database table in SAPR3.ORACLE database from CRM via an ABAP program.
I did required BDCON setup. But I get the error message : ORA-00926:missing VALUES keyword.
Looking forward your help to solve this problem.  Anyone came across such issue?
below is my code and BDCON setup
DB Connection      DB_CONNECT
DBMS               ORA
User Name          test_db
DB password                                      
Conn. info         sapde9db00a
Connection Limit   10
Optimum Conns      5
TABLES: BUT000.
DATA: EXC_REF TYPE REF TO CX_SY_NATIVE_SQL_ERROR,
ERROR_TEXT TYPE STRING.
DATA W_PARTNER TYPE BUT000-PARTNER.
TYPES: BEGIN OF TYP_PARTNER,
       MANDT TYPE SY-MANDT,
       PARTNER_NUMBER TYPE BU_PARTNER,
      END OF TYP_PARTNER.
DATA: ZZ_TEST TYPE STANDARD TABLE OF TYP_PARTNER WITH HEADER LINE.
DATA: DBTYPE TYPE DBCON_DBMS,
      DBCUR TYPE CURSOR,
T_BUT000 LIKE BUT000 OCCURS 0 WITH HEADER LINE.
SELECT * INTO CORRESPONDING FIELDS OF TABLE T_BUT000 FROM BUT000 ORDER BY PRIMARY KEY.
LOOP AT T_BUT000.
  ZZ_TEST-MANDT = SY-MANDT.
  ZZ_TEST-PARTNER_NUMBER = T_BUT000-PARTNER.
  APPEND ZZ_TEST.
ENDLOOP.
TRY.
    EXEC SQL.
      SET CONNECTION  'DB_CONNECT'
    ENDEXEC.
    EXEC SQL.
      CONNECT TO  'DB_CONNECT'
    ENDEXEC.
   LOOP AT ZZ_TEST.
    EXEC SQL.
      INSERT INTO SAPR3."ZZTEST_DB":
      (mandt, partner_number) VALUES('220', '0000000253');
    ENDEXEC.
    IF SY-SUBRC <> 0.
    ENDIF.
   ENDLOOP.
  CATCH CX_SY_NATIVE_SQL_ERROR INTO EXC_REF.
    ERROR_TEXT = EXC_REF->GET_TEXT( ).
    MESSAGE ERROR_TEXT TYPE 'I'.
ENDTRY.
EXEC SQL.
  SET CONNECTION DEFAULT
ENDEXEC.
Thanks in advance for you help,
regards
DJ

Hi,
See my complete code to update values using internal table
TABLES: BUT000.
DATA: EXC_REF TYPE REF TO CX_SY_NATIVE_SQL_ERROR,
ERROR_TEXT TYPE STRING.
DATA W_PARTNER TYPE BUT000-PARTNER.
TYPES: BEGIN OF TYP_PARTNER,
       MANDT TYPE SY-MANDT,
       PARTNER_NUMBER TYPE BU_PARTNER,
      END OF TYP_PARTNER.
DATA: ZZ_TEST TYPE STANDARD TABLE OF TYP_PARTNER WITH HEADER LINE.
DATA: DBTYPE TYPE DBCON_DBMS,
      DBCUR TYPE CURSOR,
T_BUT000 LIKE BUT000 OCCURS 0 WITH HEADER LINE.
SELECT * INTO CORRESPONDING FIELDS OF TABLE T_BUT000 FROM BUT000 ORDER BY PRIMARY KEY.
LOOP AT T_BUT000.
  ZZ_TEST-MANDT = SY-MANDT.
  ZZ_TEST-PARTNER_NUMBER = T_BUT000-PARTNER.
  APPEND ZZ_TEST.
ENDLOOP.
TRY.
    EXEC SQL.
      SET CONNECTION  'DB_CONNECT'
    ENDEXEC.
    EXEC SQL.
      CONNECT TO  'DB_CONNECT'
    ENDEXEC.
    LOOP AT ZZ_TEST.
      EXEC SQL.
        INSERT INTO SAPR3.ZZTEST_DB (mandt, partner_number) VALUES (ZZ_TEST-MANDT, ZZ_TEST-PARTNER_NUMBER);
      ENDEXEC.
      IF SY-SUBRC <> 0.
      ENDIF.
    ENDLOOP.
  CATCH CX_SY_NATIVE_SQL_ERROR INTO EXC_REF.
    ERROR_TEXT = EXC_REF->GET_TEXT( ).
    MESSAGE ERROR_TEXT TYPE 'I'.
ENDTRY.
EXEC SQL.
  SET CONNECTION DEFAULT
ENDEXEC.
Edited by: Mourougane DJEARAMANE on Mar 31, 2008 2:11 PM

Similar Messages

  • ORA-00926: missing VALUES keyword

    Hello,
    when i try to start an insert statement at a remote database I m getting the following error message:
    ORA-00926: missing VALUES keyword
    the statement is INSERT INTO <TABLE> VALUES(100,12,01-Dec-10,'ENTRY')
    the table has the following form: COL1 (NUMC), COL2(NUMC, COL3(DATE) COl4 (VARCHAR255)
    i tried to use several formats but i m not getting any solution for inserting. The user i m using has the privileges for inserting.
    has anyone a solution what will be the error?
    Thanks

    Hi,
    Try to use the following format instead:
    INSERT INTO <table_name> (<field1>,<field2>,...) VALUES (<value1>,<value2>,...);
    Br,
    Javier

  • ORA-00926: missing VALUES keyword | when importing data

    Hello,
    I get the missing VALUES keyword error when importing data from an Excel spreadsheet. Until yesterday everything worked fine. Today I'm having this problem because OSD does not build the DML correctly. See:
    insert into WFT_GROEPEN (CODE,OMSCHRIJVING,NIVEAU,INDIC_LAAGSTE_NIVEAU) VALUES('1.1.1.1','- Value of business acquired',4,'N');
    Working with OSD 1.2.1 on Windows XP.
    Anyone got a clue?
    Kind regards,
    Dennis

    Hi,
    Thanks for your reply. I found the problem myself. I got 2 columns in the Excel sheet with the same name. Then OSD creates an insert statement like following which gives the 'missing VALUES keyword' error.
    insert into WFT_GROEPEN (CODE,OMSCHRIJVING,NIVEAU,INDIC_LAAGSTE_NIVEAU)NIVEAU) VALUES('3','Toelichting balans beleggingen',NULL,'N',NULL);
    Regards,
    Dennis

  • Load Utility Fails - ORA-00926: missing VALUES keyword

    Hello,
    I am unable to successfully use the Data Load Utility. The wizard's "Column Mapping" stage (i.e. just before pressing "Load Data" button) shows a preview of all the data, which appears to be okay.
    When I attempt the load, I get the error message shown in the title of this post, for each record (i.e. they all fail). It looks like a syntax error - is the wizard generating incorrect syntax? Can I view the wizard's script somewhere to diagnose this?
    Thanks in advance

    Hi
    Could you please tell how you are trying to upload data?
    Also confirm if you took care of the following:
    1. There are no data type limitations for for loading from XML files. However, when loading from spreadsheets (through copy and paste) or from text files, only the following data types are supported: NUMBER, DATE, VARCHAR2, CLOB, BINARY_FLOAT, and BINARY_DOUBLE.
    2. Loading a Text File->For files smaller than 30KB, you can copy and paste tab-delimited data directly into the Load Data Wizard. For files larger than 30KB, you must upload a separate file.
    3. Loading an XML Document->Oracle Application Express supports XML documents in Oracle's canonical XML format, where each element represents a column value, each element is named after the column, all elements that are part of the same row are children of a <ROW> element, and all <ROW> elements are children of a <ROWSET> element.
    4. Loading Spreadsheet Data->To copy and paste text, the spreadsheet file must be less than 30KB. For files larger than 30KB, you can import the file in a delimited format (such as comma-delimited (.csv) or tab-delimited), upload the file, and then load the data into a new or existing table.
    -Priya

  • Error message ORA-0097  missing right parenthesis

    Dear all;
    Please what is wrong with this particular code because I keep getting the error message ORA-0097: missing right parenthesis
    pl/sql: sql statement ignored. Thank you
    spectification of package
    create or replace package NEW_INFORMATION is
    function get_total return number;
    procedure daily_tasks;
    function display_type_id return varchar2;
    end NEW_INFORMATION ;body of package
    create or replace package body NEW_INFORMATION  is
    function get_total return number is
    oput number(10);
    begin
      select count(unique (p1.p_id)) into oput
      from table_one p1 where p1.p_id in
        ('CYY','AIR, '');
    return oput;
    end;
    function display_type_id return varchar2 is
    used_cells varchar2(30);
    begin
    select unique(p1.p_id) as cells into used_cells
      from part p1 where p1.pl_id in
      ('CYY','AIR', '');
    return used_cells;
    end;
    procedure daily_tasks is
    name_id varchar2(20);
    temp_num number(6,2);
    production_daystotal number(6,2);
    result_first_cc_A number (7,2);
    begin
    name_id := display_type_id ();  -- used to call the function
    temp_num :=  get_total();  --used to call the function
    select name_id, trunc(first_partcal_A.initial_cc_A / temp_num over())  +  
    case
    when mod(first_partcal_A.initial_cc_A,temp_num over()) >= row_number() over(order by name_id) then 1
    else 0
    end
    from
    select round(total_as.t_as/prodmonths.proddaysinmonth) as inital_cc_A
    from
    (select count(*) as t_as from table_one p1 where p1.a_code = 'A') total_as,
    (select count(*) as proddaysinmonth  from
    (select mon_dt + level - 1 as dt,  to_char(mon_dt + level - 1, 'DY', 'NLS_DATE_LANGUAGE = ENGLISH') as dy_days from
    ((select trunc(to_date(m || '/' || a, 'MM/YYYY'), 'MM') as mon_dt
                          from
                          (select to_char(sysdate, 'MM') as m,
                                  to_char(sysdate, 'YYYY') as a  from dual)))
    connect by mon_dt + level - 1 <= last_day(mon_dt))
    where dy_days in ('MON', 'TUE', 'WED', 'THU'))prodmonths) first_partcal_A;
    order by name_id;
    end daily_tasks;
    end NEW_INFORMATION

    Pls try this
    CREATE OR REPLACE PACKAGE BODY new_information
    IS
       FUNCTION get_total
          RETURN NUMBER
       IS
          oput   NUMBER (10);
       BEGIN
          SELECT COUNT (UNIQUE (p1.p_id))
            INTO oput
            FROM table_one p1
           WHERE p1.p_id IN ('CYY', 'AIR', '');
          RETURN oput;
       END;
       FUNCTION display_type_id
          RETURN VARCHAR2
       IS
          used_cells   VARCHAR2 (30);
       BEGIN
          SELECT UNIQUE (p1.p_id) AS cells
                   INTO used_cells
                   FROM part p1
                  WHERE p1.pl_id IN ('CYY', 'AIR', '');
          RETURN used_cells;
       END;
       PROCEDURE daily_tasks
       IS
          name_id                VARCHAR2 (20);
          temp_num               NUMBER (6, 2);
          production_daystotal   NUMBER (6, 2);
          result_first_cc_a      NUMBER (7, 2);
       BEGIN
          name_id := display_type_id ();             -- used to call the function
          temp_num := get_total ();                   --used to call the function
          SELECT   name_id,
                     TRUNC (first_partcal_a.initial_cc_a / temp_num /*over()*/)
                   + CASE
                        WHEN MOD (first_partcal_a.initial_cc_a, temp_num) >=
                                              ROW_NUMBER () OVER (ORDER BY name_id)
                           THEN 1
                        ELSE 0
                     END
              INTO name_id,
                   temp_num
              FROM (SELECT ROUND (total_as.t_as / prodmonths.proddaysinmonth
                                 ) AS inital_cc_a
                      FROM (SELECT COUNT (*) AS t_as
                              FROM table_one p1
                             WHERE p1.a_code = 'A') total_as,
                           (SELECT COUNT (*) AS proddaysinmonth
                              FROM (SELECT     mon_dt + LEVEL - 1 AS dt,
                                               TO_CHAR
                                                  (mon_dt + LEVEL - 1,
                                                   'DY',
                                                   'NLS_DATE_LANGUAGE = ENGLISH'
                                                  ) AS dy_days
                                          FROM ((SELECT TRUNC
                                                           (TO_DATE (m || '/' || a,
                                                                     'MM/YYYY'
                                                            'MM'
                                                           ) AS mon_dt
                                                   FROM (SELECT TO_CHAR
                                                                   (SYSDATE,
                                                                    'MM'
                                                                   ) AS m,
                                                                TO_CHAR
                                                                   (SYSDATE,
                                                                    'YYYY'
                                                                   ) AS a
                                                           FROM DUAL)))
                                    CONNECT BY mon_dt + LEVEL - 1 <=
                                                                 LAST_DAY (mon_dt))
                             WHERE dy_days IN ('MON', 'TUE', 'WED', 'THU')) prodmonths) first_partcal_a
          ORDER BY name_id;
       END daily_tasks;
    END new_information;i have added INTO clause
    and removed over() after MOD and TRUNC

  • ERROR OGG-00868 Error code 1291, error message: ORA-01291: missing logfile

    OGG Version 12.1.2.1.0 OGGCORE_12.1.2.1.
    DB : 11.2.0.4.3
    I am getting below error.
    2014-12-31 09:53:09  ERROR   OGG-00868  Error code 1291, error message: ORA-01291: missing logfile
      (Missing Log File <unknown>. Read Position SCN: 2585.802983323 (11103293443483)).
    Our solution uses ADG and OGG
    We have source and target where ADG was setup . We later broke ADG setup and made Oracle DB's in source and target into standalone.
    As part of our solution during our deployment window ,we would break ADG i.e we would make both the source and target as independent DB’s with PRIMARY Read /Write mode.
    -Take Guaranteed restore point on Source DB so that we can flash back at later stage(so of now we have not executed flash back command)
    -Once ADG config is disabled we will start the OGG extract which is already configured before =We are at this stage where we are hit with errors and extract is not starting .

    Hi ,
    The error shows it is waiting for the Logfile. The Integrated extract mainly needs of the availability of two things.
    1. Archivelogs.
    2. Trail Files.
    Both should be retained to the needed / required level.
    Please execute the below query and check the status of the Extract / Capture process.
    The below query displays the information of each capture process in a database.,
    COLUMN CAPTURE_NAME HEADING 'Capture|Name' FORMAT A7
    COLUMN PROCESS_NAME HEADING 'Capture|Process|Number' FORMAT A7
    COLUMN SID HEADING 'Session|ID' FORMAT 9999
    COLUMN SERIAL# HEADING 'Session|Serial|Number' FORMAT 9999
    COLUMN STATE HEADING 'State' FORMAT A20
    COLUMN TOTAL_MESSAGES_CAPTURED HEADING 'Redo|Entries|Evaluated|In Detail' FORMAT 9999999
    COLUMN TOTAL_MESSAGES_ENQUEUED HEADING 'Total|LCRs|Enqueued' FORMAT 9999999999
    SELECT c.CAPTURE_NAME,
           SUBSTR(s.PROGRAM,INSTR(s.PROGRAM,'(')+1,4) PROCESS_NAME,
           c.SID,
           c.SERIAL#,
           c.STATE,
           c.TOTAL_MESSAGES_CAPTURED,
           c.TOTAL_MESSAGES_ENQUEUED
      FROM V$STREAMS_CAPTURE c, V$SESSION s
      WHERE c.SID = s.SID AND
            c.SERIAL# = s.SERIAL#;
    Also run this query to check, if the capture is waiting for which logfile.,
    COLUMN CONSUMER_NAME HEADING 'Capture|Process|Name' FORMAT A15
    COLUMN SOURCE_DATABASE HEADING 'Source|Database' FORMAT A10
    COLUMN SEQUENCE# HEADING 'Sequence|Number' FORMAT 99999
    COLUMN NAME HEADING 'Required|Archived Redo Log|File Name' FORMAT A40
    SELECT r.CONSUMER_NAME,
           r.SOURCE_DATABASE,
           r.SEQUENCE#,
           r.NAME
      FROM DBA_REGISTERED_ARCHIVED_LOG r, DBA_CAPTURE c
      WHERE r.CONSUMER_NAME =  c.CAPTURE_NAME AND
            r.NEXT_SCN      >= c.REQUIRED_CHECKPOINT_SCN;
    The above query clearly shows for which logfile the Extract / Capture process is waiting. Check if that logfile is available in your system.
    Regards,
    Veera

  • Error message: ORA-00821: Specified value of sga_target 4M is too small

    Dear all
    My database instance is down,when I am trying to start, it throw any error:
    ORA-00821: Specified value of sga_target 4M is too small, needs to be at least 28M
    The problems started when erroneous altered sga_target to some values without specifying the unit.
    My question is, how can I resolve this issue while the database instance is down? I am using spfile
    I tried to start the instance with pfile (startup pfile='D:\oracle\product\10.2.0\admin\orcl\pfile\init.ora') it throw errors:
    LRM-00109: could not open parameter file 'D:\oracle\product\10.2.0\admin\orcl\pfile\init.ora'
    ORA-01078: failure in processing system parameters
    Please any one to help me
    Regards
    Sadock

    Hi,
    What you can do in this case and you don't have a good pfile, you can do the following:
    1. locate the spfile, normally in the $ORACLE_HOME/dbs directory
    2. Make a copy from the spfile to be sure will not be damaged.
    3. Do on unix prompt: strings -a <spfile> > newpfile.ora
    4. Check with an editor the newpfile.ora and edit. The pfile will contain all the settings and you should change the SGA_TARGET value to a size of 400M or higher. Smaller values can be done but are not advisable at 10GR2 or higher.
    5. Try to startup the database using the updated newpfile.ora.
    Hope this will solve your issue.
    Regards, Gerwin

  • Error ORA-00928: missing SELECT keyword

    Dear All,
    I have created package and also create function in it return me error..
    ORA-00928: missing SELECT keyword..
    Package Specification
    CREATE OR REPLACE PACKAGE PERSONLIZATION_NEW AS
    FUNCTION PO_ITEM_BRANCH (ITEM_ID NUMBER, BRANCH_CODE VARCHAR2)
    RETURN NUMBER;
    END PERSONLIZATION_NEW;
    Package body.
    CREATE OR REPLACE PACKAGE BODY PERSONLIZATION_NEW AS
    ITEM_ID NUMBER;
    BRANCH_CODE NUMBER;
    FUNCTION PO_ITEM_BRANCH (ITEM_ID NUMBER, BRANCH_CODE VARCHAR2)
    RETURN NUMBER IS RESULT NUMBER;
    FUNCTION PO_ITEM_BRANCH (ITEM_ID NUMBER, BRANCH_CODE VARCHAR2)
    RETURN NUMBER IS
    RESULT NUMBER;
    BEGIN
    SELECT
    count(a.asset_number) into result
    FROM
    SELECT
    c.CATEGORY_ID,
    a.ASSET_NUMBER
    FROM
    FA_ADDITIONS A
    ,FA_CATEGORIES_VL C
    ,FA_BOOKS B
    ,FA_LOCATIONS FL
    ,FA_DISTRIBUTION_HISTORY DH
    ,FA_TRANSACTION_HEADERS TH
    WHERE
    A.ASSET_CATEGORY_ID=C.CATEGORY_ID
    AND A.ASSET_ID=B.ASSET_ID
    AND A.ASSET_ID=TH.ASSET_ID
    AND TH.TRANSACTION_TYPE_CODE='ADDITION'
    AND B.TRANSACTION_HEADER_ID_IN=TH.TRANSACTION_HEADER_ID
    AND B.ASSET_ID=TH.ASSET_ID
    AND A.ASSET_ID=DH.ASSET_ID
    AND DH.LOCATION_ID=FL.LOCATION_ID
    AND TH.TRANSACTION_TYPE_CODE='ADDITION'
    --AND  FL.SEGMENT4 = 'Shalimar Campus Lahore'
    AND TH.TRANSACTION_TYPE_CODE <> 'FULL RETIREMENT'
    -- AND FL.SEGMENT4 = (SELECT flex_value FROM fnd_flex_values WHERE ATTRIBUTE1 = '04010303')
    AND A.ASSET_CATEGORY_ID IN (
    SELECT
    msi.asset_category_id
    FROM
    po_requisition_lines_all b,
    mtl_system_items_b msi
    WHERE
    b.ITEM_ID = msi.INVENTORY_ITEM_ID
    AND msi.inventory_item_id(+) = B.item_id
    AND msi.organization_id(+) = B.destination_organization_id
    AND b.item_id = ITEM_ID
    AND FL.SEGMENT4 = (
    SELECT
    (SELECT FLEX_VALUE FROM fnd_flex_values WHERE ATTRIBUTE1 = B.ATTRIBUTE2) BRANCH
    FROM
    po_requisition_lines_all b,
    mtl_system_items_b msi
    WHERE
    b.ITEM_ID = msi.INVENTORY_ITEM_ID
    AND msi.inventory_item_id(+) = B.item_id
    AND msi.organization_id(+) = B.destination_organization_id
    AND b.ATTRIBUTE2 = BRANCH_CODE
    ) A
    RETURN(RESULT);
    END;
    --END PERSONLIZATION_NEW;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

    Hi,
    user10941925 wrote:
    Dear All,
    I have created package and also create function in it return me error..
    ORA-00928: missing SELECT keyword..Whenever you have a problem concerning an error message, post the complete error message, including line numbers.
    Make sure it's clear what causes the error. In this case, is it compiling the package spec, compiling the package body, or calling the function?
    Package Specification
    CREATE OR REPLACE PACKAGE PERSONLIZATION_NEW AS
    FUNCTION PO_ITEM_BRANCH (ITEM_ID NUMBER, BRANCH_CODE VARCHAR2)
    RETURN NUMBER;
    END PERSONLIZATION_NEW;Please format your code to make it readable.
    Whenever you post formatted text (including, but not limited to, code) on this site, type these 6 characters:
    \(small letters only, inside curly brackets) before and after each section of formatted text, to preserve spacing.
    Package body.
    CREATE OR REPLACE PACKAGE BODY PERSONLIZATION_NEW AS
    ITEM_ID NUMBER;
    BRANCH_CODE NUMBER;These global variables aren't being used anywhere, but they're not causing the error.    
    FUNCTION PO_ITEM_BRANCH (ITEM_ID NUMBER, BRANCH_CODE VARCHAR2)
    RETURN NUMBER IS RESULT NUMBER;
    You've got two copies of the function signature here.  Remove one of them.
    >
    FUNCTION PO_ITEM_BRANCH (ITEM_ID NUMBER, BRANCH_CODE VARCHAR2)
    RETURN NUMBER IS
    RESULT NUMBER;
    BEGIN
    SELECT
    count(a.asset_number) into result
    FROM
    SELECT
    c.CATEGORY_ID,
    a.ASSET_NUMBER
    FROM
    FA_ADDITIONS A
    ,FA_CATEGORIES_VL C
    ,FA_BOOKS B
    ,FA_LOCATIONS FL
    ,FA_DISTRIBUTION_HISTORY DH
    ,FA_TRANSACTION_HEADERS TH
    WHERE
    A.ASSET_CATEGORY_ID=C.CATEGORY_ID
    AND A.ASSET_ID=B.ASSET_ID
    AND A.ASSET_ID=TH.ASSET_ID
    AND TH.TRANSACTION_TYPE_CODE='ADDITION'
    AND B.TRANSACTION_HEADER_ID_IN=TH.TRANSACTION_HEADER_ID
    AND B.ASSET_ID=TH.ASSET_ID
    AND A.ASSET_ID=DH.ASSET_ID
    AND DH.LOCATION_ID=FL.LOCATION_ID
    AND TH.TRANSACTION_TYPE_CODE='ADDITION'
    --AND  FL.SEGMENT4 = 'Shalimar Campus Lahore'
    AND TH.TRANSACTION_TYPE_CODE <> 'FULL RETIREMENT'
    -- AND FL.SEGMENT4 = (SELECT flex_value FROM fnd_flex_values WHERE ATTRIBUTE1 = '04010303')
    AND A.ASSET_CATEGORY_ID IN (
    SELECT
    msi.asset_category_id
    FROM
    po_requisition_lines_all b,
    mtl_system_items_b msi
    WHERE
    b.ITEM_ID = msi.INVENTORY_ITEM_ID
    AND msi.inventory_item_id(+) = B.item_id
    AND msi.organization_id(+) = B.destination_organization_id
    AND b.item_id = ITEM_ID
    AND FL.SEGMENT4 = (
    SELECT
    (SELECT FLEX_VALUE FROM fnd_flex_values WHERE ATTRIBUTE1 = B.ATTRIBUTE2) BRANCH
    FROM
    po_requisition_lines_all b,
    mtl_system_items_b msi
    WHERE
    b.ITEM_ID = msi.INVENTORY_ITEM_ID
    AND msi.inventory_item_id(+) = B.item_id
    AND msi.organization_id(+) = B.destination_organization_id
    AND b.ATTRIBUTE2 = BRANCH_CODE
    ) ALooks like you're missing a ; above.
    >
    RETURN(RESULT);
    END;
    --END PERSONLIZATION_NEW;The END statement for the package is commented out.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Error in MERGE statement - ORA-00969: missing ON keyword

    Hi All ,
    I am trying to write a Merge statement , but I am getting the below error .
       MERGE  INTO main_table m
                              USING  tab_1 l, tab_2 u
                              ON  (   l.col1        =  m.col1
                                       AND u.col2 = l.col2)
    When Matched then
    update........
    When not mached then
    Insert  ...... 
    But here I am using 2 tables in the USING clause . and here I am getting  this error :-
    142/17   PL/SQL: SQL Statement ignored
    143/42   PL/SQL: ORA-00969: missing ON keyword
    May I know where i am doing wrong ?

    Hi LuKKa, you are on the Portugues Forum, but we can help you, try the code mentioned below:
       MERGE  INTO main_table m
                              USING  (select l.col1, l.col2, u.col2 from tab_1 l join tab_2 u on (u.col2 = l.col2)) t
                              ON  (t.col1 =  m.col1)
    When Matched then
    update........
    When not mached then
    Insert  ......  
    Regards.

  • Error in CMP ORA-00928: missing SELECT keyword

    Hi,
    I am using WLS 8.1 and with CMP trying to insert records in oracle 8.1.
    But I am getting error as below.
    I hv not defined and finder method in the home interface except the default findByPrimaryKey().
    javax.transaction.TransactionRolledbackException: EJB Exception: : java.sql.SQLE
    xception: ORA-00928: missing SELECT keyword
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
    at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
    at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:579)
    at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1894)
    at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:109
    4)
    at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.ja
    va:2132)
    at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.jav
    a:2015)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStateme
    nt.java:2877)
    at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePrepar
    edStatement.java:608)
    at weblogic.jdbc.wrapper.PreparedStatement.executeUpdate(PreparedStateme
    nt.java:95)
    at weblogic.ejb20.manager.BaseEntityManager.executeInsertStmt(BaseEntity
    Manager.java:546)
    at weblogic.ejb20.manager.BaseEntityManager.executeDBOperations(BaseEnti
    tyManager.java:435)
    at weblogic.ejb20.internal.TxManager$TxListener.executeDBOperations(TxMa
    nager.java:596)
    at weblogic.ejb20.internal.TxManager$TxListener.executeDBOperationsDrive
    r(TxManager.java:571)
    at weblogic.ejb20.internal.TxManager$TxListener.beforeCompletion(TxManag
    er.java:731)
    at weblogic.transaction.internal.ServerSCInfo.callBeforeCompletions(Serv
    erSCInfo.java:1010)
    at weblogic.transaction.internal.ServerSCInfo.startPrePrepareAndChain(Se
    rverSCInfo.java:115)
    at weblogic.transaction.internal.ServerTransactionImpl.localPrePrepareAn
    dChain(ServerTransactionImpl.java:1142)
    at weblogic.transaction.internal.ServerTransactionImpl.globalPrePrepare(
    ServerTransactionImpl.java:1868)
    at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(Se
    rverTransactionImpl.java:250)
    at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTran
    sactionImpl.java:221)
    at weblogic.ejb20.internal.BaseEJBHome.postHomeInvoke(BaseEJBHome.java:3
    93)
    at weblogic.ejb20.internal.EntityEJBHome.create(EntityEJBHome.java:268)
    at gateway.GatewayUpdate_f6dwyt_HomeImpl.create(GatewayUpdate_f6dwyt_Hom
    eImpl.java:84)
    at gateway.LogBean.msg_update(LogBean.java:137)
    at gateway.LogBean.onMessage(LogBean.java:57)
    at weblogic.ejb20.internal.MDListener.execute(MDListener.java:382)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
    In a nushell I am not using any finder methods in my client program.Still I am
    getting this error.
    Pl.advise.
    Regards,
    Ram

    Hi,
    Please do not post the same question in multiple newsgroups.
    Please see my reply in the other group.
    thanks

  • Error Message - ORA-06502: PL/SQL: numeric or value error: Bulk Bind: Trunc

    This is driving me nuts!
    I am getting this error from OWB during a mapping process.
    I have checked the input data and it looks fine.
    The run time audit browser just lists all of the steps but does not make it clear which one failed. Is it the last one which is shown (does not have HIDE as selection link.)
    I also tried to determine which row was causing the problem and followed the instructions at http://www.nicholasgoodman.com/bt/blog/2005/07/, but no row_id was recorded in the views. In actual fact there wasn't very much audit info other than that the mapping ran and was complete (even though it failed).
    In the error message section it has, in order
    Map Step - blank
    Rowkey - 35204435256
    Severity - X
    Error Message - ORA-06502: PL/SQL: numeric or value error: Bulk Bind: Truncated Bind
    Object Name - N/A
    Object Column - *
    From the PL/SQL error I thought it may be trying to insert into a data field that was too small, but all of the columns that are used are full of data of length shorter than all of the target tables.
    I have even started running the cursors in the generated PLSQL but I don't get the error by doing this.
    Thanks in advance for any tips at all.

    Thanks for the response.
    I managed to work it out and it had to do with the selection criteria of one of the filters.
    For anyone else facing this error, check to see if any of the rows being inserted has the same key/identifier as some existing in the target table. If so add an extra condition to the where clause.
    This worked for me.

  • ORA-02000: missing UNUSED keyword

    Hi,
    I have a table tab_xyz
      CREATE TABLE tab_xyz(
        col1 number,
        col2 varchar2(10)
      ORGANIZATION EXTERNAL
        TYPE ORACLE_LOADER DEFAULT DIRECTORY "MF_DIR" ACCESS PARAMETERS ( records
        delimited BY newline badfile MF_DIR:'xyz.csv.bad' logfile MF_DIR:'
        xyz.csv.log' discardfile MF_DIR:'xyz.csv.dsc' fields terminated BY
        ',' ) LOCATION ( 'xyz.csv' )
      I'm trying to add reject limit to 100 but getting the below error:
      ALTER TABLE tab_xyz SET REJECT_LIMIT 100;
      Error starting at line 8 in command:
      ALTER TABLE tab_xyz SET REJECT_LIMIT 100
      Error report:
      SQL Error: ORA-02000: missing UNUSED keyword
      02000. 00000 -  "missing %s keyword"
      I tried to add the UNUSED keyword.. but error again
      ALTER TABLE tab_xyz  SET UNUSED REJECT_LIMIT 100;
      Error starting at line 8 in command:
      ALTER TABLE tab_xyz UNUSED SET REJECT_LIMIT 100
      Error report:
      SQL Error: ORA-01735: invalid ALTER TABLE option
      01735. 00000 -  "invalid ALTER TABLE option"
      *Cause:   
      *Action:
      I have 2 questions:
    1. how can I set the reject limit?
    2. where can I set when(01) = '"' in the create table
    Thanks.

    Can someone please look into the below issue:
    I tried to add the load when in my create table script..
      create table tab_xyz
        col1 varchar2(10),
        col2 varchar2(10)
      ORGANIZATION EXTERNAL
        TYPE ORACLE_LOADER DEFAULT DIRECTORY "MF_DIR" ACCESS PARAMETERS (
        records delimited BY newline
        load when (01) = '"'
        badfile mf_dir:'xyz.csv.bad'
        logfile mf_dir:'xzy.csv.log'
        discardfile mf_dir:'xyz.csv.dsc'
        fields terminated BY ',' optionally enclosed BY '"' MISSING FIELD VALUES ARE NULL 
        (col1, col2)
        LOCATION ('xyz.csv' )) 
      REJECT LIMIT 100;  but got the below error:
    ORA-29913: error in executing ODCIEXTTABLEOPEN callout
    ORA-29400: data cartridge error
    KUP-00554: error encountered while parsing access parameters
    KUP-01005: syntax error: found ")": expecting one of: "colon"
    KUP-01007: at line 2 column 19
    29913. 00000 -  "error in executing %s callout"
    *Cause:    The execution of the specified callout caused an error.
    *Action:   Examine the error messages take appropriate action.Thanks.

  • Please help to solve this error message ORA-00928

    hallo, I'm sorry if it's wrong place to answer a question like that cause I'm a newbie :( .
    I have some php problem like above :
    <?php
         //connect to database
         $db = "";
         $conn = ocilogon("system", "tubes", $db);
    if ( !$conn ) {
    echo "Status : Connection Error, mangga di lereuskeun heula : " . var_dump( OCIError() );
         //input data
    $id = $_POST[id_jenis_zakat];
    $jenis = $_POST[jenis_zakat];
    $barang = $_POST[jenis_barang];
    $jumlah = $_POST[jumlah];
    $stmt = OCIParse($conn, "insert into zakat value( $id ,$jenis ,$barang ,$jumlah)");
    $s = ociexecute($stmt);
    if (!$s){
    echo "Input Data Error, mangga didangdosan heula".var_dump(ocierror());
    ?>
    but, it's show this message
    Warning: ociexecute() [function.ociexecute]: ORA-00928: missing SELECT keyword in C:\xampp\htdocs\baznas\coba.php on line 15
    bool(false) Input Data Error, mangga didangdosan heula
    so, What should I do ?

    so, What should I do ?Hm. I'm a php-noob, but it looks like a typo:
    $stmt = OCIParse($conn, "insert into zakat value( $id ,$jenis ,$barang ,$jumlah)");Try:
    $stmt = OCIParse($conn, "insert into zakat VALUES( $id ,$jenis ,$barang ,$jumlah)");If that doesn't work then perhaps the PHP forum can help you: PHP

  • Error Message - ORA-01722 Invalid Number

    Hello:
    I have the following situation. When I create an organization, a record is inserted into the following table, AGREEMENTS, and populates four fields.
    I have an update form which selects the organization from the AGREEMENTS table so the user can populate the rest of the table. In addition, on this form, there is a drop-down box which allows the user to select the name of a legal document along with the version of the document in which the user needs to select. This select list is created via an LOV joining three tables. The item name for this select list is :P6_DOCUMENT.
    The code for the LOV is:
    SELECT S.DOC_NAME||' - '|| O.VERSION_NO AS DOC, O.ORG_DOC_CURR_KEY
    FROM SUPPORTING_DOCS S,
         ORG_DOC_CURR_VER O,
         AGREEMENTS H
    WHERE
        S.DOC_TYPE = 'HISA'
    AND S.SUPPORTING_DOC_KEY = O.SUPPORTING_DOC_KEY
    AND H.ORG_KEY_LE = O.ORG_KEY
    AND O.ORG_KEY=:P6_ORG_KEY_LEWhen the user completes the form, the SUBMIT process is a PL/SQL block consisting of an UPDATE statement to update the AGREEMENTS table based on the selected organization and an INSERT statement to insert a record into the AGREEMENTS_DOC table to store the value stored in :P7_DOCUMENT.
    Ok, now here is where my problem starts.
    When I first bring up the form and I select the organization I want to update, I click the Search button to find the organization and I receive the following error message: ORA-01722 Invalid Number.
    At this point all I'm doing is a basic search. There is no insert/update or anything going on. I'm not understanding why I would be receiving this error message.
    The search is based on the database column ORG_KEY_LE whose datatype is NUMBER.
    In my application, the item assigned to ORG_KEY_LE is P6_ORG_KEY_LE.
    I have a PL/SQL block process created (On Load-Before Header) in the Page Rendering area of my page definition. The PL/SQL code that is written is:
    BEGIN
    IF :P6_SEARCH_ORG != '0' THEN
    :P6_ORG_KEY_LE := :P6_SEARCH_ORG;
    END IF;
    END;I then have an Item created, :P6_SEARCH_ORG, which is a Select List. In the LOV portion of the page for this item, I have the following:
    select ORG_KEY_LE display_value, ORG_KEY_LE return_value
    from AGREEMENTS
    order by 1The reason for using this table is because this table contains the newly created organization which needs to be updated with the remaining columns of data.
    I then have a Search button in the Button area which has the following settings:
    Button Position: Region Template Position #CHANGE#.
    Condition Type: Value of Item in Express 1 is NULL.
    Expression 1: :P6_ORG_KEY_LE.
    To troubleshoot this problem, I created two pages, one page to do the UPDATE and the second page to do the INSERT.
    The SEARCH functionality in both pages are identical.
    When I run my UPDATE page, which only involves updating the missing fields, the process works. I have my search box, I'm able to search for the organization, make my updates, and I'm good.
    When I run my INSERT page, which involves inserting the record with the assigned document, I receive the error message after I click the SEARCH button. In order to INSERT the record into this table, I first need to SELECT the organization that was UPDATED in the AGREEMENTS table (using the UPDATE page described in above paragraph). When I select the organization, the user can then assign the appropriate legal document to the organization and insert the record into the AGREEMENTS_DOC table.
    Can someone help me with this error message? I'm not sure why I am able to perform my SEARCH on a page with the UPDATE statement, not able to perform the SEARCH on the page with my INSERT statement, and not be able to perform the SEARCH on the page that combines the UPDATE and INSERT statements.
    I did some more troubleshooting and I do believe my SUBMIT process which contains the INSERT statement is the issue. I created a fourth page which doesn't have a SUBMIT process. I brought up the form, searched for my organization and the information for that organization appeared. The problem is definately with my UPDATE/INSERT process.
    The PL/SQL block for the Submit process is the following:
    BEGIN
    update
        MDD.HISA_AGREEMENTS
         set
           LAST_UPDATED_BY=V('APP_USER'),
           APPROVER_SALUTATION=:P6_APPROVER_SALUTATION,
           APPROVER_FIRST_NAME=:P6_APPROVER_FIRST_NAME,
           APPROVER_MIDDLE_INITIAL=:P6_APPROVER_MIDDLE_INITIAL,
           APPROVER_LAST_NAME=:P6_APPROVER_LAST_NAME,
           APPROVER_NAME_SUFFIX=:P6_APPROVER_NAME_SUFFIX,
           APPROVER_EMAIL_ADDR=:P6_APPROVER_EMAIL_ADDR,
           SPONSOR_EMAIL_ADDR=:P6_SPONSOR_EMAIL_ADDR,
           APPROVER_TITLE=:P6_APPROVER_TITLE
    where
          ORG_KEY_LE=:P6_ORG_KEY_LE
    INSERT INTO
        HISA_AGREEMENT_DOCS
          (HISA_AGREEMENT_DOC_KEY,
           ORG_KEY_LE,
           APPLICATION_KEY,
           STATUS,
           STATUS_DATE,
           CREATED_BY,
           ORG_DOC_CURR_KEY)
    VALUES
          (HISA_AGREEMENT_DOC_KEY_SEQ.NEXTVAL,
           :P6_ORG_KEY_LE,
           :P6_APPLICATION_KEY,
           'C',
           SYSDATE,
           V('APP_USER'),
           :P6_DOCUMENT)
    END;There is something wrong with the above statement and I do not understand what it could be. Can someone help?
    Thanks for the help.

    Hi,
    I believe you are on to something.
    The select list for item :P6_DOCUMENT appears when I first bring up the form. When I select my organization and receive the error message, I clicked on the Session in the Developer's bar. The value in item/field :P6_DOCUMENT shows %null%.
    This is the path in which my user would like to accomplish her task:
    1. Select an organization
    2. Display the information for that organization from the AGREEMENTS table
    3. Enter the data for the remaining fields in the AGREEMENTS table
    4. Select the document (:P6_DOCUMENT) from the drop-down.
    5. Click Submit
    6. Update the AGREEMENTS table with data entered in #3.
    7. Insert a record into the AGREEMENTS_DOC table with the selection from #4.
    Somehow I need the :P6_DOCUMENT field not to show the %null% during the SEARCH functionality. I think that is causing the problem.
    How do I fix this?

  • ORA-30648 - missing LOCATION keyword

    All,
    I am attempting to import via datapump an exported file (2 tables) from our lab to our production database.
    The job is submitted and fails within 15 seconds due to the following error:
    ORA-31693: Table data object "MYDATA"."TABLE1" failed to load/unload and is being skipped due to error:
    ORA-30648: missing LOCATION keyword
    This repeats for both tables selected for import.
    The tables do NOT exist under the schema where they are being imported. I attempted to use both the "Entire file" option
    and the "tables" option, selecting both tables that are in the file. Either option produces the same error.
    I granted read and write to the user of the directory so it does not appear to be a missing location relative to the directory on the server.
    Ideas?
    Gerry

    All,
    The issue IS related to having a dba_directories entry where a lower-case value is used and perhaps with a "-".
    I successfully loaded the data by migrating it to a directory that was defined as upper-case (within the data movement options of the GRID).
    The value is defined in dba_directories. Though permissions were granted to the user by enclosing double-quotes (") around the value I think there
    is a problem when using lower-case values as directory names.
    Anyway, dropping and re-creating the dba_directory entry as BACKUP-BACKUPS (formally lower-case) and re-granting resolved the issue.
    Thanks
    Gerry

Maybe you are looking for