Customize No data found error in report

4.2.1
thm:24
Hi Everyone,
  I have a page with a couple of classic reports. When the underlying sql returns no data, it throws the standard "No data Found" message in that report region. Is there a way we can further customize that by adding something like - no data found for he selected range ?
Anyone has done this?
Thanks,
Ryan

Hi Ryan,
Under Report Attributes, scroll to the "Messages" section. There you can edit the "When No Data Found Message", which is default set to "no data found"
Regards,
Vincent Deelen

Similar Messages

  • 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

  • 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

  • Error saving column settings with ORA-01403: no data found Error

    Hi
    I have a region with multi row report updatable.
    When I am trying to change the query I am getting below error.
    Anybody let me know what will be the problem.
    ORA-01403: no data found
    Error saving column settings
    Regards
    Kiran

    Hi
    I was using below query for this region.
    SELECT
    result.segment1 Item#,
              result.inventory_item_id,
              result.revision,
              result.lot_number,
              result.Lot_Onhand,
              result.Heat,
              result.Cert_Site_Number Cert_Site_Number_Display,
              result.status_code Status_Code_Display,
    result.Cert_ID Cert_ID_Display,
              result.Cert_Site_Number,
              result.status_code,
    result.Cert_ID,
              result.transaction_id,
    result.po_header_id,
    result.po_line_id,
    result.rcv_transaction_id,
    result.shipment_header_id,
    result.shipment_line_id
    FROM          
    SELECT      
    msi.segment1,
              mmt.inventory_item_id,
              mmt.revision,
              mtln.lot_number,
              xx_utility_pkg.get_available_qty(mmt.inventory_item_id,mmt.organization_id,mmt.subinventory_code,mtln.lot_number,'ONHAND') Lot_Onhand,
              mtln.attribute1 Heat,
              mtln.attribute2 Cert_Site_Number,
              mms.status_code,
                        (          SELECT     clx.cert_id
                        FROM     xxqc.cert_mst cm,
                                  xxqc.cert_lot_xref clx
                        WHERE      cm.cert_id = clx.cert_id
                        AND cm.cert_type='MILL'
                        AND     clx.lot_no = mtln.lot_number
              ) Cert_ID,
              mmt.transaction_id,
              rsl.po_header_id,
              rsl.po_line_id,
    mmt.rcv_transaction_id,
    rt.shipment_header_id,
    rsl.shipment_line_id
    FROM      mtl_material_transactions mmt,
              mtl_transaction_lot_numbers mtln,
              mtl_material_statuses_tl mms,
              rcv_transactions rt,
              rcv_shipment_headers rsh,
              rcv_shipment_lines rsl,
    mtl_system_items_b msi
    WHERE     mmt.transaction_id = mtln.transaction_id
    AND          mmt.organization_id = mtln.organization_id
    AND          mtln.status_id = mms.status_id
    AND          rt.transaction_id = mmt.rcv_transaction_id
    AND          rsh.shipment_header_id = rt.shipment_header_id
    AND          rsl.shipment_header_id = rsh.shipment_header_id
    AND          rsh.organization_id = mmt.organization_id
    AND          rsl.item_id = mmt.inventory_item_id
    AND msi.inventory_item_id=rsl.item_id
    AND msi.organization_id = mmt.organization_id
    AND          rsl.po_line_id = DECODE(:P5_PO_LINE_NUMBER, 0,rsl.po_line_id,:P5_PO_LINE_NUMBER)
    AND rsl.po_header_id IN (     SELECT     po_header_id
                        FROM      po_headers_all
                        WHERE      segment1 = :P5_PO_NUMBER
                        AND      org_id = :P5_ORG_ID)
    AND          mtln.status_id = 90 -- Which is 'T' Status means Temporary
    AND          mmt.transaction_action_id = 27
    AND          mmt.transaction_source_type_id = 1
    AND          mmt.transaction_type_id = 18
    ) result
    WHERE result.Lot_Onhand > 0
    when I use above query I am able to update the region perfectly.
    But when I comment last WHERE CONDITION I am getting above problem.
    What could be the possilbe reason for this?
    Regards
    Kiran Akkiraju

  • ORA-01403: no data found error (given by edit link of APEX-made form)

    Hello!
    I am a newbie in apex, so please forgive me if my question is stupid or obvious. I got a bit confused because of a problem, and I really hope that you professionals can give me some clues of where could I begin the elimination of this error.
    I made a report and a form in another page with APEX's tool Add Form/Report and Form. The report shows a full table, and the rows of the table are editable. However, I have rows which I can't edit because APEX gives me the following error:
    ORA-01403: no data found
    Error Unable to fetch row.
    Not all rows do this, but I have a few that do. Of course the report shows them, so I think they must exist. I didn't change anything special on the APEX-made items or processes.
    I thought that the problem could be with my data, but I couldn't see anything weird in that rows.
    Does anyone have an idea of what can this be caused by? I have APEX 2.1.0.00.39.
    Thanks,
    Eszter

    Hi Andy,
    Thank you very much for your time!
    The fields in the form are all right. The fields get filled in perfectly in most of the cases, only those few rows don't :(
    However, now that you wrote of the process of row fetching, I think that maybe I have an idea of what is happening. My table has two primary keys (two fields together make the primary key, I don't know how it's called in English), one of them is a date. (I know that this is quite a bad practice, but, much to my regret, I cannot change it.) Now, this date is in YY-MON-DD format, which is used by my language.
    One of this dates is from 1800's. As my report shows it, the year gets truncated to the last two character. APEX passes this value into the field of the form using varchar2, and when it tries to cast it back to YY-MON-DD format, then it supposes it's from 1900's instead of 1800's. With 19xx however it doesn't find my field.
    Does this sound logical? It seems logical to me, but I am a beginner... :(
    Still, if this is the core of the problem, it's most possibly not the only problem, because I have dates from 19xx which can't identify their rows... But I am suspicious because of these date things. If you have any idea then please let me know.
    Thanks,
    Eszter

  • Getting no data found error while CSV download

    Hi,
    I have a report generated from the PL/SQL returning the query and I enabled the CSV Download option. But, when I try downloading the report contents using CSV download option, the excel sheet contains message "no data found". I enabled sorting and sum on few columns. Is it anywhere related to CSV download? Any solution would be really helpful..
    Thanks,
    Prabhakar

    Thanks for the help!! yep, it is indeed the wrong session state value. In the report, I was modifying the value to display the report, hence when CSV download is given, it was taking wrong session state value. So, giving "no data found" error. Probably, this may help some people.
    Regards,
    Prabhakar

  • Tabular Form and Link to document and No Data Found error

    I have used this numerous times in an INTERACTIVE REPORT to link records out from the report to a document in a folder on our server and it works beautifully thanks to one of you guys who helped me a couple of years ago. In the column for which I want to use as a link I do the following:
    LINK TEST #ISO_NUMBER#
    LINK ATTRIBUTES a href=#DOC_LINK#; TARGET="_BLANK"
    URL #DOC_LINK#
    I've been banging my head against the wall trying to figure out why I keep getting a 'No data found' error in my TABULAR FORM. The good news is I figured out why it's happening. The bad news is I do need to link out to the documents listed in my tabular form that are saved on the server.
    Is there any other way to do this?
    Application Express 4.0.0.00.46
    TIA,
    Alexandra

    Finally back...
    I have a tabular form that lists documents stored on one of our servers. In an interactive report I can set up a link to those docs using the document number column in the IR. I can't get it to work in the same way on the tabular form. Hopefully the steps of the catalog process will shed light on what may be the problem:
    Step One
    1. User1 catalogs doument using standard form (page 3) on DOC_INFO table.
    2. Button on form redirects to Approval Tabular Form (for this example, page 100). This tabular form displays DOCUMENT_NUMBER (display as text saves state), APPROVER (select list), APPROVED(select list), RELEASED (select list) fields among others from DOC_APPRV_DOC table
    3. Add Row adds fields in #2 above and other fields
    4. User1 selects APPROVER in select list and Adds Row for all additional APPROVERS required
    5. User1 hits SUBMIT button
    Step Two
    1. User2 opens different page but Approval Tabular Form (for this example, page 200) on same DOC_APPRV_DOC table, restricted to :P101_USERNAME
    2. User2 uses APPROVED select list to approve or reject
    3. User2 hits SUBMIT button
    Step Three
    1. User1 opens Approval Tabular Form (page 100) with User2 (and all other documents requiring approval) results
    2. If rejected User1 uses Reset Approval checkbox and select list on User2's tabular form is reset
    3. If approved User1 uses Released submit list and and record is deleted from User2's tabular form
    The Problem
    User2 ought to be able to review each of these documents on the server. In other parts of my application, an interactive report is used, I've got a case statement in the report creating the link, and have the column itself setup up so that User2 merely clicks on the DOCUMENT_NUMBER on the report and he's redirected to the document itself.
    This works fine when set up the same way on the tabular form ONLY THE FIRST TIME a row is added. If I ADD ROW for any additional documents the DOCUMENT_NUMBER field on the tabular form does not populate on User1's form.
    The entire process works beautifully if the link is not set up.
    Note that from the standard form, the DOCUMENT_NUMBER is sent to a hidden item (default = :P3_DOCUMENT_NUMBER) in a region above the tabular form (page 100). This is then used to populate the DOCUMENT_NUMBER on the tabular form as the default value (:P200_DOCUMENT_NUMBER).
    Your thoughts? Thanks in advance!
    Alexandra

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

    Hello All,
    I have written a procedure to upload the .csv file data into one of my database Table. It was working fine some days back, but when I try to upload a .csv today, it gives me error "No Data Found".
    This is the Query I am using to fetch the data from wwv_flow_files table:
    select blob_content into v_blob_data
    from wwv_flow_files
    where last_updated = (select max(last_updated) from wwv_flow_files where UPDATED_BY = UPPER(:APP_USER))
    and id = (select max(id) from wwv_flow_files where updated_by = UPPER(:APP_USER));
    this is returning No data found error.
    Please suggest what is the problem.
    Apex vesion : 4.0.1.00.03
    DB: 11g
    Thanks
    Tauceef

    Hi Trent,
    As I said, I am using this code from a long time ago, it was working fine before and I have uploaded many files using this code.
    But suddenly I don't know what happen it start giving this error.
    For making sure that this statement is the one which is giving "no data found" error I commented all the other select statements
    and I still got no data found. So it's confirmed.
    One more thing, I tried to run this code in SQL command by hard coding the :APP_USER value and this is what I got in the result:
    BLOB_CONTENT
    [unsupported data type]
    means this code is returning something but at run time it is giving no data found.
    Please suggest.
    Thanks
    Tauceef

  • 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

  • Getting 'No Data found' Error when clicking the edit link to edit a record.

    Application Express 4.2.0
    Database: oracle 11g
    Hi Guys
    I am getting an error whenever i try to edit some of my entries by clicking the edit link, i have a composite Primary key attributes of three columns ( Budget Year ('YYYY'), Training Name('VARCHAR') and Emp Code ('VARCHAR')
    Some records will load when i click Edit but some wont and return 'ORA-01403: no data found' error.
    Any help will be appriciated.
    Thanx
    MATT

    Hi,
    Please create example about problem to apex.oracle.com and share developer login details to workspace.
    Regards,
    Jari

  • 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

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

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

Maybe you are looking for

  • Case #0182844369 : faults with version 5.5 but who do I talk to?

    Hiya I have had extensive help from your support - but they still have not found the reason for the problem. See the case notes at the bottom of the page But I have inadvertantly found the reason the line breaks are being altered by Dreamweaver. See

  • Passing of parameters

    Hello, I have a situation where I am passing an operator as a parameter to a function. My question is how can I make use of the operator in my code. Function f1(start_date,par_operator) Operator can be 'GT' or 'LT' -- meaning Greater than '>' or Less

  • Unable to Connect Wifi.

    I have a Blackberry Curve 9360 with OS 7 Bundle version 1555 after upgrading to OS 7 bundle version 2355  am unable to connect to wifi. am able to connect to my house wifi but not my office wifi dont understand what the problem is.  When i switch on

  • By mistake i just unistall ms office 2010 from install/uninstall kindly help me

    Hello, my self manan patel i have bought new laptop on january ( Intel 2nd Gen Core i5 i5-2410M / 2.3 GHz ) by mistake i have uninstalled microsoft office 2010 kindly help me that how can i activate again... looking for help... thanks in advance

  • Just got iphone my podcasts play but are "distorted" pixels

    Just set up the iphone. All is working fine but podcasts only play distortly. Pixel breakup through the whole podcast. I did double check that the podcasts were "formated for ipod" and they were.