Should not raise no data found error

Hi Experts,
I am using select into statement in procedure and put some condition in select statement.
I want if condition failed then it sould put null in to target variable . It should not raise no data found error
e.g
select abc into v_abc from table
where cond1=cond;
if this select statement no give any record it should put null into v_abc and not raise no data found error
pls suggest something
UG

You could do...
SQL> ed
Wrote file afiedt.buf
  1  declare
  2    v_abc varchar2(20);
  3  begin
  4    SELECT
  5      CASE
  6        WHEN (select COUNT(*) from emp where empno = 1234) > 0 THEN
  7          (select ename from emp where empno = 1234)
  8        ELSE
  9          null
10      END
11    INTO v_abc
12    FROM dual;
13* end;
SQL> /
PL/SQL procedure successfully completed.But that's no better than doing a check first as a seperate SQL in the PL/SQL.
I would do this... (if I really didn't want the no_data_found exception)
SQL> ed
Wrote file afiedt.buf
  1  declare
  2    v_abc varchar2(20);
  3  begin
  4    SELECT max(ename)
  5    INTO v_abc
  6    FROM
  7      (
  8      SELECT ename from emp where empno = 1234
  9      UNION
10      SELECT null from dual
11      );
12    dbms_output.put_line(NVL(v_abc,'!null!'));
13* end;
SQL> /
!null!
PL/SQL procedure successfully completed.
SQL> ed
Wrote file afiedt.buf
  1  declare
  2    v_abc varchar2(20);
  3  begin
  4    SELECT max(ename)
  5    INTO v_abc
  6    FROM
  7      (
  8      SELECT ename from emp where empno = 7782
  9      UNION
10      SELECT null from dual
11      );
12    dbms_output.put_line(NVL(v_abc,'{null}'));
13* end;
SQL> /
CLARK
PL/SQL procedure successfully completed.
SQL>

Similar Messages

  • ORA-01403: no data found Error in PLSQL code raised during plug-in processing.

    Hello OTN community,
    We are having the access to APEX problem. a New user was setup to access the APEX application. When I test to login as a new user, I get the message "ORA-01403: no data found Error in PLSQL code raised during plug-in processing.". When click OK to the disply message, the application will take me out of the sstem. I need help to even understand what is happening. I didn't develop the application, there is no documentation for this application, I am just supporting the application whenever there is a problem and I am new to APEX. As you can see I need help to figure this thing out. Your help is dearly appreciated.
    Thank you OTN

    Try to check the query that is executed and check if there is data or not

  • No data found error on Form on a Table with report

    Hi Everyone, I'm using Application Express 4.1.0.00.32 on Windows 7. I built a Form on a table with report. Earlier I was using rowid as a passing parameter but then I had to change it to primary key column from report to form.
    So in the "Fetch row process" I changed the "Items containing primary key value" and "Primary Key column" to P1004_PERSON_ID and PERSON_ID respectively. Which is my primary key.
    My Form is working exactly fine but at on point it throws "no data found error".
    I have a required date field in the form. So if the user doesn't fill in the date field and try to save the form, it throws the "Feild required error" and then when user enters date and try to save then it throws the error "No data found.". here is the snapshot... snapshot
    How can I fix this error.I'm really stuck.
    I checked debubber..it is as follows... in debughger it's still showing rowid. I don't know why. How can I fix that.
    Execution
    Message
    Level
    Graph
    0.00233
    0.00932
    S H O W: application="101" page="1004" workspace="" request="" session="123235901404364"
    4
    0.01161
    0.00102
    Language derived from: FLOW_PRIMARY_LANGUAGE, current browser language: en-us
    4
    0.01261
    0.00046
    alter session set nls_language="AMERICAN"
    4
    0.01307
    0.00042
    alter session set nls_territory="AMERICA"
    4
    0.01348
    0.00053
    NLS: CSV charset=WE8MSWIN1252
    4
    0.01401
    0.00042
    ...NLS: Set Decimal separator="."
    4
    0.01443
    0.00053
    ...NLS: Set NLS Group separator=","
    4
    0.01495
    0.00050
    ...NLS: Set g_nls_date_format="DD-MON-RR"
    4
    0.01545
    0.00051
    ...NLS: Set g_nls_timestamp_format="DD-MON-RR HH.MI.SSXFF AM"
    4
    0.01597
    0.00050
    ...NLS: Set g_nls_timestamp_tz_format="DD-MON-RR HH.MI.SSXFF AM TZR"
    4
    0.01647
    0.00079
    ...Setting session time_zone to -05:00
    4
    0.01726
    0.00046
    Setting NLS_DATE_FORMAT to application date format: DD-MON-YYYY
    4
    0.01772
    0.00060
    Setting NLS_TIMESTAMP_FORMAT to application timestamp format: DD-MON-YYYY HH24.MI.SSXFF
    4
    0.01832
    0.00092
    ...NLS: Set g_nls_date_format="DD-MON-YYYY"
    4
    0.01924
    0.00049
    ...NLS: Set g_nls_timestamp_format="DD-MON-YYYY HH24.MI.SSXFF"
    4
    0.01973
    0.00083
    ...NLS: Set g_nls_timestamp_tz_format="DD-MON-RR HH.MI.SSXFF AM TZR"
    4
    0.02056
    0.00099
    NLS: Language=en-us
    4
    0.02154
    0.00157
    Application 101, Authentication: PLUGIN, Page Template: 5091946581246503
    4
    0.02312
    0.00065
    ...fetch session state from database
    4
    0.02377
    0.00106
    fetch items
    4
    0.02483
    0.00065
    ...fetched 103 session state items
    4
    0.02548
    0.00194
    Authentication check: NTLM (NATIVE_CUSTOM)
    4
    0.02742
    0.00188
    ...Execute Statement: begin declare begin wwv_flow.g_boolean := f_ntlm_page_sentry_parm; end; end;
    4
    0.02930
    0.00050
    ... sentry+verification success
    4
    0.02980
    0.00042
    ...Session ID 123235901404364 can be used
    4
    0.03021
    0.00114
    ...Application session: 123235901404364, user=VARMAN01
    4
    0.03135
    0.00162
    ...Check for session expiration:
    4
    0.03297
    0.00075
    Session: Fetch session header information
    4
    0.03372
    0.00113
    ...Setting session time_zone to -5:00
    4
    0.03485
    0.00080
    Branch point: Before Header
    4
    0.03565
    0.00598
    Fetch application meta data
    4
    0.04165
    0.00081
    ...metadata, fetch computations
    4
    0.04245
    0.00076
    ...metadata, fetch buttons
    4
    0.04321
    0.00086
    Setting NLS_DATE_FORMAT to application date format: DD-MON-YYYY
    4
    0.04406
    0.00058
    Setting NLS_TIMESTAMP_FORMAT to application timestamp format: DD-MON-YYYY HH24.MI.SSXFF
    4
    0.04464
    0.00049

    Just an observance... SQL is still showing the rowid instead of the P1004_PERSON_ID ??
    where "PERSON_ID" = :p_rowid;
    should it not be :
    where "PERSON_ID" = :P1004_PERSON_ID:
    thx, Bill

  • 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.

  • ORA-01403 No Data Found error on Update

    I am having difficulty troubleshooting a form (6i) where the data can not be updated. This form was recently modified by another developer (who is no longer w/ us) and we removed a unique key from the items list in the data block, however the particular field is still contained in the table. There are no constraints on any fields in this table.
    I have a button pallette in the form and when I try to update and save, I get the "No Data Found" error message. However, I know there is data in the record but I can not figure out why the error.
    When I display the error, the sql code looks something like this:
    UPDATE db.temp
    SET P_ID=:1,S_ID=:2
    WHERE ROWID=:3
    I put a message in the do_key('list_values') trigger to show me the rowid but nothing comes up. I wonder if this has something to do with that and if so, why and how do I fix it?
    Appreciate any direction any of you can provide in coming to a solution on this. Thank you.

    I don't explicitly say ROWID=:3, what I mean, I
    didn't code the update query. My understanding is
    that it is done behind the scenes given the items in
    the data block. Ok, I couldn't tell from the post whether it was explicit or not. This is from
    Oracle FAQ:
    "I get 'NO DATA FOUND' errors. How does one handle this?
    An ORA-1403 (No Data Found) error is signalled within a replicated environment when there is a conflict in data. Here is an illustration of what happens in most scenarios featuring this error:
    Let's say we need to update a table and set column x=1 where x=9. When the first change occurs on the source database, Oracle checks to ensure that x=9. Once this transaction commits, it is queued for execution on the destination site(s). When the transaction is applied to the destinations, Oracle first check to verify that x=9 (the old value); if it does, then Oracle applies the update (update table set x = 1 where x = 9); if it does not, an entry to the DEFERROR table is logged indicating ORA-1403.
    If the application is updating primary key values, one can also expect plenty "NO DATA FOUND" errors. Primary keys should NEVER be updated. If one updates primary key values, conflict resolution also becomes extremely difficult. "
    Check your pll file and anywhere else you are using db.temp. Then check the the update using PLSQL.

  • WVI - no data found error

    Hello,
    I have text item called 'store' in my form. When the user keys in a store#, it should either provide a LOV of stores (if the store already exists in my tables). Else it should simply enable a bunch of fields/blocks in the form. However, when I key in a store that does not exist in my tables, it throws the '0RA-01403: No data found' error. The exception is supposed to catch it right? why does still it show that message in the form?
    Below is my code:
    DECLARE
      v_prop_id number;
      v_user varchar2(10);
      v_user_id varchar2(10) := fnd_global.user_id;
      v_status boolean;
      v_chk    number;
    BEGIN
    IF :PAY_HEAD.STORE is not null THEN
    IF length(:PAY_HEAD.STORE) = 5 THEN
      NULL;
    ELSE
      IF length(:PAY_HEAD.STORE) <= 4 THEN
        IF :PAY_HEAD.STORE > 6999 THEN
          :PAY_HEAD.STORE := '7' || lpad(:PAY_HEAD.STORE,4,'0');
        ELSE
          :PAY_HEAD.STORE := '1' || lpad(:PAY_HEAD.STORE,4,'0');
        END IF;
        --message(:PAY_HEAD.STORE);
        SELECT COUNT(*)
          INTO v_chk
          FROM PN_PROPERTIES_ALL
         WHERE property_name like :PAY_HEAD.STORE || '%';
        IF v_chk > 1 THEN
         v_status := SHOW_LOV('STORE_LIST');
        END IF;
      END IF;
    END IF;
      BEGIN  
       SELECT property_id
         into v_prop_id
         FROM PN_PROPERTIES_ALL   
        WHERE property_name = :PAY_HEAD.STORE;
      EXCEPTION
       WHEN NO_DATA_FOUND THEN
            message('test5');
         :GLOBAL.PAY_STATUS := 0;
         :GLOBAL.PROPERTY_STATUS := 'NEW';
         SET_ITEM_PROPERTY('PAY_HEAD.INSERT',LABEL,'Save');
         SET_ITEM_PROPERTY('PAY_HEAD.APPROVE',ENABLED,PROPERTY_FALSE);
         SET_ITEM_PROPERTY('PAY_HEAD.SUBMIT',ENABLED,PROPERTY_TRUE);
         SET_ITEM_PROPERTY('PAY_HEAD.INSERT',ENABLED,PROPERTY_TRUE);
         SET_BLOCK_PROPERTY('PAY_DETAIL_ACCTS',INSERT_ALLOWED,PROPERTY_TRUE);
         SET_BLOCK_PROPERTY('PAY_DETAIL_RECON',INSERT_ALLOWED,PROPERTY_TRUE);
         SET_BLOCK_PROPERTY('PAY_DETAIL_COMM',INSERT_ALLOWED,PROPERTY_TRUE);
         SET_ITEM_PROPERTY('PAY_HEAD.ST_CITY',ENABLED,PROPERTY_TRUE);
         SET_ITEM_PROPERTY('PAY_HEAD.ST_STATE',ENABLED,PROPERTY_TRUE);
         SET_ITEM_PROPERTY('PAY_HEAD.LOCATION_TYPE',ENABLED,PROPERTY_TRUE);
         END;
    END IF;
    END;Thanks,
    Chiru
    Edited by: Megastar_Chiru on May 3, 2010 2:57 PM

    If you are able to run your Form from the Forms Builder, I suggest you turn Debug Messages on then run your form. The Debug Messages will display an Alert informing you of the trigger that is about to execute. This is a help debugging step, just don't forget to turn the Debug Message off again! :D
    To turn Debug Messages on, go to Edit - > Preferences - > Runtime Tab -> Debug Messages checkbox.
    If your Form is web deployed and you are unable to configure Form Builder so you can run your form locally, I suggest you work with your application server admin to temporarily enable Forms Runtime Diagnostics (FRD). Check out My Oracle Support (formerly Metalink) documents:
    Forms Runtime Diagnostics (FRD) [ID 372323.1] (Forms 6i)
    or
    How to run Forms Runtime Diagnostics (FRD) in 10gR2 Forms. [ID 745280.1]
    Craig...

  • Uploading CSV using browse item ( getting no data found error )

    Hi,
    i am using below procedure to upload CSV into my table.
    CSV is having null values in some places ex: 1,
    2,0.999
    3,
    4,0.696
    below procedure working fine when i am uploading CSV like : 1,0
    2,0.999
    3,0
    4,0.696.
    My table is having only two columns, and i am getting no data found error when uploading null values CSV file.
    I went through Import data in excel to database table but no use..
    Please help me on this.
    Procedure
    ===========
    DECLARE
    v_blob_data       BLOB;
    v_blob_len        NUMBER;
    v_position        NUMBER;
    v_raw_chunk       RAW(10000);
    v_char   CHAR(1);
    c_chunk_len  number := 1;
    v_line  VARCHAR2 (32767) := NULL;
    v_data_array  wwv_flow_global.vc_arr2;
    BEGIN
    -- Read data from wwv_flow_files
    select blob_content into v_blob_data  from wwv_flow_files
    where UPDATED_BY = (select max(UPDATED_BY) from wwv_flow_files where UPDATED_BY = :APP_USER)
    AND id = (select max(id) from wwv_flow_files where updated_by = :APP_USER);
    v_blob_len := dbms_lob.getlength(v_blob_data);
    v_position := 1;
    -- Read and convert binary to char
    WHILE ( v_position <= v_blob_len ) LOOP
    v_raw_chunk := dbms_lob.substr(v_blob_data,c_chunk_len,v_position);
    v_char :=  chr(hex_to_decimal(rawtohex(v_raw_chunk)));
    v_line := v_line || v_char;
    v_position := v_position + c_chunk_len;
    -- When a whole line is retrieved
    IF v_char = CHR(10) THEN
    -- Convert comma to : to use wwv_flow_utilities
      v_line := substr(v_line, 1, length(v_line)-2);
       v_line := REPLACE (v_line, ',', ':');
    -- Convert each column separated by : into array of data
       v_data_array := wwv_flow_utilities.STRING_to_table (v_line);
    -- Insert data into target table
       EXECUTE IMMEDIATE 'insert into table_name@Schema1 (col1,col2)
        values (:1,:2)'
        USING
          v_data_array(1),
          v_data_array(2);
          -- Clear out
       v_line := NULL;
      END IF;
    END LOOP;
    END;regards
    Chandran
    Edited by: Chandran on Sep 26, 2012 10:52 AM
    Edited by: Chandran on Sep 26, 2012 10:25 PM
    Edited by: Chandran on Sep 27, 2012 1:58 AM

    Chandran,
    You can use wwv_flow_utilities.array_element to avoid no_data_found error. The function does not raise errors. So, for the line which only have one array value when you expect 2, it may be useful.
    EXECUTE IMMEDIATE 'insert into table_name@Schema1 (col1,col2)
        values (:1,:2)'
        USING
          wwv_flow_utilities.array_element(v_data_array,1),
          wwv_flow_utilities.array_element(v_data_array,2);Regards,
    Christina

  • Weird no data found error in Pro*C

    Hi,
    I am getting a no data found error when I am making a query on all_constraints and all_cons_columns in my pro*C program. It is sure that the row exists.
    I am writing here the block of pro*C code. The count returned by printf statement gives 7, which means 7 records are there. But the second query raise no data found exception. Please note that both the queries have same where clause. Pls suggest.
    EXEC SQL SELECT count(*) INTO :count:h_count
    FROM ALL_CONSTRAINTS AC,
    ALL_CONS_COLUMNS ACC
    WHERE AC.TABLE_NAME = ACC.TABLE_NAME
    AND AC.CONSTRAINT_NAME = ACC.CONSTRAINT_NAME
    AND AC.TABLE_NAME = 'CDA_BOOK_STATUS';
    printf(" The count of constraints is %d\n",count);
    /* this raises no data found ??? **/
    EXEC SQL SELECT SUBSTR(AC.TABLE_NAME,1,30) table_name,
    SUBSTR(ACC.COLUMN_NAME,1,30) column_name,
    SUBSTR(ACC.CONSTRAINT_NAME,1,30) constraint_name,
    AC.CONSTRAINT_TYPE INTO :constraint_arr INDICATOR :h_constraint_arr
    FROM ALL_CONSTRAINTS AC,
    ALL_CONS_COLUMNS ACC
    WHERE AC.TABLE_NAME = ACC.TABLE_NAME
    AND AC.CONSTRAINT_NAME = ACC.CONSTRAINT_NAME
    AND AC.TABLE_NAME = 'CDA_BOOK_STATUS';

    Are you getting the 'NO DATA FOUND 'error when you use 4 sets of normal and indicator variables?
    For example,
    EXEC SQL SELECT SUBSTR(AC.TABLE_NAME,1,30) table_name,
    SUBSTR(ACC.COLUMN_NAME,1,30) column_name,
    SUBSTR(ACC.CONSTRAINT_NAME,1,30) constraint_name,
    AC.CONSTRAINT_TYPE INTO :col1_arr INDICATOR :col1_ind,
    :col2_arr INDICATOR :col2_ind,:col3_arr INDICATOR :col3_ind,:co14_arr INDICATOR :col4_ind
    FROM ALL_CONSTRAINTS AC,
    ALL_CONS_COLUMNS ACC
    WHERE AC.TABLE_NAME = ACC.TABLE_NAME
    AND AC.CONSTRAINT_NAME = ACC.CONSTRAINT_NAME
    AND AC.TABLE_NAME = 'CDA_BOOK_STATUS';Indicator variables may not be necessary (there may not be any null values in your select statement).

  • I am getting ORA-01403: no data found error while calling a stored procedur

    Hi, I have a stored procedure. When I execute it from Toad it is successfull.
    But when I call that from my java function it gives me ORA-01403: no data found error -
    My code is like this -
    SELECT COUNT(*) INTO L_N_CNT FROM TLSI_SI_MAST WHERE UPPER(CUST_CD) =UPPER(R_V_CUST_CD) AND
    UPPER(ACCT_CD)=UPPER(R_V_ACCT_CD) AND UPPER(CNSGE_CD)=UPPER(R_V_CNSGE_CD) AND
    UPPER(FINALDEST_CD)=UPPER(R_V_FINALDEST_CD) AND     UPPER(TPT_TYPE)=UPPER(R_V_TPT_TYPE);
         IF L_N_CNT >0 THEN
              DBMS_OUTPUT.PUT_LINE('ERROR -DUPlicate SI-1');
              SP_SEL_ERR_MSG(5,R_V_ERROR_MSG);
              RETURN;
         ELSE
              DBMS_OUTPUT.PUT_LINE('BEFORE-INSERT');
              INSERT INTO TLSI_SI_MAST
                   (     CUST_CD, ACCT_CD, CNSGE_CD, FINALDEST_CD, TPT_TYPE,
                        ACCT_NM, CUST_NM,CNSGE_NM, CNSGE_ADDR1, CNSGE_ADDR2,CNSGE_ADDR3,
                        CNSGE_ADDR4, CNSGE_ATTN, EFFECTIVE_DT, MAINT_DT,
                        POD_CD, DELVY_PL_CD, TRANSSHIP,PARTSHIPMT, FREIGHT,
                        PREPAID_BY, COLLECT_BY, BL_REMARK1, BL_REMARK2,
                        MCC_IND, NOMINATION, NOTIFY_P1_NM,NOTIFY_P1_ATTN , NOTIFY_P1_ADDR1,
                        NOTIFY_P1_ADDR2, NOTIFY_P1_ADDR3, NOTIFY_P1_ADDR4,NOTIFY_P2_NM,NOTIFY_P2_ATTN ,
                        NOTIFY_P2_ADDR1,NOTIFY_P2_ADDR2, NOTIFY_P2_ADDR3, NOTIFY_P2_ADDR4,
                        NOTIFY_P3_NM,NOTIFY_P3_ATTN , NOTIFY_P3_ADDR1,NOTIFY_P3_ADDR2, NOTIFY_P3_ADDR3,
                        NOTIFY_P3_ADDR4,CREATION_DT, ACCT_ATTN, SCC_IND, CREAT_BY, MAINT_BY
                        VALUES(     R_V_CUST_CD,R_V_ACCT_CD,R_V_CNSGE_CD,R_V_FINALDEST_CD,R_V_TPT_TYPE,
                        R_V_ACCT_NM,R_V_CUST_NM ,R_V_CNSGE_NM, R_V_CNSGE_ADDR1,R_V_CNSGE_ADDR2, R_V_CNSGE_ADDR3,
                        R_V_CNSGE_ADDR4,R_V_CNSGE_ATTN,     R_V_EFFECTIVE_DT ,SYSDATE, R_V_POD_CD,R_V_DELVY_PL_CD,R_V_TRANSSHIP ,R_V_PARTSHIPMT , R_V_FREIGHT,
                        R_V_PREPAID_BY ,R_V_COLLECT_BY ,R_V_BL_REMARK1 ,R_V_BL_REMARK2,R_V_MCC_IND,
                        R_V_NOMINATION,R_V_NOTIFY_P1_NM, R_V_NOTIFY_P1_ATTN, R_V_NOTIFY_P1_ADD1, R_V_NOTIFY_P1_ADD2,
                        R_V_NOTIFY_P1_ADD3, R_V_NOTIFY_P1_ADD4, R_V_NOTIFY_P2_NM, R_V_NOTIFY_P2_ATTN, R_V_NOTIFY_P2_ADD1,
                        R_V_NOTIFY_P2_ADD2, R_V_NOTIFY_P2_ADD3, R_V_NOTIFY_P2_ADD4, R_V_NOTIFY_P3_NM, R_V_NOTIFY_P3_ATTN,
                        R_V_NOTIFY_P3_ADD1, R_V_NOTIFY_P3_ADD2, R_V_NOTIFY_P3_ADD3, R_V_NOTIFY_P3_ADD4,
                        SYSDATE,R_V_ACCT_ATTN,R_V_SCC_IND,R_V_USER_ID,R_V_USER_ID
                        DBMS_OUTPUT.PUT_LINE(' SI - REC -INSERTED');
         END IF;

    Hi,
    I think there is a part of the stored procedure you did not displayed in your post. I think your issue is probably due to a parsed value from java. For example when calling a procedure from java and the data type from java is different than expected by the procedure the ORA-01403 could be encountered. Can you please show the exact construction of the call of the procedure from within java and also how the procedure possible is provided with an input parameter.
    Regards, Gerwin

  • No Data Found Error in Transaction Source Types Form

    Hi All,
    We are using 11.5.10.2 version of Oracle Apps.
    When i navigate to INV responsibility, Setup -> Transactions -> Source Types, upon the opening of the Transaction Source Types form, i get a series of "No Data Found" error pop up messages. I searched in metalink too but couldn't find any resolution for the same.
    Does anyone know as to how to resolve this issue? Is there any patch that needs to applied? Kindly help.
    Regards,
    Hemanth

    Hi Julie,
    On the "Process Row of..." process, make sure that it is unconditional and that the Delete opertion checkbox is ticked. Deletions from the main table should only be triggered by a DELETE request which should be issued by the "Delete" button.
    On the "Apply MRD" process, make sure that the condition is "Request is Contained within Expression 1" and Expression 1 is: APPLY_CHANGES_MRD,SAVE
    This process should be triggered by the "Delete Checked" button, which should have a URL target of:
    javascript:confirmDelete(htmldb_delete_message,'APPLY_CHANGES_MRD');This triggers the confirmation popup and submits the page with APPLY_CHANGES_MRD as the REQUEST value which should be picked up by the "Apply MRD" process only.
    Andy

  • No data found Error

    Hi all ,
    Following code throwing no data found error.
    It is working properly for IF x <> 0 condition but when count(*) is 0 then it's thrrowing error.
    earlier same code working properly as our client is using this application.
    code on when_button_pressed trigger:
    DECLARE
    user1 VARCHAR2(20);
    x NUMBER(4);
    BEGIN
    FOR c1 IN( SELECT COUNT(*) x
    FROM vinay.file_proc
    WHERE sector = :sector
    and block = :block1
    and plot_no= :plotno
    and plot_size = :plotsize)
    LOOP
    x := c1.x;
    END LOOP;
    IF x <> 0 THEN
    MESSAGE('Record Exists');
    MESSAGE(' ');
    RAISE FORM_TRIGGER_FAILURE;
    END IF;
    MESSAGE(' after if');
    MESSAGE(' after if');
    win_api_utility.copy_file(ltrim(rtrim(:ADRIVE1)),ltrim(rtrim(:DESTINATION)),TRUE,TRUE);
    MESSAGE(' copy file');
    MESSAGE(' ');
    SELECT user INTO user1 FROM DUAL;
    INSERT INTO vinay.file_proc values(:sector,:block1,:plotno,:plotsize,user1,sysdate);
    COMMIT;
    MESSAGE(' ');
    CLEAR_BLOCK(NO_VALIDATE);
    END;
    :block2.path1:=:global.drive1;
    GO_ITEM('BLOCK2.ADRIVE');

    Hi,
    I think there is a problem with WIN_API_UTILITY.copy_file can anybody tell me if there is any restriction with this package.

  • AFTER INSERT TIGGER, ora-01403: no data found error

    Hi all,
    I'm trying to create a fairly simple trigger which fires after an insert on a table.
    The trigger is based on a function, defined within a package. The function is as follows...
    FUNCTION check_contract_length (V_playerId IN NUMBER)
    RETURN BOOLEAN
    IS
    months NUMBER;
    months2 NUMBER;
    BEGIN
    SELECT months_between(contract_end, contract_start), contract_length
    INTO months, months2
    FROM player
    WHERE playerId = v_playerId;
    IF months <> months2 THEN
    RETURN (true);
    END IF;
    RETURN (false);
    END check_contract_length;The trigger operates when an insert is made on to the player table, it as defined as follows...
    CREATE OR REPLACE TRIGGER play_ins_con
    AFTER INSERT ON player
    FOR EACH ROW
    DECLARE
    isover BOOLEAN;
    BEGIN
    IF INSERTING THEN
    isover := player_constr_pkg.check_contract_length(:new.playerId);
    IF isover THEN
    RAISE_APPLICATION_ERROR(-30001, 'Contract length incorrect');
    END IF;
    END IF;
    END play_ins_con;My problem is, is that every time I try to insert a row into the player table, the trigger fires and produces a "ora-01403: no data found" error. I was under the impression that as the trigger fires after an insert, this shouldn't be a problem.
    I'm also aware that this constraint can probably be implemented using a CHECK constraint, however it would be a learning curve for me to work it out this way.
    Any help would be much appreciated!!
    Cheers guys.

    I'm also aware that this constraint can probably be implemented using a CHECK constraint,
    however it would be a learning curve for me to work it out this way.Starting out by doing stuff the wrong way only increases the learning curve when it comes to doing things the right way. A check constraint is definitely the best way of doing it. However, if you must do it with a trigger this is the way to go:
    CREATE OR REPLACE TRIGGER play_ins_con BEFORE INSERT ON player
    FOR EACH ROW
    BEGIN
        IF months_between(:NEW.contract_end, :NEW.contract_start) <> :NEW.contract_length
        THEN
            RAISE_APPLICATION_ERROR(-30001, 'Contract length incorrect');
        END IF;
    END play_ins_con;
    /Incidentally, as CONTRACT_LENGTH is wholly derivable from the other columns your table structure is obviously insufficiently normalised.
    Also, note that only errors between -20999 and -20000 are reserved for our use. Any other number may be used by Oracle for its own purposes.
    Cheers, APC

  • APEX bug:9879227 (ORA-01403: no data found error when using validations)

    Hi,
    We are getting the
    ORA-01403: no data found error
    when the APEX page has validations AND a tabular form is also present on the page.
    I did see a couple of other forum links discussing the issue (bug id: 9879227 ?? ).
    But what i want to get a confirmation on is, in which release was this bug really fixed ?
    i see the release notes of 4.0.1.00.03 claiming that it is fixed
    in the release.
    we are on 4.0.1.00.03. is this bug really solved in release 4.0.1.00.03?
    are there any known work-arounds ? i tried re-creating the report multiple times, but that did not help.
    Any suggestions or work-arounds will greatly help us.
    Regards,
    Ramakrishnan

    Ramakrishnan,
    If you are talking about getting no data found when trying to save the report then take a look at the last message in this thread:
    {message:id=9971445}
    Cheers,
    Tyson Jouglet

  • Misterious "ORA-01403: no data found" error

    Hi,
    I've been searching through the forum and the Internet with no results, so I'm posting here hoping you can help me.
    Here is the situation: I had a page 30 with a tree branching to a form on a view.This worked fine until one day that suddenly, we got the "ORA-01403: no data found" error when loading the page. I guess that's normal, since the form shows the data filtered in the tree (in the tree we click on an element and pass its ROWID to the form), and when we load the page no ROWID is selected. So, the first question would be, how can I manage this situation? My first option was to have a condition in the Automatic Fetch for the Form, so that it's executed only when the ROWID item is not null. It worked a couple of times. After a while, it crashed again.
    Tired of trying things, we decided to copy this page 30 to another page (page #80). Surprisingly, page #80 worked meanwhile #30 crashed. And they are completely the same, the data has not changed either.
    Could it be that page #30 somehow is corrupted? It's really strange that the same exact copy of the page works with one ID but not with another one.
    Has someone experienced this situation? it makes me feel like the app is unsecure and unstable. Any ideas, please?
    Apex version: 4.1.1 on APEX listener.
    Thanks,
    Elena.

    fac586 wrote:
    Elena.mtc wrote:
    Thanks for your response. The form is a single row (a form on a table or view). Here is what I've found out thanks to your tips:
    It affects to all the three users that I have access with.Try it with a new user that has never accessed the page before.
    I used the debug mode (new to me, so I'm kind of slow on this, still) and wrote an exception message on the Automatic Fetch Row and I managed to know the ROWID that the fetch process is using in the where clause. Of course this ROWID does not exist in the table, so the first question that comes to my mind is "how come and from where is the page getting this ROWID?". I don't know and can't comment because I can't see the app. ;-)
    If the ROWID is stored in an item, check the Maintain session state property isn't set to Per User.I changed this and seemed to work. But it crashed later. I made a computation process to set to null the rowid's when loading the page. After reset, I deleted the computations (due to application functionality) and it worked. However, I do not trust this page anymore. So we created a new fresh app and copied this page. Luckily we are on development environment :)
    >
    So, I made a computation to initialize to null the item that saves the ROWID, and now it worked.
    This page that I'm testing on is #30, but the valid page is #80 (it has changes made on the look and feel of the page). So, I deleted page #30, and copied page #80 (which works perfectly) into #30. And it crashes again (obvius, since it doesn't have the computation that gives null to the rowid item). What's "interesting" is that I still see the exception message I wrote in the older version of page #30. So, it seems that some values need to be purged and that the delete is not clean, but how? I'm not entirely clear on what you've been doing there, but it does indeed all sound rather odd.
    I suspect that you wouldn't be able to reproduce this problem on apex.oracle.com. However, it would probably be helpful if you could upload the app and provide developer credentials to the workspace so we could see how it works and if there's anything obvious (or not) that might cause this problem.Unluckily I cannot do this. Thank you anyway for the help, it's hard to explain when something so weird happens.
    Thanks!
    Elena.

  • ORA-01403 - No Data Found - Error processing validation

    Dear all
    I hope to find a solution for this error.
    ORA-01403 - No Data Found - Error processing validation
    Best Regards

    Dear Patrick,
    Thank you for your response.
    I solved or worked around the problem by adding exception handling lines to the end of all PL/SQL validation functions used in this page
    For example, if a function used in equation, it is not allowed to return null so I made it return 0 in case of exceptions (as in below code)
    -- NO_DATA_FOUND is ORA-01403
    EXCEPTION
    WHEN NO_DATA_FOUND THEN return(0);
    Sincerely Yours
    Mahmoud Rabie

Maybe you are looking for

  • BPC for Excel Input Schedules

    Hi With Input Schedules in BPC for Excel, is there an easy way to see which cells get uploaded ?, for example, if I open a report written by another person, how can I easily see which cells get upload when MNU_ESUBMIT_REFRESH runs ?. Thanks in advanc

  • My ipad has a "hang up" I can´t get pas! What to do?

    I can´t even turn it off!

  • How to install XP - need the idiots version

    Hi there I have read through a number of the threads on this board regarding installing XP in a partition and I understand that you need to go to the Toshiba site and download all the drivers for XP first and then put them on a CD (?) and then start

  • Memory leak with AS3 Crypto Wrapper library

    Hello We're using the AS3 Crypto Wrapper library project and finding it significantly faster than Google code as3crypto to the point where our new project depends upon its performace. Hwoever we have run in to a major problem regarding memory managem

  • Problems with TED video podcast in ipod classic 80gb

    I have a lot of TED video podcast on my itunes on PC but i can't listen and view it on my ipod, i've red somewhere that video podcast with 46kbps are no longer supported by ipod classic? is that right? there are any solutions? please help me, i'm rea