Invalid tables during DMO procedure

In my BW migration from Oracle to SAP Hana, I have some invalid tables.
Per SAP Guide page 56:
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/308e6779-5007-3110-998a-e117ef964a47?QuickLink=index&…
(www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/308e6779-5007-3110-998a-e117ef964a47?QuickLink=index&overridelayout=true&59407987747463)
If you encounter critical or invalid tables you can do the following workaround:
Edit the file \\server\sapmnt\CIH\SUM\abap\bin\EUCLONEDEFS_ADD.LST (create if not available)
and add the affected tables here, depending the option you want to take, e.g.
/BIC/AZSPOB10300 noclone (Table seems not to exist)
TBTCS igncount (Table count will be ignored)
TST01 igncount
DBABARL nocontent (Table doesn’t exist on HANA)
REPOSRC ignlargercount (Table might change during cloning)
Now I put my invalid tables in the file mentioned above, what to do after the migration is done?
Is there a way to import them individually from Oracle to Hana, e.g. SLT? What if same error happens during SLT?
Thanks!

I believe the workaround is basically an exception list and what action you want to take for those tables and no further actions are required. Maybe Boris Rubarth can help confirm this.
RB

Similar Messages

  • ECC to HANA DB Migration, DMO error with invalid tables

    Hello Migration Experts,
    I am facing one issue during the uptime migration phase in DMO. Some of the Export and Import jobs are failing, and i see they are failing due to invalid tables. I have checked in HANA,those table are not imported in to HANA schema.
    Should i be adding those tables as described in the BW first guidance document ?
    Since the tables doesn't exist in HANA schema , what flag i should be using while adding the tables ?
    Content from the first guidance doc
    If you encounter critical or invalid tables you can do the following workaround:
    Edit the file \\server\sapmnt\CIH\SUM\abap\bin\EUCLONEDEFS_ADD.LST (create if not available)
    and add the affected tables here, depending the option you want to take, e.g.
    /BIC/AZSPOB10300   noclone (Table seems not to exist)
    TBTCS  igncount (Table count will be ignored)
    TST01  igncount
    DBABARL  nocontent (Table doesn’t exist on HANA)
    REPOSRC  ignlargercount (Table might change during cloning)
    I have also found OSS Notes 1747673 - R3load on SAP HANA: SQL error: SQL syntax error: near ";" which advises to repalce DDLHDB.TPL, but my kernel is higher than the note says, Can i still try ?
    Please advise
    Thanks in advance,
    GR
    Below are some of my error logs
    Import Job One
    R3load: START OF LOG: 20140906205313
    R3load: sccsid @(#) $Id: //bas/741_REL/src/R3ld/R3load/R3ldmain.c#11 $ SAP
    R3load: version R7.41/V1.9 [UNICODE]
    Compiled Aug 16 2014 00:13:51
    R3load -pipe -decluster -i /usr/sap/ECS/SUM/abap/migrate_ut/MIGRATE_UT_00032_IMP.CMD -datacodepage 4103 -dbcodepage 4103 -l /usr/sap/ECS/SUM/abap/migrate_ut/MIGRATE_UT_
    00032_IMP.LOG -loadprocedure fast -table_suffix ~ -k 1gegdUM50D801eqteAAv1A94
    -------------------- Start of patch information ------------------------
    patchinfo (patches.h): (0.048) R3load stops in the dependency loop while creating tasks (note 2044380)
    DBSL patchinfo (patches.h): (0.031) New DBCON syntax for HANA (note 1983389)
    --------------------- End of patch information -------------------------
    process id 17232
    (DB) INFO: connected to DB
    (DB) INFO: NewDB Kernel version 1.00.80.00.391861
                             SQLDBC 1.00.82.00.0394270
    (GSI) INFO: dbname   = "DEV/00                                                                                                                          "
    (GSI) INFO: vname    = "HDB                             "
    (GSI) INFO: hostname = "saphana                                                         "
    (GSI) INFO: sysname  = "Linux"
    (GSI) INFO: nodename = "SAPECCBOX"
    (GSI) INFO: release  = "3.0.13-0.27-default"
    (GSI) INFO: version  = "#1 SMP Wed Feb 15 13:33:49 UTC 2012 (d73692b)"
    (GSI) INFO: machine  = "x86_64"
    (RTF) ########## WARNING ###########
            Without ORDER BY PRIMARY KEY the exported data may be unusable for some databases
    (RDI) INFO: /usr/sap/ECS/SUM/abap/migrate_ut/MIGRATE_UT_00032_IMP.STR has format version 2
    (RDI) INFO: /usr/sap/ECS/SUM/abap/migrate_ut/SAPDOKCLU.STR.logical has format version 2
    (DCL) INFO: found logical cluster description for DOKCLU in /usr/sap/ECS/SUM/abap/migrate_ut/SAPDOKCLU.STR.logical
    (DB) INFO: loading data in table "DOKCLU" with mass loader for LOBs #20140906205313
    (DB) INFO: DOKCLU deleted/truncated
    ERROR exec_ddl_stmt: (DB) ERROR: DDL statement failed
    (DELETE FROM "DOKTL"WHERE   ('HY' < "ID" OR ("ID" = 'HY' AND 'SIMGISPAM_BELEGARTEN' < "OBJECT")  OR ("ID" = 'HY' AND "OBJECT" = 'SIMGISPAM_BELEGARTEN' AND 'D' <  "LANG
    U") OR ("ID" = 'HY' AND "OBJECT" = 'SIMGISPAM_BELEGARTEN' AND  "LANGU" = 'D' AND 'E' < "TYP") OR ("ID" = 'HY' AND "OBJECT" =  'SIMGISPAM_BELEGARTEN' AND "LANGU" = 'D' A
    ND "TYP" = 'E' AND '0013' <  "DOKVERSION")) AND ("ID" < 'TX' OR ("ID" = 'TX' AND "OBJECT" <  'SMP2ALR0000134') OR ("ID" = 'TX' AND "OBJECT" = 'SMP2ALR0000134' AND  "LAN
    GU" < 'E') OR ("ID" = 'TX' AND "OBJECT" = 'SMP2ALR0000134' AND  "LANGU" = 'E' AND "TYP" < 'E') OR ("ID" = 'TX' AND "OBJECT" =  'SMP2ALR0000134' AND "LANGU" = 'E' AND "T
    YP" = 'E' AND "DOKVERSION"  <= '0001')))
    DbSlExecute: rc = 103
    Another import Job
    (RTF) ########## WARNING ###########
            Without ORDER BY PRIMARY KEY the exported data may be unusable for some databases
    (RDI) INFO: /usr/sap/ECS/SUM/abap/migrate_ut/MIGRATE_UT_00063_IMP.STR has format version 2
    (RDI) INFO: /usr/sap/ECS/SUM/abap/migrate_ut/SAPTERCL3.STR.logical has format version 2
    (DCL) INFO: found logical cluster description for TERCL3 in /usr/sap/ECS/SUM/abap/migrate_ut/SAPTERCL3.STR.logical
    (DDL) ERROR: no DDL for TERCL3
    (build_ddl_stmt).
    (IMP) INFO: a failed DROP attempt is not necessarily a problem
    (DB) INFO: TERCL3 merged #20140906205315
    (DDL) ERROR: no DDL for TERMC3
    (build_ddl_stmt).
    (IMP) INFO: a failed DROP attempt is not necessarily a problem
    DbSl Trace:   prepare() of C_0002, rc=1, rcSQL=259
    DbSl Trace: PREPARE C_0002 on connection 0, rc=259
    ERROR HDBexistsRow: Prepare/Read failed (dbrc=103).
      (SQL error 259)
      error message returned by DbSl:
    invalid table name:  Could not find table/view TERMC3 in schema SAPECS: line 1 col 58 (at pos 57)
    (RDI) INFO: /usr/sap/ECS/SUM/abap/migrate_ut/SAPTERCL3.STR.logical has format version 2
    (DCL) INFO: found logical cluster description for TERCL3 in /usr/sap/ECS/SUM/abap/migrate_ut/SAPTERCL3.STR.logical
    (SQL) INFO: Searching for SQL file SQLFiles.LST
    (SQL) INFO: found SQLFiles.LST
    (SQL) INFO: Trying to open SQLFiles.LST
    (SQL) INFO: SQLFiles.LST opened
    (SQL) INFO: Searching for SQL file SSEXC.SQL
    (SQL) INFO: SSEXC.SQL not found
    (DB) INFO: TERCL3^0 dropped
    (DB) INFO: TERCL3^0 created #20140906205315
    (SQL) INFO: Searching for SQL file SDOCU.SQL
    (SQL) INFO: SDOCU.SQL not found
    ERROR exec_ddl_stmt: (DB) ERROR: DDL statement failed
    (ALTER TABLE "TERMC3" DROP CONSTRAINT "TERMC3^0")
    DbSlExecute: rc = 103
      (SQL error 259)
      error message returned by DbSl:
    invalid table name: TERMC3: line 1 col 13 (at pos 12)
    (IMP) INFO: a failed DROP attempt is not necessarily a problem
    ERROR exec_ddl_stmt: (DB) ERROR: DDL statement failed
    (ALTER TABLE "TERMC3" ADD CONSTRAINT "TERMC3^0" PRIMARY KEY ( "SPRAS", "TERM", "LINENUMBER" ) )
    DbSlExecute: rc = 103
      (SQL error 259)
      error message returned by DbSl:
    invalid table name: TERMC3: line 1 col 13 (at pos 12)
    (RDI) INFO: /usr/sap/ECS/SUM/abap/migrate_ut/SAPTERCL3.STR.logical has format version 2
    (DCL) INFO: found logical cluster description for TERCL3 in /usr/sap/ECS/SUM/abap/migrate_ut/SAPTERCL3.STR.logical
    (DDL) ERROR: no DDL for TERCL3
    (build_ddl_stmt).
    (IMP) INFO: a failed DROP attempt is not necessarily a problem
    (DB) INFO: TERCL3 unloaded #20140906205315
    (DDL) ERROR: no DDL for TERMC3
    (build_ddl_stmt).
    (IMP) INFO: a failed DROP attempt is not necessarily a problem
    ERROR exec_ddl_stmt: (DB) ERROR: DDL statement failed
    (                                           ALTER TABLE "TERMC3" enable persistent merge )
    DbSlExecute: rc = 103
      (SQL error 259)
      error message returned by DbSl:
    invalid table name: TERMC3: line 1 col 56 (at pos 55)
    (DB) INFO: disconnected from DB

    Result of that table issue fix is that migration went ahead, finished both uptime and downtime run. Now i am trying to login to SAP and system is unable to log me in as DOKTL doesnt exist at all
    But i see another table called DTELDOKTL in HANA, which same as DOKTL but no entries in it.
    I have created a message to SAP , But what should i be doing now ?
    Can i create this table in HANA ?
    Can i do export/import of table ? Table structure should be there in system already for this option i guess.
    Would i be able to replicate this table if i setup SLT ?
    Please advise
    C Mon Sep  8 11:02:30 2014
    C  *** ERROR =>   prepare() of C_0341, rc=1, rcSQL=259
    [dbsdbsql.cpp 1397]
    C  {root-id=00505680721D1EE48DE09241702FF193}_{conn-id=00000000000000000000000000000000}_0
    C  *** ERROR => PREPARE C_0341 on connection 0, rc=259
    [dbslsdb.cpp  9138]
    C  SQLCODE    : 259
    C  SQLERRTEXT : invalid table name:  Could not find table/view DOKTL in schema SAPECS: line 1 col 97 (at pos 96)
    C  sc_p=7f28f48cfac8,no=341,idc_p=7f28f3f87388,con=0,act=0,slen=254,smax=256,#vars=5,stmt=7a45980,table=DOKTL
    C  stmtid = <0/SAPMSYST                                /50334994/20140907170329>
    C  SELECT "ID" , "OBJECT" , "LANGU" , "TYP" , "DOKVERSION" , "LINE" , "DOKFORMAT" , "DOKTEXT" FROM "DOK\
    C  TL" WHERE "LANGU" = ? AND "ID" = ? AND "OBJECT" = ? AND "TYP" = ? AND "DOKVERSION" = ? ORDER BY "ID"\
    C   , "OBJECT" , "LANGU" , "TYP" , "DOKVERSION" , "LINE" ;
    B  ***LOG BZA=> table DOKTL does not exist on database R/3 [dbdbslst     3580]
    M  ThPerformDeleteThisSession: switch of statistics
    D  GuiStatus clear generate inline ts >20140908030105,195<
    M  ***LOG R47=> ThResFreeSession, delete () [thxxmode.c   1078]
    M  *** WARNING => ThrtGuiDeleteScreen: rscpGetUserLoginLang failed (128), use system language [thrtGuiHandl 469]
    Thanks,
    GR

  • Drop and recreate table in stored procedure

    Hi all
    When creating tables using Transact-SQL scripts, I have always preferred to drop the table if it exists and then create it explicitly using CREATE TABLE.  For two reasons:
    1) It does not matter if it is the first time the SP is run ie. if I create the table manually in the first instance and just use TRUNCATE TABLE it could fail if the table is deleted
    2) I have control over the data types of the table fields
    Just recently though I discovered the error that can occur when dropping and creating a table in the same batch (see link below)
    Microsoft Website
    This causes me a problem when dropping and creating tables in stored procedures, as I understand that a stored procedure is in itself a single batch?
    Can I avoid this error in a stored procedure whilst continuing to drop and create tables?  Or should I be taking a different approach?
    Coding best practice advice would be greatly appreciated.
    Thank you

    Thanks Ronen
    Please see my second post immediately before your reply.
    Given that I need to store the data output in a physical table for use in QlikView, would you suggest truncating the table each time the SP runs?  And then having a script that handles both dropping and creating the physical table, and also creating
    the SP?
    >> QlikView
    QlikView is an Israeli company, right?
    In any case I am not familiar with QlikView's application, therefore I can only give you general information, based on assumptions regarding the application, and facts regarding the SQL Server.
    >> for use in QlikView
    I assume that external application use specific database structure (table
    structure) and it is change only in rare situations (for example CMS interface might change the tables if and when a module s update/install). In this case there is no need to drop the table and recreate it and TRUNCATE is the solution.
    >> would you suggest truncating the table each time the SP runs
    I am sorry but i cant recommend on TRUNCATE a table each time you execute SP, without know the exact reason for this logic. It sound to me, at this point of time (with the information that we have), that this
    is very bad logic (application architecture). As I wrote above, basing your application on TRUNCATING the table each time mean that you have problems with multi users. Thins about 2 people that try to execute the same SP at almost the same time. Think about
    locking in the SQL Server and bad data (one truncate while the other already inserted the new data and get no rows, if there is no locking).
    But TRUNCATE is much better in this case probably then DROP and DELETE, since it is faster, and locking will be shorter (hopefully the application use the correct locking). There are other reasons why TRUNCATE is better, and other people already mentioned
    most of them, but time in this scenario might be critical.
    >> having a script that handles both dropping and creating the physical table, and also creating the SP?
    I do not undestand what is this second step. we said that you truncate the table, so why do you need to
    dropping and creating the physical table and who
    creating the SP?
    Are you meaning that the application create the tables and SP?
    There are lot of application that during installation create the database structure. is this what you mean?
      Ronen Ariely
     [Personal Site]    [Blog]    [Facebook]

  • Table(): invalid table name

    The following line is a part of a PLSQL procedure which takes object_reference as an argument.
    delete from table(deref(object_reference).nested_table) where column_value = 'something';
    Error: invalid table name. Why? How do I accomplish this correctly?

    Oracle 10.2 . Any table. It doesn't matter. Or does it?
    I'm trying to query against a nested table (also called collection) of an object to which I have a reference. This object may be in any (object) table. A more elaborate example:
    create type item_ty (
    code number
    create type items_ty as table of item_ty;
    create type box (
    items items_ty,
    member procedure put_item(code number),
    member function take_item(code number)
    create type body box is
    begin
    member procedure put_item(code number) is
    begin
    insert into table(deref(self).items) item_ty(code); -- ERROR: invalid table name
    end;
    member procedure take_item(code number) is
    begin
    delete from table(deref(self).items) where column_value = code; -- ERROR: invalid table name
    end;
    end;

  • Using temporary tables in stored procedures

    Suppose that I have created a temporary table in a stored procedure using an "EXECUTE IMMEDIATE" statement. When I compile the procedure, that table is not created yet, so the compiler says that the table does not exist.
    What is the way of using temporary tables in stored procedures?

    It's a good practice to avoid using DDL statements being executed from stored procedures. "Truncate Table" via dynamic SQL from stored procedure is a different story and is useful in DSS environments.
    But if you insist on "creating" tables using Dynamic SQL from Stored Procedures then you must also embed your DML statements in Dynamic SQL to avoid compilation errors.
    Example:
    Create or Replace Procedure Proc_TestDynamicSQL is
    Begin
    Execute Immediate 'Create table myTable as select * from user_tables' ;
    Execute Immediate 'Update myTable set table_name = ''Test'' ' ; --two single quotes before and after the string "Test"
    End;
    In this case, Oracle wouldn't care about the table references during compilation.

  • Invalid table name when pass in the table name as variable in dynamic sql

    Hi,
    I need to create a stored procedure which will return a list of data to my java application like the following.
    first, select the table name from the first table.
    For example : SELECT T_NAME FROM MDR_SMSTABLES
    second, select the data from the table which returned by first select statement
    For example : SELECT * FROM T_NAME.
    I use dynamic sql with cursor to select the data. But it returns "java.sql.SQLException: ORA-00903: invalid table name"
    I fetch the table name to varchar2. I think this might the cause it returns me the this error. But i don't know what type should i put for the table name other then varchar2.
    val2 VARCHAR2(200);
    OPEN cv FOR
    SELECT T_NAME FROM MDR_SMSTABLES WHERE T_DATE=d_dt_sent;
    FETCH cv INTO val2;
    WHILE cv%FOUND
    LOOP
    OPEN refcur FOR
    'SELECT * FROM :t WHERE MID = :m' USING val2, msg_id;
    EXIT WHEN refcur IS NOT NULL;
    FETCH cv INTO val2;
    END LOOP;
    As my stored procedure is quite long, so i just paste some of the code here. Hope the information is enough. Can anyone please help?
    Thanks

    DECLARE
    val2 VARCHAR2 (200);
    cv sys_refcursor;
    refcur sys_refcursor;
    BEGIN
    OPEN cv FOR
    SELECT table_name
    FROM user_tables
    WHERE table_name IN ('EMP', 'DEPT');
    FETCH cv INTO val2;
    WHILE cv%FOUND
    LOOP
    OPEN refcur FOR 'SELECT * FROM '||val2;
    EXIT WHEN refcur IS NOT NULL;
    FETCH cv INTO val2;
    END LOOP;
    END;

  • Update Yes/No field in access table through oracle procedure

    Hi,
    How to update Yes/No field in access table through oracle procedure. all other fields like AutoNumber, Text I can update it. Yes/No field how to update? Please, any one can help me?
    Thanks and Regards,
    Sudha.

    Sudha Teki wrote:
    select "fldPost" from tblPHd@ODBCLNKNot quite sure what you mean, but the way you select the column would indicate a case sensitive column name
    Look at this example
    SQL> create table t
      2  ("this" varchar2(10))
      3  /
    Table created.
    SQL> insert into t values ('hello')
      2  /
    1 row created.
    SQL> select *
      2    from t
      3  /
    this
    hello
    SQL> select this
      2    from t
      3  /
    select this
    ERROR at line 1:
    ORA-00904: "THIS": invalid identifier
    SQL> select "this"
      2    from t
      3  /
    this
    helloIs your column name also case sensitive?

  • How to resolve error ORA-29491: invalid table for chunking?

    Hello,
    I'm trying to implement DBMS_PARALLEL_EXECUTE to speed up a huge update I need to do. I'm stuck on a problem with the table I'm using to test my procedure. Here's a simple test that produces the same error. As best I can tell, the table I'm declaring here is missing some kind of requirement that lets DBMS_PARALLEL_EXECUTE make use of it, but the docs and searching for the error code haven't turned up any useful discussions. Please help.
    drop table owner.why_cant_i_hold;
    create table owner.why_cant_i_hold (
    things VARCHAR2 (64),
    amount INT,
    CONSTRAINT why_cant_i_pk PRIMARY KEY (things)
    insert into why_cant_i_hold values ('limes', 8);
    insert into why_cant_i_hold values ('lemons', 8);
    insert into why_cant_i_hold values ('watermelons', 5);
    insert into why_cant_i_hold values ('cats', 4);
    insert into why_cant_i_hold values ('teacups',10);
    insert into why_cant_i_hold values ('mugs', 5);
    insert into why_cant_i_hold values ('eggs', 15);
    insert into why_cant_i_hold values ('jobs', 3);
    commit;
    -- got tasks?
    COLUMN task_name FORMAT A10
    SELECT task_name,
    status
    FROM user_parallel_execute_tasks;
    --exec DBMS_PARALLEL_EXECUTE.CREATE_TASK('holding');
    exec DBMS_PARALLEL_EXECUTE.CREATE_CHUNKS_BY_ROWID('holding', 'ODDEV03', 'why_cant_i_hold', true, 3);
    It seems like a really simple case here. The output is all successful until
    "Error starting at line 25 in command:
    exec DBMS_PARALLEL_EXECUTE.CREATE_CHUNKS_BY_ROWID('holding', 'owner', 'why_cant_i_hold', true, 3);
    Error report:
    ORA-29491: invalid table for chunking
    ORA-06512: at "SYS.DBMS_PARALLEL_EXECUTE", line 27
    ORA-06512: at "SYS.DBMS_PARALLEL_EXECUTE", line 121
    ORA-06512: at line 1"

    Oh. This was an easy one, table names are never really lower-case. Changing the value in my chunking call fixed the simple test:
    exec DBMS_PARALLEL_EXECUTE.CREATE_CHUNKS_BY_ROWID('holding', 'ODDEV03', 'WHY_CANT_I_HOLD', true, 3);
    It doesn't help with why my more complicated test case isn't working, but I have details to check before I ask again.
    EDIT: lesson learned... 'invalid table' doesn't mean the database can find the table you are talking about at all. I hope that's a help.
    Edited by: user519442 on Nov 16, 2011 12:33 PM

  • Can I create a table in a procedure submitted to job queue?

    I have created a package (with AUTHID CURRENT_USER) where some of the procedures create temporary tables to facilitate processing. These procedures run just fine when executed directly from within an anonymous block at the SQL*PLUS level. However, when I submit the procedures to the job queue (via DBMS_JOB.SUBMIT), the job is submitted successfully but fails when run. Investigating the Alert Log shows an error of insufficient privilege on the CREATE TABLE command in the procedure.
    QUESTION:
    Can I create a table from a procedure running in the Job Queue? If so, then how to get it to work? Does the job run in a different environment that needs Create Table privileges set to my schema?
    Thanks for any info you can provide.
    John

    FYI: Found the problem. In the Administrator's Guide (of course not in the supplied packages documentation about DBMS_JOB) I found:
    "How Jobs Execute
    SNP background processes execute jobs. To execute a job, the process creates a session to run the job.
    When an SNP process runs a job, the job is run in the same environment in which it was submitted and with the owner's default privileges.
    When you force a job to run using the procedure DBMS_JOB.RUN, the job is run by your user process. When your user process runs a job, it is run with your default privileges only. Privileges granted to you through roles are unavailable."
    And of course we had set up our users to get all privileges through Roles, so CREATE TABLE wasn't one of my DEFAULT PRIVILEGES!
    It sure would be nice if Oracle documentation could get its act together and provide ALL information about a topic in a logical place. The effort to find the information about privileges occurred after it took me 1/2 hour to figure out why my submissions were failing - I didn't have the ';' included in the quoted string for the procedure to be called - which I only figured out after looking at the code for DBMS_JOB where it made the note to make sure you include the ';'. Wouldn't it be good to have that MINOR DETAIL mentioned in the description of DBMS_JOB.SUBMIT?????

  • "ORA-00903: invalid table name" when enqueue using a CLOB in an ADT payload

    I am attempting to enqueue into an AQ that has an ADT with a CLOB field in it. If I leave the CLOB empty, it works. As soon as I place content in it, I get the error below in the BPEL log.
    I actually get the same problem when I run the "AQ_ADT_with_CLOB_Payload" example. Please help!
    Error in the BPEL log:
    <2005-11-08 09:22:07,784> <ERROR> <default.collaxa.cube.ws> <AQ Adapter::Outbound> MessageWriter_enqueue: Could not enqueue message due to database error
    <2005-11-08 09:22:07,784> <ERROR> <default.collaxa.cube.ws> <AQ Adapter::Outbound>
    java.sql.SQLException: ORA-00903: invalid table name
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:137)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:304)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:271)
    at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:625)
    at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:181)
    at oracle.jdbc.driver.T4CPreparedStatement.execute_for_describe(T4CPreparedStatement.java:661)
    at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:951)
    at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPreparedStatement.java:693)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1057)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2901)
    at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:2942)
    at oracle.tip.adapter.aq.database.MessageWriter.doEnqueue(MessageWriter.java:530)
    at oracle.tip.adapter.aq.database.MessageWriter.enqueue(MessageWriter.java:341)
    at oracle.tip.adapter.aq.database.MessageWriter.writeMessage(MessageWriter.java:303)
    at oracle.tip.adapter.aq.outbound.AQEnqueuer.execute(AQEnqueuer.java:108)
    at oracle.tip.adapter.aq.AQInteraction.executeRunTime(AQInteraction.java:194)
    at oracle.tip.adapter.aq.AQInteraction.execute(AQInteraction.java:180)
    at oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA.executeRequestResponseOperation(WSIFOperation_JCA.java:469)
    at oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA.executeInputOnlyOperation(WSIFOperation_JCA.java:652)
    at com.collaxa.cube.ws.WSIFInvocationHandler.invoke(WSIFInvocationHandler.java:441)
    at com.collaxa.cube.ws.WSInvocationManager.invoke2(WSInvocationManager.java:310)
    at com.collaxa.cube.ws.WSInvocationManager.invoke(WSInvocationManager.java:184)
    at com.collaxa.cube.engine.ext.wmp.BPELInvokeWMP.__invoke(BPELInvokeWMP.java:601)
    at com.collaxa.cube.engine.ext.wmp.BPELInvokeWMP.__executeStatements(BPELInvokeWMP.java:316)
    at com.collaxa.cube.engine.ext.wmp.BPELActivityWMP.perform(BPELActivityWMP.java:185)
    at com.collaxa.cube.engine.CubeEngine.performActivity(CubeEngine.java:3398)
    at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1905)
    at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handleLocal(PerformMessageHandler.java:75)
    at com.collaxa.cube.engine.dispatch.DispatchHelper.handleLocalMessage(DispatchHelper.java:100)
    at com.collaxa.cube.engine.dispatch.DispatchHelper.sendMemory(DispatchHelper.java:185)
    at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:5410)
    at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:1300)
    at com.collaxa.cube.engine.delivery.DeliveryService.handleInvoke(DeliveryService.java:509)
    at com.collaxa.cube.engine.ejb.impl.CubeDeliveryBean.handleInvoke(CubeDeliveryBean.java:307)
    at ICubeDeliveryLocalBean_StatelessSessionBeanWrapper16.handleInvoke(ICubeDeliveryLocalBean_StatelessSessionBeanWrapper16.java:1796)
    at com.collaxa.cube.engine.dispatch.message.invoke.InvokeInstanceMessageHandler.handle(InvokeInstanceMessageHandler.java:37)
    at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:76)
    at com.collaxa.cube.engine.dispatch.BaseScheduledWorker.process(BaseScheduledWorker.java:70)
    at com.collaxa.cube.engine.ejb.impl.WorkerBean.onMessage(WorkerBean.java:86)
    at com.evermind.server.ejb.MessageDrivenBeanInvocation.run(MessageDrivenBeanInvocation.java:123)
    at com.evermind.server.ejb.MessageDrivenHome.onMessage(MessageDrivenHome.java:748)
    at com.evermind.server.ejb.MessageDrivenHome.run(MessageDrivenHome.java:921)
    at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
    at java.lang.Thread.run(Thread.java:534)

    OK, I figured it out myself. :)
    Turns out when I define the queue name in the AQ Adapter definition, I was specifying "<Default Schema>" as the schema name. When I changed this to my actual schema name (eg: "SCOTT"), it worked. Nice little bug there!
    The reason it broke with the example program is because I was changing the schema name before I deployed it. As I didn't have a SCOTT schema.
    So the moral of the story here is, don't use "<Default Schema>"!
    I was running on 10.1.2.0.0 [build #1787 ]. In case anyone wants to fix this.

  • Need to insert data in 2 tables thro stored procedure

    I need to create a stored procedure which will insert data in two tables. The procedure will get
    its inputs from an Oracle Developer Form which will be inserted into the tables.
    The 2 tables structure:
    1.FEES_MASTER
    Name Null? Type
    FEES_ID NOT NULL NUMBER(8) -- Primary Key
    CS_ID NOT NULL NUMBER(8) -- Class Student ID; An enrolled student
    REC_DATE NOT NULL DATE -- Fees receipt date
    REC_AMOUNT NOT NULL NUMBER(6) -- Fees receipt amount
    2.FEES_DETAIL
    Name Null? Type
    FEES_ID NOT NULL NUMBER(8) -- Foreign Key
    MONTH NOT NULL DATE -- First of each month to identify fee month
    Scenario:
    A student submits fees for 3 months through Master/Detail related blocks in a Developer Form as
    Under:
    Fees Master
    Fees ID : 11002
    Class Student ID : 356
    Receipt Date : 06-JAN-2001
    Receipt Amount : 1500
    Fees Detail
    Fees ID Fees Month
    11002 01-JAN-2001
    11002 01-FEB-2001
    11002 01-MAR-2001
    I need to check each fees detail record for fees month duplication as well before inserting new records.
    How can this be achieved?
    Thanks in advance.

    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Fan Liu ([email protected]):
    create primary key in the detail table. i think it's FEES_ID + MONTH. then mark the columns in Forms as primary key property true, then call check_record_uniqueness built-in in on-check-unique trigger.<HR></BLOCKQUOTE>
    Thanks very much. But what I need is to ensure transaction integrity thro stored procedure. The system allows a certain CS_ID (i.e. Class Student ID, which is assigned a new one to every student annually) to submit fees for 12 months only, because a student stays in a class for a year. The 2 columns in the FEES_DETAIL table are composite primary key which only ensures that a certain FEES_ID will not be repeated for the same month. But suppose:
    1)this data already exist in the tables:
    Fees Master
    Fees ID : 11002
    Class Student ID : 356
    Receipt Date : 06-JAN-2001
    Receipt Amount : 1500
    Fees Detail
    Fees ID Fees Month
    11002 01-JAN-2001
    11002 01-FEB-2001
    11002 01-MAR-2001
    2)And this data is currently being inserted:
    Fees Master
    Fees ID : 11300
    Class Student ID : 356
    Receipt Date : 04-FEB-2001
    Receipt Amount : 1500
    Fees Detail
    Fees ID Fees Month
    11300 01-JAN-2001
    11300 01-FEB-2001
    11300 01-MAR-2001
    The data in the 2nd condition is perfectly valid but the application can't allow a student to submit fees for a month which he has already submitted. Now only a stored procedure can make sure after checking that the same student doesn't pay fees for duplicate months. Another reason for my emphasis on stored procedure is that what if a user tries to insert data thro an SQL* Plus session instead of the Form.
    PROBLEM: Now the problem I am having is I don't know how the procedure will take input for multiple records from the FEES_DETAIL block in the Form.
    Please assist in this regard. Thanks.

  • Dynamic Select query is failing with error "Invalid Table Name"

    OPEN rc FOR 'SELECT count(*) from :s' USING tab_name;
    fetch rc into rec_count;
    CLOSE rc;
    my requirement is to build dynamic select query to retrieve the total count of rows in each table ( variable tab_name contains the table_name )
    But I am getting stuck by this errror, not sure if there is any alternative !
    ORA-00903: invalid table name
    ORA-06512: at line 43

    OPEN rc FOR 'SELECT count(*) from '||tab_name;
    fetch rc into rec_count;
    CLOSE rc;
    -- This will work
    1. Create a sql statement.
    2. Open ref cursor for that statement.

  • How to get the field name of an internal table during runtime?

    How to get the field name of an internal table during runtime?

    Hi  Sudhir,
    Declare and Use Get Cursor Field in Your Prm to get the field Name of the Intenal Table
    Example Code:
        <b>  DATA: v_field(60).                        " Insert this code.
         GET CURSOR FIELD v_field.        " Insert this code.</b>
         <b>CHECK v_field = 'ITAB-KUNNR'.    " Insert this code. (or)
    Write: v_field.</b>
    Regards,
    Ramganesan K.

  • Invalid table name  error when updating object in collection using SQL

    Hi,
    I have pl/sql code where I am selecting a object from a collection using sql select query. I am processing this record and now I want to update the collection with the new object. ie. ensure that the object that was fetched be removed and this new one be added.
    considering my_ot is the object type and my_tt is the table type.
    DECLARE
    my_col my_tt;
    my_col1 my_tt
    my_var my_ot;
    my_var2 VARCHAR2(10);
    BEGIN
    // populating my_col1 with select query
    //populating my_col with select query
    FOR my_col1.FIRST .. my_col.LAST LOOP
    //populating my_var2
    BEGIN
    SELECT my_ot(c.field1, c.field2 ,c.field3) INTO my_var FROM TABLE(my_col) c WHERE c.field3 = my_var2
    //processing the field my_VAR
    UPDATE TABLE(my_col) c SET c.field1 = my_var.field1 , c.field2 = my_var.field2 , WHERE c.field3 = my_var.field3;
    EXCEPTION WHEN NO_DATA_FOUND
    my_col.EXTEND;
    my_col(my_col.LAST) := // new my_ot object
    END;
    END LOOP;
    Here, when compiling the update query is not being compiled. I am getting a error 'invalid table name'. Is there any way to modify an object in the collection without knowing its index?
    If not, is it possible to find the index of a object in the collection in select query?
    Thanks in advance
    Paddy

    Hi,
    Is there any way to find the index of a object in the collection? Then I will simply replace the object at that index, right!
    Thanks
    Paddy

  • Invalid table name error ....

    Hi,
    I have written a function which takes table name dynamically and if column emp_id is null for more than 0 records then 1 is returned else 0 .
    My problem is when i compile iam getting invalid table name error .
    Below is my function :
    create or replace
    FUNCTION f_table ( tab_name in varchar2 ) return number is
    l_count number;
    begin
    select count(*) into l_count from tab_name where emp_id is null;
    if l_count >0 then
    return 1;
    else
    return 0;
    end if;
    end;
    Please help ...
    Thanks in advance ..

    Looks fine to me, you could use sign() for the last part:
    CREATE OR REPLACE FUNCTION f_table (tab_name IN VARCHAR2)
    RETURN NUMBER
    IS
      l_count NUMBER;
      v_sql VARCHAR2 (2000);
    BEGIN
      v_sql := 'SELECT COUNT (*) FROM ' || tab_name || ' WHERE emp_id IS NULL';
      EXECUTE IMMEDIATE v_sql
      INTO l_count;
      RETURN sign(l_count);
    END;And if you have large tables, you could consider not counting it all, and do something like this:
    CREATE OR REPLACE FUNCTION f_table (tab_name IN VARCHAR2)
    RETURN NUMBER
    IS
      l_count NUMBER;
      v_sql VARCHAR2 (2000);
    BEGIN
      v_sql := 'SELECT COUNT (*) FROM ' || tab_name || ' WHERE emp_id IS NULL AND rownum = 1';
      EXECUTE IMMEDIATE v_sql
      INTO l_count;
      RETURN l_count;
    END;Regards
    Peter

Maybe you are looking for

  • How to Restore ALL Media from external drive

    Hello forum... On an external 60GB HDD, I have my previous complete untouched iTunes media folder. It is acting as a slave drive only. I have installed a new HDD 500GB drive. The PC has been authorized from Apple. What is the procedure to get the my

  • Adding / deleting loops - where Garageband is relevant....

    All - this is a question involving Garageband, but only because I have heard Logic will "inherit" GB projects, so I'm assuming (not having bought it yet, pending this question possibly), that Logic operates its loops area the same way. I stumbled on

  • Validation Failed. Creation Web Service Proxy

    Hi, all I've got a problem with JDeveloper 10.1.3 when I try to create a web serviceproxy using the wizard. My service class is next, package swa; import java.awt.Graphics; import java.awt.Image; import java.awt.Toolkit; import java.awt.color.ColorSp

  • HT1569 How can I download updates on Mac OSX, Version 10.7 1?

    I have Mac OS X Version 10.7 1. Every time I try to update my software, I get this message: Downloading 5 items; Downloading Mac OS X Update Combined; 21.6 MB of 1.99 GB  about 11,000 hours.  However, nothing seems to download.   Everything stays at

  • Save for web as aninatwd gif, text does s keep true color

    Save for web as animated gif, text does not keep true color in Photoshop