HELP!! Create source system failed in BW ( ORA-01403: no data found)

Hi,
I cannot create Oracle DB as a source system in my BW (7.01).
In system log, I got the following information.
============================
Database error 1403 at CON
> ORA-01403: no data found
============================
How can I fix this issue?
It's kind of urgent.
Thanks!
Regards,
Steven
Edited by: Wen Steven on Sep 30, 2011 6:09 PM

Hi Steven,
Please check the below thread
SQL/Buffer trace RC=1403
Regards,
Venkatesh

Similar Messages

  • Import job failes with ORA-01403: no data found ORA-06512: at "SYSMAN.MGMT

    Hello everyone,
    I need a help on importing data from a schema in server 1 to the same schema in server 2 via network link. I receive following error when I try to submit a job on Enterprise Manager:
    Import Submit Failed
    ORA-01403: no data found ORA-06512: at "SYSMAN.MGMT_JOB_ENGINE", line 5806 ORA-06512: at "SYSMAN.MGMT_JOB_ENGINE", line 7812 ORA-06512: at "SYSMAN.MGMT_JOB_ENGINE", line 8608 ORA-01403: no data found ORA-06512: at "SYSMAN.MGMT_JOBS", line 273 ORA-06512: at "SYSMAN.MGMT_JOBS", line 86 ORA-06512: at line 1
    Sql of the job:
    declare
    h1 NUMBER;
    begin
    h1 := dbms_datapump.open (operation => 'IMPORT', job_mode => 'FULL', remote_link => 'B_PROD_LINK', job_name => 'BIMPORTFRMPRDTORPT4', version => 'COMPATIBLE');
    dbms_datapump.set_parallel(handle => h1, degree => 1);
    dbms_datapump.add_file(handle => h1, filename => 'IMPORT.LOG', directory => 'DATA_PUMP_DIR', filetype => 3);
    dbms_datapump.set_parameter(handle => h1, name => 'KEEP_MASTER', value => 0);
    dbms_datapump.set_parameter(handle => h1, name => 'INCLUDE_METADATA', value => 1);
    dbms_datapump.set_parameter(handle => h1, name => 'ESTIMATE', value => 'BLOCKS');
    dbms_datapump.set_parameter(handle => h1, name => 'REUSE_DATAFILES', value => 0);
    dbms_datapump.set_parameter(handle => h1, name => 'TABLE_EXISTS_ACTION', value => 'TRUNCATE');
    dbms_datapump.set_parameter(handle => h1, name => 'SKIP_UNUSABLE_INDEXES', value => 0);
    dbms_datapump.start_job(handle => h1, skip_current => 0, abort_step => 0);
    dbms_datapump.detach(handle => h1);
    end;
    It says network link is active when I test the network link to make sure its connectivity. I create the network link as a system account. I'm trying to do an import from an Oracle database 10.2.0.2 to 11.2.0.1. My 10g database is on ms windows 2003x64 while my 11g database is on OEL 5.4x64.
    What should I do for now?
    Thank you.
    Edited by: user12144220 on Nov 4, 2012 5:02 AM

    It will be wise to run the Oracle supply streams health check script to check your existing streams environment.
    From the result, you can also open a tar with Oracle to see if they can help you with the setup.
    In addition to the ORA-01403 error, you can also run some of the Oracle Streams packages (Managing Apply Errors) to see the full detail of what is missing that caused the Ora-01403 error.
    I will also try to implement a smoke test using the simple heartbeat table suggested by Oracle Streams, if that is working, then you can begin your full scale setup in your environment knowing that the base Streams Structure is setup correctly.
    HTH

  • Deferred transaction fails due to a "ORA-01403: no data found" error

    I recently acticated replication between two Oracle instances.
    (one being the master definition site and the other one being
    a second master site).
    Everything was going well until two weeks ago, when i realized
    that some datas were different between the two Oracle instances.
    I tried to figure out why and found that some deferred transation
    failed to propagate due to a "ORA-01403: no data found" error.
    Not all transaction fail, only a few.
    All the errors are stored in the DEFERROR table of the second
    master site, the DEFERROR table is empty in the master definition
    site.
    For every error, the source is the master definition site and the
    destination is the second master site, which is OK because the
    second master site is supposed to be "read-only". But why are the
    errors stored in the DEFERROR table of the second master site
    (and not in the master definition site (the source)).
    Most errors occur on UPDATE statements but a few of them occur
    on DELETE statements. Given the fact that the record actually is
    in the second master site, how is it possible to get a
    "ORA-01403: no data found" error on a delete statement ???????
    I can't figure out what data cannot be found,
    Thanks for your help,
    Didier.

    What if i tell you the first transaction in error is an UPDATE
    statement on a record that actually is in the destination table
    in the second master site. So the data is there, it should be
    found ...
    I've tried an EXECUTE_ERROR on that very first transaction
    in error but it doesn't work. Here's the call (as repadmin) :
    begin
    DBMS_DEFER_SYS.EXECUTE_ERROR (
    DEFERRED_TRAN_ID => '6.42.271',
    DESTINATION => 'AMELIPI.SENAT.FR'
    end ;
    And here's the full message :
    ORA-01403: no data found
    ORA-06512: at "SYS.DBMS_DEFER_SYS_PART1" line 430
    ORA-06512: at "SYS.DBMS_DEFER_SYS" line 1632
    ORA-06512: at "SYS.DBMS_DEFER_SYS" line 1678
    ORA-06512: at line 2
    I thought it could be because the primary key constraint on the
    destination table wasn't activated but it was. Could it
    be a problem with the corresponding index ?
    Thanks for your help,
    Didier.

  • Failed to parse SQL query: ORA-01403: no data found

    I'm going to post and answer my own question in the hope that others will not have to struggle with this error.
    Using a report of the type PL/SQL Function Body Returning SQL and using generic columns you may run into this error
    failed to parse SQL query:
    ORA-01403: no data found
    The SQL will run stand alone but the report fails.
    There is a setting just below the source you should check:
    "Maximum number of generic report columns"
    In my case the number of columns was dynamic and when it exceeded the number set as the maximium number of generic columns I received the 1403 error.
    Hope this helps someone.
    Greg

    Thanks for much for the pointer. For anyone else struggling with this too, I found that my generic columns had unordered themselves. Reordering them solved the problem for me.
    Edited by: user11096971 on Jul 22, 2010 3:19 AM

  • Help with ORA-01403: no data found please.

    First off I'd like to apologise for my lack of PL/SQL experience, what follows may seem naive, but I guess we all have to start somewhere.
    I'm trying to create a function which determines an employee's Annual Holiday Entitlement by comparing their length of service against a lookup of entitlement values. Due to the complexity of the application I'm targeting there are a number of other factors to be take into consideration, but this is the basic idea of what I want to achieve.
    I've started by taking a working SQL Server 2005 function and converted this using the translation scratch pad in SQL Developer 1.5.1 I'm now hand cranking the subtleties into the script but when I debug the code I'm getting "ORA-01403: no data found" at almost every SELECT. In fact the only successful select is from the ABS_SYSTEM_CONTROLS table. I can handle the first few failures by setting default values in the variables that I'm trying to load, but this isn't an option when it comes to selecting the DATE_OF_START from the PERSON table.
    I've sure I've probably made some fundamental error, but can't spot it myself. Any help would be most welcome.
    I've included the entire script below for your entertainment ;-)
    Thanks
    Phil.
    create or replace
    function mygetannualholidayentitlement
    ( v_empNo in varchar2
    , v_inputDate in DATE
    ) return number as
       -- Declare variables here
       v_entitlement FLOAT(53);
       v_holidayPlan VARCHAR2(20);
       v_contServiceOption VARCHAR2(255);
       v_postNo CHAR(16);
       v_lengthOfService NUMBER(10,2) ; -- Need to give this a default value else the CURSOR (below) won't initialise.
       v_empStartDate DATE;
       -- Load up our loacal variable for each row in the loop and the final value is the one we want.
       v_selectedLOF FLOAT(53);
       v_selectedDateEffective DATE;
       v_selectedAmount FLOAT(53);
       v_effectiveDate DATE;
       -- Cursor declaration
       -- Holiday plan details are also keyed on DATE_EFFECTIVE.  Need to identify which row is active as at our @effectiveDate.
       CURSOR holDefCursor
         IS SELECT length_of_service,
       date_effective,
       amount
         FROM holiday_plan_def
          WHERE hplan_code = v_holidayPlan
         AND length_of_service < v_lengthOfService
         ORDER BY date_effective ASC,
       length_of_service ASC;
    BEGIN
       -- Initialise variables --
       -- truncate any hours/Mins & secs from effective date
       v_effectiveDate := trunc(v_inputdate);
       v_entitlement := 0;
       v_contServiceOption := 0;
       v_lengthOfService := 0;
       BEGIN
       SELECT HPLAN_CODE
         INTO v_holidayPlan
         FROM APPT_HOLIDAY_BALANCE
          WHERE emp_no = v_empNo
                  --          post_no = @postNo and
                  AND ( v_effectiveDate BETWEEN HOLIDAY_YEAR_START AND HOLIDAY_YEAR_END );
       EXCEPTION
       WHEN NO_DATA_FOUND THEN
          v_holidayplan:=NULL;
       WHEN OTHERS THEN
           raise_application_error(-20011,'Unknown Exception in MyGetAnnualHolidayEntitlement function.');
       END;
       -- Still no hoildayPlan? Then use the default plan code from ABS_SYSTEM_CONTROLS.
       IF v_holidayPlan IS NULL THEN
          SELECT HPLAN_CODE
            INTO v_holidayPlan
            FROM ABS_SYSTEM_CONTROLS ;
       END IF;
       BEGIN
        SELECT OPTION_VALUE
          INTO v_contServiceOption
          FROM PS_OPTIONS
           WHERE OPTION_NAME = 'CONTINUOUS_SERVICE_OPTION';
       EXCEPTION
       WHEN NO_DATA_FOUND THEN
          v_contServiceOption := 'N' ;
       WHEN OTHERS THEN
           raise_application_error(-20011,'Unknown Exception in MyGetAnnualHolidayEntitlement function.');
       END;
       IF v_contServiceOption = 'Y' THEN
       BEGIN
          -- Need to take into account the employees CONTINUOUS_SERVICE_DATE when calculating length of service
          BEGIN
          SELECT CONTINUOUS_SERVICE_DATE
            INTO v_empStartDate
            FROM person
             WHERE emp_no = v_empNo;
          EXCEPTION  
            WHEN NO_DATA_FOUND THEN
              v_empStartDate := NULL;
            WHEN OTHERS THEN
              raise_application_error(-20011,'Unknown Exception in MyGetAnnualHolidayEntitlement function.');
          END;
          -- If we can't get a CONTINUOUS_SERVICE_DATE we will fall back to PERSON.DATE_OF_START
          IF v_empStartDate IS NULL THEN
          BEGIN
             SELECT DATE_OF_START
               INTO v_empStartDate
               FROM PERSON
                WHERE emp_no = v_empNo;
          EXCEPTION  
            WHEN OTHERS THEN
              raise_application_error(-20011,'Unknown Exception in MyGetAnnualHolidayEntitlement function.');
          END;
          END IF;
       END;
       ELSE
       BEGIN
          -- Need to use employees DATE_OF_START when calculating length of service
          SELECT DATE_OF_START
            INTO v_empStartDate
            FROM PERSON
             WHERE emp_no = v_empNo;
       END;
       END IF;
       -- Now we can get length of service
       v_lengthOfService := sqlserver_utilities.datediff('MONTH', v_empStartDate, v_effectiveDate) / 12.00;
       OPEN holDefCursor;
       FETCH holDefCursor INTO v_selectedLOF,v_selectedDateEffective,v_selectedAmount;
       WHILE ( sqlserver_utilities.fetch_status(holDefCursor%FOUND) = 0 )
       LOOP
          BEGIN
             IF v_selectedDateEffective < v_effectiveDate THEN
                v_entitlement := v_selectedAmount;
             END IF;
             -- Get the next value.
             FETCH holDefCursor INTO v_selectedLOF,v_selectedDateEffective,v_selectedAmount;
          END;
       END LOOP;
       CLOSE holDefCursor;
       -- Return the result of the function
       RETURN v_entitlement;
    END;Edited by: user4395499 on 27-Oct-2008 04:04
    Edited by: user4395499 on 27-Oct-2008 04:05
    Edited by: user4395499 on 27-Oct-2008 07:10

    Your code is extremely procedural - whilst you could ultimately get it to work like this, it is not the most efficient way of doing it.
    You should think about reducing your code to one sql statement if at all possible - this reduces the amount of context switching that needs to take place (eg. Going from PL/SQL to SQL back to PL/SQL to SQL, etc) and is usually much easier to maintain and test. You could do this by joining the various tables together, (and you might want to think about using nvl() to combine the two queries on the PERSON table!).
    Also, you've labelled your parameters "v_" and your variables "v_" ... common convention uses "p_" for parameters, to allow for easy distinction between parameters passed in and variables declared during the course of the procedure/function.
    As to the char() defined column - is there any chance that you could change that? As you've found out, chars are usually not a good datatype to use! Storing numbers in a char/varchar2 column is a no-no too, as you then run the risk of having invalid numbers stored in the column.

  • NEED HELP IN CONFLICT HANDLER ERROR ORA-01403: no data found

    Hi All,
    I am using Oracle Streams to replicate the data...
    I need to update the records on the destination with some particular condition like if USER_COUNTRY = 'XXX' then the data need to be updated in the destination side else skip ...
    I wrote the procedure ..below .. the data is not replicating and found the below error from dba_apply_error..
    ORA-01403: no data found
    ORA-06512: at "SYS.LCR$_ROW_RECORD", line 419
    Table called history_row_lcrs is created in the strmadmin to store the lcr values...
    CREATE OR REPLACE PROCEDURE proc_test(in_any sys.anydata)IS
    lcr sys.lcr$_row_record;
    rc pls_integer;
    v_type varchar2(20);
    col_1 sys.anydata;
    lcr_usercountry varchar2(20);
    TRANS varchar2(20);
    skip_routine Exception;
    BEGIN
    rc:=in_any.GetObject(lcr);
    v_type:=lcr.get_command_type();
    col_1:=lcr.get_value('NEW','USER_COUNTRY');
    rc:=col_1.GetVarchar2(lcr_usercountry);
    for x in ( select user_country from TEST.TESTREP1
    where USER_COUNTRY=lcr_usercountry)
    Loop
    IF (x.USER_COUNTRY = 'XXX')
    THEN
    insert into strmadmin.history_row_lcrs VALUES (SYSDATE, lcr.GET_SOURCE_DATABASE_NAME(), lcr.GET_COMMAND_TYPE(),
    lcr.GET_OBJECT_OWNER(), lcr.GET_OBJECT_NAME(), lcr.GET_TAG(), lcr.GET_TRANSACTION_ID(), lcr.GET_SCN(),
    lcr.GET_COMMIT_SCN,lcr.GET_VALUES('old'), lcr.GET_VALUES('new', 'n'));
    lcr.EXECUTE(true);
    ELSE
    Raise Skip_routine;
    END IF;
    END Loop;
    Exception
    when skip_routine Then
    null;
    END;
    BEGIN
    DBMS_APPLY_ADM.SET_DML_HANDLER(
    object_name => 'TEST.TESTREP1',
    object_type => 'TABLE',
    operation_name => 'UPDATE',
    error_handler => false,
    user_procedure => 'STRMADMIN.PROC_TEST',
    apply_database_link => NULL,
    apply_name => NULL);
    END;
    Please try to help me if am doing something wrong...because I need to update only one colums am using DML_HANDLER instead of SET_UPDATE_CONFLICT_HANDLER...
    Any other inputs are also appreciated...
    Thanks In Advance and appreciate for the quick reply...

    I fired the query, am not getting any output from dbms_output.put_line('..|USER_COUNTRY..');
    Is that no data is reading or may be any reason else..
    in this table store_id is the primary key ..
    SQL> set serveroutput on
    SQL> CREATE OR REPLACE PROCEDURE test(in_any sys.anydata) IS
    2 lcr sys.lcr$_row_record;
    3 rc pls_integer;
    4 v_type varchar2(20);
    5 col_1 sys.anydata;
    6 col_2 sys.anydata;
    7 lcr_usercountry varchar2(20);
    8 lcr_storeid number;
    9 TRANS varchar2(20);
    10 store_id number;
    11 USER_COUNTRY varchar2(20);
    12
    13 BEGIN
    14 rc:=in_any.GetObject(lcr);
    15 v_type:=lcr.get_command_type();
    16 col_1:=lcr.get_value('NEW','USER_COUNTRY');
    17 rc:=col_1.GetVarchar2(lcr_usercountry);
    18 col_2:=lcr.get_value('NEW','STORE_ID');
    19 rc:=col_2.getnumber(lcr_storeid);
    20 select user_country into user_country from dev03.testrep1 where user_country=lcr_usercountry and store_id=lcr_storeid;
    21 dbms_output.put_line('---------||USER_COUNTRY ||-----------');
    22 END;
    23 /
    Procedure created.
    Thanks for your help ....

  • Ora-01403 no data found cursor error - Please help.

    DECLARE
    name1 talent.candidate_name%TYPE; -- Declare variables
    name2 long; -- Declare variables
    emp_id talent_id.emplid%TYPE;
    NO_DATA_FOUND EXCEPTION;
    CURSOR c1 IS
    select candidate_name,(''''||trim(upper(candidate_name))||'''') as tst from talent ;
    BEGIN
    OPEN c1;
    LOOP
    FETCH c1 INTO name1, name2;
    EXIT WHEN c1%NOTFOUND; -- TRUE when FETCH finds no more rows
    select distinct emplid
    INTO emp_id
    from names a
    where a.name_type = 'PRI'
    and upper(a.last_name)||', '||upper(a.first_name) = name2;
    INSERT INTO talent_id VALUES (emp_id, name1);
    END LOOP;
    CLOSE c1;
    COMMIT;
    Question: Above queries prompt me error msg ora-01403 no data found for emplid. I try but fail to solve it. Please help me. Thank you
    Edited by: user12051088 on Mar 4, 2010 1:38 AM
    Edited by: user12051088 on Mar 4, 2010 1:40 AM

    Yes, this is very helpful :-)
    My testing to insert table where emplid is null but still having error ora-01403 no data found when i remove on dbms_output.put_line as shown below:
    Anyway, if i dint remove the dbms_output.put_line. It is working to insert emp_id is not null. How do I include record which emp_id is null? Thank you.
    begin
    select distinct emplid
    INTO emp_id
    from gdw_names a
    where a.name_type = 'PRI'
    and upper(a.last_name)||', '||upper(a.first_name) = name1;
    IF emp_id is null THEN
    RAISE no_data_found;
    else
    INSERT INTO gdw_talent_id VALUES (emp_id, name1);
    end if;
    exception
    when no_data_found then
    INSERT INTO gdw_talent_id VALUES (null, name1);
    --when too_many_rows then
    -- dbms_output.put_line('too many rows for ' || name1);
    -- when others then
    -- dbms_output.put_line('Unknown error for ' || name1);
    end;
    Edited by: user12051088 on Mar 4, 2010 9:11 PM

  • Apex file loader 4.1 create page error: ORA-01403: no data found

    I am trying to create a page where csv files can be uploaded using the wizard in Apex 4.1.0.00.32
    However after completing the wizard and pressing the finish button, the following message shows up:
    Error Error creating page .
    ORA-01403: no data found
    All I can do then is press an OK button which takes me back to the summary screen before submitting.
    I've already tried the wizard using other tables, empty and ones with data in it, but with the same result.
    The strange thing is that I have used the wizard with success, but now it won't work anymore in this application.
    The other strange thing is that the wizard is still working for other application within the same workspace, even on the same table...
    Anyone has got any ideas to fix this (making a new application from scratch is my last resort considering the amount of work I've already put into this one)
    Thanks!

    Alright, I got the wizard working again. This is how:
    By doing some searching on google I found that the errorlogs of Apache are logged in the folder: apache\apache\logs\
    I found that there were some error logs in there that created new lines each time I used the wizard:
    [Fri Jan 27 17:45:41 2012] [error] [client 172.18.40.211] [ecid: 1327682741:10.10.10.128:2380:2616:373,0] File does not exist: d:/oracle/product/10.2.0/ohs_1/apache/images/css/apex_builder_4_0.css
    [Fri Jan 27 17:45:44 2012] [error] [client 172.18.40.211] [ecid: 1327682744:10.10.10.128:2380:2536:480,0] File does not exist: d:/oracle/product/10.2.0/ohs_1/apache/images/css/apex_builder_4_0.css
    So I figured maybe if I copy the existing apex_builder_4_1.css in the folder and rename it to apex_builder_4_0.css it would work.
    After doing that the error messages stopped in the error log, but still the wizard failed.
    After that I changed the theme of the application and the wizard started working again!
    Don't no what will happen when I change the theme back to the one I was using, maybe I will try that later.
    For now I am happy!
    Thanks Patrick for putting time into it
    (btw my application was not imported, but I did play around with the themes a fair bit)
    Edited by: Merijn8106997 on 27-jan-2012 9:27

  • Exception occured during invocation of JCA binding ORA-01403: no data found ORA-06512: at line 1

    Dear Legends,
    My requirement is to call store procedure from BPEL. So for I created a BPEL with 2 assign activity and 1 Invoke activity to Invoke the DB adapter. After Deploying I tested the process but it shows the following error:
    <bpelFault><faultType>0</faultType><bindingFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>Exception occured when binding was invoked.
    Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'DB_SBL_SPROCS1' failed due to: Interaction processing error.
    Error while processing the execution of the SIEBEL.PORTAL_SPROCS.ACP_CONREGISTRATIONLOOKUP_WRAP API interaction.
    An error occurred while processing the interaction for invoking the SIEBEL.PORTAL_SPROCS.ACP_CONREGISTRATIONLOOKUP_WRAP API. Cause: java.sql.SQLException: ORA-01403: no data found
    ORA-06512: at line 1
    Check to ensure that the XML containing parameter data matches the parameter definitions in the XSD.  This exception is considered not retriable, likely due to a modelling mistake.  To classify it as retriable instead add property nonRetriableErrorCodes with value "-1403" to your deployment descriptor (i.e. weblogic-ra.xml).  To auto retry a retriable fault set these composite.xml properties for this invoke: jca.retry.interval, jca.retry.count, and jca.retry.backoff.  All properties are integers.
    The invoked JCA adapter raised a resource exception.
    Please examine the above error message carefully to determine a resolution.
    </summary></part><part name="detail"><detail>ORA-01403: no data found
    ORA-06512: at line 1
    </detail></part><part name="code"><code>1403</code></part></bindingFault></bpelFault></fault><faultType>
    <message>0</message></faultType></messages></details></event><event sid="BpPrc0.1" cat="2" n="16" date="2013-08-08T05:39:39.121-04:00" type="4"><message>"BPELFault" has not been caught by a catch block.</message></event><event sid="BpPrc0.1" cat="2" n="17" date="2013-08-08T05:39:39.270-04:00" type="3"><message>The transaction was rolled back. The work performed for bpel instance "960968" was rolled back, but the audit trail has been saved for this instance.If this is a sync request, please resubmit the request from the client. If it is an async request, please recover from the recovery console by resubmitting the invoke message.</message></event></audit-trail>
    What does the above error says?
    1. Whether concern Grant or Execute Privileges is not properly provided to the user?
    2. Is there any Dangling Privileges are prevailing?
    3. Is that the Store Procedure to be Handled with an Error Handling by means of Exception?
    4. Is that I have been giving wrong test data?
    5. Is that No data being existing in the Procedure?
    6. Is that anything related to XA and NON-XA Data Source?
    Any kind of help would be much appreciated. Thanks in Advance.
    Thanks,
    Karthik

    Can you check the following ?
    a. Hopefully the when you execute the procedure using sql tool it works fine and returns data.
    b. Is there any input parameter available for procedure ?
    c. IF yes, is the parameter is mapped with the procedure parameter and populated with value before calling the procedure ?
    d. In the audit trial, you can see from the invoke activity to see whether the parameter is populated with value or not ?
    e. Check the input parameter by executing the procedure with sql tool to see whether this request is receiving any data in return or not ?
    Thanks,
    Vijay

  • Strange problem: ORA-01403: no data found when report has a sort

    Hi,
    I have a report which behaves very strangely but only for one particular user. The report runs fine when no columns are set as sort-by in the report attributes. As soon as I try and set a column to sort (any column, it doesn't matter) this user gets the error message:
    failed to parse SQL query:
    ORA-01403: no data found
    appear where the report should be on the page. The rest of the page displays OK. No other users are affected. If I remove the sort then the report is OK for this user (unsorted though!)
    The report is a structured query with custom column headings, nothing unusual, quite basic. I have tried exporting and reimporting the page but it doesn't fix it. Same behaviour for this particular page in our test system as well.
    I could rebuild the page but I'd rather know what is wrong in case it happens to some other region.
    Thanks,
    Steve

    Steve,
    The reports engine stores the sort settings in the user preferences. This is done so that when you return to a report, it maintains the earlier sort settings. Like in your response to the HTML DB studio posting, you would keep your report sorted by "Created On" descending or ascending even when you come back another time. It's save to remove those preferences; all that's going to happen is that your users will see the report using the report's default settings the next time they go to that page. I will try to investigate this problem further, whatever additional information you can provide, will be helpful,
    Marc

  • Forms application returns "ORA-01403 no data found" exception on Windows 7

    Hi everyone,
    I am currently involved in an application compatibility project for an O/S migration from Windows XP to Windows 7.
    We have a legacy Oracle Dev6i P18 Forms application that has been working perfectly on Windows XP for the last decade or so. When we installed the same application on Windows 7, it returned a pop-up error message with the text: "ORA-01403 no data found" when performing a certain operation (clicking on a Submit button in a specific form). The same operation works successfully on Windows XP displaying the message "Submit has been successful".
    This error is well documented and the solution involves adding an exception handler to the faulting SQL statement(s) in order to handle the ORA-01403 exception. Unfortunately, the application is composed of compiled forms (.FMX) and we no longer have the source code so I can't implement this solution.
    I ran a file comparison utility (WinDiff from the Windows SDK) and confirmed that all the files in the application folder and the Oracle Dev6i P18 folder are identical on both the Windows XP and Windows 7 systems.
    I enabled tracing in SQLNet.ORA by configuring TRACE_LEVEL_CLIENT=SUPPORT (I know, too verbose) and other related settings on both systems and have uploaded the traces to my SkyDrive for public viewing:
    http://sdrv.ms/10BNYtI
    The traces show that the "ORA-01403" exception occurs many times on both Windows XP and Windows 7 systems as a result of various SQL statements being executed, for instance:
    SELECT TASK_ID,TASK_DETAIL_STATUS,ASSIGNED_DATE FROM TASK_DETAILS WHERE TASK_ID = :b1 AND TASK_DETAIL_STATUS = (SELECT ID FROM V_TASK_STATUS WHERE ABBREVIATION = 'PLANNED' ) FOR UPDATE OF TASK_DETAIL_STATUS,ASSIGNED_DATE
    UPDATE TASK_DETAILS SET ASSIGNED_DATE=NTMS_UTIL.GET_SERVER_DATE,TASK_DETAIL_STATUS=(SELECT ID FROM V_TASK_STATUS WHERE ABBREVIATION = 'ASSIGNED' ) WHERE ROWID = :b1
    ORA-01403: no data found.
    So the same error happens on both Windows XP and Windows 7.
    On Windows XP, the error is somehow handled, and does not cause the "Submit" operation to fail.
    On Windows 7, however, the error bubbles to the surface and is displayed to the user, thus halting the "Submit" operation.

    Thank you. I'm well aware that adding an exception handler is the classic solution to the ORA-01403 error. However, like I mentioned in my original post, I don't have the source code. All I have are the compiled .FMX forms so I can't implement such a solution:
    From my original post:
    This error is well documented and the solution involves adding an exception handler to the faulting SQL statement(s) in order to handle the ORA-01403 exception. Unfortunately, the application is composed of compiled forms (.FMX) and we no longer have the source code so I can't implement this solution.

  • Error in AR_INVOICE_UTILS.validate_tax_exemption ORA-01403: no data found

    Hi All,,
    --API - AR Invoice (Transaction) Creation
    CREATE OR REPLACE procedure APPS.xxx_ar_invoice_api
    is
    l_return_status varchar2(1);
    l_msg_count number;
    l_msg_data varchar2(2000);
    l_batch_source_rec ar_invoice_api_pub.batch_source_rec_type;
    l_trx_header_tbl ar_invoice_api_pub.trx_header_tbl_type;
    l_trx_lines_tbl ar_invoice_api_pub.trx_line_tbl_type;
    l_trx_dist_tbl ar_invoice_api_pub.trx_dist_tbl_type;
    l_trx_salescredits_tbl ar_invoice_api_pub.trx_salescredits_tbl_type;
    l_cust_trx_id number;
    --l_batch_id              number;
    --l_batch_id              number;
    BEGIN
    begin
    MO_GLOBAL.SET_POLICY_CONTEXT('S',85);
    end;
    fnd_global.apps_initialize(1153,50642,222);
    l_batch_source_rec.batch_source_id := 1002;
    l_trx_header_tbl(1).trx_header_id := 5555;
    l_trx_header_tbl(1).trx_date := sysdate;
    l_trx_header_tbl(1).trx_currency := 'INR';
    l_trx_header_tbl(1).cust_trx_type_id := 1;
    l_trx_header_tbl(1).bill_to_customer_id := 24059;
    l_trx_header_tbl(1).term_id := 1000;
    l_trx_header_tbl(1).finance_charges := 'Y';
    -- l_trx_header_tbl(1).status_trx := 'OP';
    -- l_trx_header_tbl(1).printing_option := 'NOT';
    --l_trx_header_tbl(1).reference_number            :=  '1111';
    l_trx_lines_tbl(1).trx_header_id := 5555;
    l_trx_lines_tbl(1).trx_line_id := 501;
    l_trx_lines_tbl(1).line_number := 1;
    l_trx_lines_tbl(1).inventory_item_id := 10008;
    --l_trx_lines_tbl(1).description              :=  'TUBRO 100 SAE 20W40 - 5 * 20 LTR Carton;
    l_trx_lines_tbl(1).quantity_invoiced := 10;
    l_trx_lines_tbl(1).unit_selling_price := 12; --Price
    l_trx_lines_tbl(1).uom_code := 'Nos';
    l_trx_lines_tbl(1).line_type := 'LINE';
    -- l_trx_dist_tbl(1).trx_dist_id := 501;
    --l_trx_dist_tbl(1).trx_line_id               :=  501;
    --l_trx_dist_tbl(1).ACCOUNT_CLASS             := 'REV';
    --l_trx_dist_tbl(1).percent                   := 100;
    --l_trx_dist_tbl(1).CODE_COMBINATION_ID       := 1012;
    --Here we call the API to create Invoice with the stored values
    AR_INVOICE_API_PUB.create_invoice
    (p_api_version => 1.0
    --,p_commit => 'T'
    ,p_batch_source_rec => l_batch_source_rec
    ,p_trx_header_tbl => l_trx_header_tbl
    ,p_trx_lines_tbl => l_trx_lines_tbl
    ,p_trx_dist_tbl => l_trx_dist_tbl
    ,p_trx_salescredits_tbl => l_trx_salescredits_tbl
    ,x_return_status => l_return_status
    ,x_msg_count => l_msg_count
    ,x_msg_data => l_msg_data
    dbms_output.put_line('Created:'||l_msg_data||l_return_status);
    IF l_return_status = fnd_api.g_ret_sts_error OR
    l_return_status = fnd_api.g_ret_sts_unexp_error THEN
    dbms_output.put_line(l_return_status||':'||sqlerrm);
    Else
    dbms_output.put_line(l_return_status||':'||sqlerrm);
    If (ar_invoice_api_pub.g_api_outputs.batch_id IS NOT NULL) Then
    Dbms_output.put_line('Invoice(s) suceessfully created!') ;
    Dbms_output.put_line('Batch ID: ' || ar_invoice_api_pub.g_api_outputs.batch_id);
    Dbms_output.put_line('customer_trx_id: ' || l_cust_trx_id);
    Else
    Dbms_output.put_line(sqlerrm);
    End If;
    end if;
    commit;
    End;
    exec xxx_ar_invoice_api;
    when im running this im getting error " Error in AR_INVOICE_UTILS.validate_tax_exemption ORA-01403: no data found" pls send me solution

    Pls mention you app/db and OS version.
    Please see if below MOS notes helps:-
    LNS: Billing Fails With Error In AR_INVOICE_UTILS.validate_tax_exemption ORA - 01403 no data. [ID 797974.1]
    Oracle Receivables Invoice API: Known Issues and Patches [ID 1306471.1]
    Thanks,
    JD

  • Getting - ORA-01403: no data found - When I Run expdp

    Oracle database version 11.1.0.7.0 on Windows 32-bit.
    When I run:
    expdp system schemas=vms dumpfile=data_pump_dir:vms_bjw%u.dmp logfile=data_pump_dir:vms_bjw.log parallel=2
    Connected to: Oracle Database 11g Enterprise Edition Release *11.1.0.7.0* - Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    ORA-31626: job does not exist
    ORA-31637: cannot create job SYS_EXPORT_SCHEMA_01 for user SYSTEM
    ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
    ORA-06512: at "SYS.KUPV$FT_INT", line 736
    ORA-39080: failed to create queues "" and "" for Data Pump job
    ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
    ORA-06512: at "SYS.KUPC$QUE_INT", line 1665
    ORA-01403: no data found
    I turned on tracing like this:
    1.) Set the Error Stack 1403 to know exactly which SQL is failing:-
    SQL> alter system set events '1403 trace name errorstack level 3';
    Re-ran the datapump export to reproduce the error then disable the events.
    SQL> alter system set events '1403 trace name errorstack off';
    The trace file, oddly enough, shows that this is the failing SQL:
    Error Stack Dump
    ORA-01403: no data found
    Current SQL Statement for this session (sql_id=3n58uzvnuw2hj) -----
    SELECT VALUE FROM V$NLS_PARAMETERS WHERE PARAMETER = 'NLS_CHARACTERSET'
    Under that, I get the call stack.
    I ran this SQL manually and I get:
    SQL> SELECT VALUE FROM V$NLS_PARAMETERS WHERE PARAMETER = 'NLS_CHARACTERSET';
    VALUE
    AL32UTF8
    Any ideas as to why I'm getting the ORA-01403 when I run expdp?
    Thank you

    Hello,
    Your error looks like what is descibed into the Metalink Note 345198.1.
    But this note apply to 10.1.0.4 not to 11.1.0.7.
    So, you should open an issue to My Oracle Support.
    Best regards,
    Jean-Valentin

  • ORA-01403: no data found in alert.log

    Dear All,
    I am getting ORA-01403: no data found in alert.log.Could you pls help me out what could be reasons behind it..Due to this i m getting loads of alerts.Pls suggest.
    Thanks

    ORA-01403 No Data Found
    Typically, an ORA-01403 error occurs when an apply process tries to update an existing row and the OLD_VALUES in the row LCR do not match the current values at the destination database.
    Typically, one of the following conditions causes this error:
    Supplemental logging is not specified for columns that require supplemental logging at the source database. In this case, LCRs from the source database might not contain values for key columns. You can use a DML handler to modify the LCR so that it contains the necessary supplemental data. See "Using a DML Handler to Correct Error Transactions". Also, specify the necessary supplemental logging at the source database to prevent future errors.
    There is a problem with the primary key in the table for which an LCR is applying a change. In this case, make sure the primary key is enabled by querying the DBA_CONSTRAINTS data dictionary view. If no primary key exists for the table, or if the target table has a different primary key than the source table, then specify substitute key columns using the SET_KEY_COLUMNS procedure in the DBMS_APPLY_ADM package. You also might encounter error ORA-23416 if a table being applied does not have a primary key. After you make these changes, you can reexecute the error transaction.
    The transaction being applied depends on another transaction which has not yet executed. For example, if a transaction tries to update an employee with an employee_id of 300, but the row for this employee has not yet been inserted into the employees table, then the update fails. In this case, execute the transaction on which the error transaction depends. Then, reexecute the error transaction.
    There is a data mismatch between a row LCR and the table for which the LCR is applying a change. Make sure row data in the table at the destination database matches the row data in the LCR. When you are checking for differences in the data, if there are any DATE columns in the shared table, then make sure your query shows the hours, minutes, and seconds. If there is a mismatch, then you can use a DML handler to modify an LCR so that it matches the table. See "Using a DML Handler to Correct Error Transactions".
    Alternatively, you can update the current values in the row so that the row LCR can be applied successfully. If changes to the row are captured by a capture process at the destination database, then you probably do not want to replicate this manual change to destination databases. In this case, complete the following steps:
    Set a tag in the session that corrects the row. Make sure you set the tag to a value that prevents the manual change from being replicated. For example, the tag can prevent the change from being captured by a capture process.
    EXEC DBMS_STREAMS.SET_TAG(tag => HEXTORAW('17'));
    In some environments, you might need to set the tag to a different value.
    Update the row in the table so that the data matches the old values in the LCR.
    Reexecute the error or reexecute all errors. To reexecute an error, run the EXECUTE_ERROR procedure in the DBMS_APPLY_ADM package, and specify the transaction identifier for the transaction that caused the error. For example:
    EXEC DBMS_APPLY_ADM.EXECUTE_ERROR(local_transaction_id => '5.4.312');
    Or, execute all errors for the apply process by running the EXECUTE_ALL_ERRORS procedure:
    EXEC DBMS_APPLY_ADM.EXECUTE_ALL_ERRORS(apply_name => 'APPLY');
    If you are going to make other changes in the current session that you want to replicate destination databases, then reset the tag for the session to an appropriate value, as in the following example:
    EXEC DBMS_STREAMS.SET_TAG(tag => NULL);
    In some environments, you might need to set the tag to a value other than NULL.

  • ORA-01403: no data found   when displaying a value from an   array

    I have a very simple pl/sql procedure like below which gives an error
    SQL> exec p_ks2;
    BEGIN p_ks2; END;
    ERROR at line 1:
    ORA-01403: no data found
    ORA-06512: at "KINASE.P_KS2", line 21
    ORA-06512: at line 1
    if i uncomment the for loop the procedure works ... the loop has nothing to do with my array or what i am doing after it..
    could anyone help me to understand why i need a loop like that or what i am doing wrong when i am not having the loop there.
    ---- procedure
    CREATE OR REPLACE
    PROCEDURE p_ks2 as
    TYPE mdata IS TABLE OF number INDEX BY BINARY_INTEGER;
    data1 mdata;
    k integer;
    m number;
    begin
    data1(1) := 10;
    data1(2) := 20;
    data1(3) := 30;
    data1(4) := 40;
    data1(5) := 50;
    k :=3;
    --for mm in 10..11
    --loop
    -- m := mm;
    --end loop;
    dbms_output.put_line('value of data(' || k || '): ' || data1(k));
    end;
    /

    here is what i am trying.. when i do not have the for loop it fails. when I have the for loop it works eventhough for loop is really not doing anything related to my array.
    and in 10.x both works without error.
    I noticed you have the for loop uncommented when you posted the screen. Did it work when you have commented those lines out?
    SQL> select * from v$version
    2 ;
    BANNER
    Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production
    PL/SQL Release 11.1.0.6.0 - Production
    CORE 11.1.0.6.0 Production
    TNS for Linux: Version 11.1.0.6.0 - Production
    NLSRTL Version 11.1.0.6.0 - Production
    SQL> CREATE OR REPLACE
    2 PROCEDURE p_ks2 as
    3
    4 TYPE mdata IS TABLE OF number INDEX BY BINARY_INTEGER;
    5 data1 mdata;
    6 k integer;
    7 m number;
    8
    9 begin
    10 data1(1) := 10;
    11 data1(2) := 20;
    12 data1(3) := 30;
    13 data1(4) := 40;
    14 data1(5) := 50;
    15
    16 k :=3;
    17 --for mm in 10..11
    18 --loop
    19 -- m := mm;
    20 --end loop;
    21
    22 dbms_output.put_line('value of data(' || k || '): ' || data1(k));
    23
    24
    25 end;
    26 /
    Procedure created.
    SQL>
    SQL> exec p_ks2;
    BEGIN p_ks2; END;
    ERROR at line 1:
    ORA-01403: no data found
    ORA-06512: at "KINASE.P_KS2", line 21
    ORA-06512: at line 1
    SQL>
    SQL> CREATE OR REPLACE
    2 PROCEDURE p_ks2 as
    3
    4 TYPE mdata IS TABLE OF number INDEX BY BINARY_INTEGER;
    5 data1 mdata;
    6 k integer;
    7 m number;
    8
    9 begin
    10 data1(1) := 10;
    11 data1(2) := 20;
    12 data1(3) := 30;
    13 data1(4) := 40;
    14 data1(5) := 50;
    15
    16 k :=3;
    17 for mm in 10..11
    18 loop
    19 m := mm;
    20 end loop;
    21
    22 dbms_output.put_line('value of data(' || k || '): ' || data1(k));
    23
    24
    25 end;
    26 /
    Procedure created.
    SQL> exec p_ks2;
    value of data(3): 30
    PL/SQL procedure successfully completed.
    SQL>

Maybe you are looking for