Delete_Record FRM-40405, FRM-40401

Hi all

I use Oracle forms 6i.
I have a delete button to remove the current detail record. The record deletion property is 'isolated '... I just write "Delete_Record;" in the trigger WHEN_BUTTON_PRESSED of the button 'delete '. Even after pressing the button, the line as expected for deletion is always displayed. How do I remove?
Also how can I commit like I can't give commit_form here, since it raises frm-40405 no change found error and error frm-40401.

I have a 'Description' point that is not an element of database and update property is not, and I also point 'Information' that has been validated for 'Not Null' when-validate-item trigger.

commit_form shows no error if I upgraded the mesg to 25... and then after validation is reset to 0.

I have my retail block in one different canvas other than my master block. I invoke the block of detail using SHOW_VIEW ('DTL_BLK')

Kindly help.

Thank you
Sri

Published by: hokoba on August 28, 2012 05:20

The delete button must be in the same block as the folder that you want to remove, or forms navigates away from the line and the block you want to delete. .. .or set mouse navigate the button for no.

And never set message_level above zero. You simply hide errors you should be handling.

Tags: Oracle Development

Similar Questions

  • FRM-40401, 40-405

    Hi all

    I have an application where I get this message in many forms. I have searched the forum and find that there are a lot of different answers, I tried some but are not really satisfied.

    Write a trigger-ERROR and simply delete these messages means, I need to take care of all the other errors, myself, correct? Seems dangerous.

    Increase the: SYSTEM. MESSAGE_LEVEL will work I guess, but where I would put it to 'normal '? In a trigger output?

    Then there's the ' IF: SYSTEM.» FORM_STATUS = "CHANGED" that sounds like the best solution, but then I read in another thread that it does not really work. Forms builtin function commit will manage the FRM-40401 message anyway? Or is it all about which relaxation to put this code in?

    Any useful comment is quite welcome!

    Concerning

    I think that the best solution would be to dig into your form and find out why you get the FRM-40401-no changes to be saved and FRM-40405 - no change to apply instead of delete. To remove the errors, the problem persists. There are two ways you can "dig" in your form to see what is happening. If you are able to run your form from the forms Builder, you can run the form with active debugging Messages. This will let you see the trigger that fires when you receive messages. You can also enable debugging Messages in the application by adding "debug_messages = YES" to the URL.

    Another option would be to use Trace shapes on your forms session. This will create a log of your session of forms that you can check and see what is at the origin of the messages. There is some changes to set environment where forms must write the log files too. Download with your application server administrator to see if the variables FORMS90_TRACE_DIR or FORMS_TRACE_DIR are set. See Metalink Doc ID: 209372.1 for all the details to configure this option.

    Finally, if you really want to delete just this messages, you can change your level of forms On-Error trigger to remove, but you're right, you must code the On-Error trigger so it handles still all other errors - that is not so difficult. Here is an example:

    DECLARE
       al_id     ALERT;
       al_button  NUMBER;
    BEGIN
       IF ( ERROR_CODE IN (40401, 40405) ) THEN
          /* Here are the Errors we want to supress */
          NULL;
       ELSE
           /* Now Lets handle all other errors that might happen */
          /* This example assumes you have an Alert defined in the
              ALERTS node of the Object Navigator.  */
          al_id := Find_Alert('ERROR');
          Set_Alert_Property(al_id,ALERT_MESSAGE_TEXT, ERROR_TEXT;
          al_button := Show_Alert(al_id);
          RAISE Form_Trigger_Failure;
    END;
    

    Hope this helps,
    Craig B-)

    If a response is appropriate or useful, please mark accordingly.

    Published by: Silvere on June 9, 2010 09:00

  • How can I hide frm 40401 no changes to save

    Hi all
    I would not hide frm 40401 no changes to save
    I have create a (level of relaxation/block of form level) to hide a bed in the message
    ON-MESSAGE
    
    declare
    msgnum number := message_code;
    begin
    IF msgnum = 40401 THEN 
    Message('my own message.'); 
    end if;
    end;
    and the message still appears what can I do?
    I thank all

    Published by: Ahmed_Arafa on January 20, 2012 09:40

    Ahmed_Arafa wrote:
    Hi all
    I would not hide frm 40401 no changes to save

    Create a form named level trigger preform
    and write the following code

    :SYSTEM.MESSAGE_LEVEL := 5;
    

    Hope this will help you

  • What trigger to use to insert data into the table db forms

    Hello

    My form is current having a block of database with the table reference. When you enter data into the form field and click Save. Automatically record is inserted in the database table.
    I want to do this under manual insert. I changed the block of data to a data non-base. Where should I write the insert statement to insert data into the table.
    Is - shutter release key of the form-level validation?

    Please notify.

    Thank you
    Didi.

    You can guide me how to remove the message FRM-40401 no changes to save and instead, I wanted to put 1 transaction record successful... some like it like that.

    Hi didi.
    And this is my last post I'll sleep. ;)
    Take form level trigger named preform
    and write on it

    :SYSTEM.MESSAGE_LEVEL := 5;
    

    I hope this works...

    Hamid

    Mark correct/good to help others to get the right answers. *

  • form do not maximize due to preform

    I made: system.message_level: = 5; before getting rid of FRM-40401-shaped.
    and a TIMES-NEW-FORM-INSTANCE I wrote Set_Window_Property ('WINDOW1', WINDOW_STATE, MAXIMIZE);
    Set_Window_Property (FORMS_MDI_WINDOW, WINDOW_STATE, MAXIMIZE);

    but because of the shape of the PRE-FORM line not to maximize on the departure. What to do?

    Hello
    Put the trigger on PREFORM set_window_property.

    PS

  • Hide alerts

    How to hide the default alerts in forms 6i


    I don't like to get an alert that each time, commit user number.


    Pls guide me...

    Hello

    See if that would help you

    How can I hide frm 40401 no changes to save

    If this is not the case when this happens? Just explain what you are doing.

    Concerning
    SANAE

  • Trigger SAVE data non-base items

    Hi all
    I have a point of non-base of data in a block, in which I need to save the value of the element in another table.
    My form just to the default 'save' button at the top, where do I put the code to save the value when the user presses the button "Save".
    Since then when I change the value of the non-base data element and press 'save', FRM-40401: no change to save is fast.

    Please suggest. Thank you.

    You can set the property "Lock Record" of the non-base of data element, to say the forms that the line has been updated, even if no element corresponding to a database column has been updated.
    Then you can wright code to store the value in the subsequent update trigger.

  • FRM-40301 query caused no records to recover - is lost

    Hello
    I have a form with 2 tabs. the first tab is based on a block of DB and the second tab is enabled only if no records are returned by the first tab. The form works fine. But if the user enters some criteria of the query, which does not have any matching record in the comic strip, in the first tab, the form returns no error message (FRM-40301 query caused no records to retrieve). I need a way to indicate to the user that no records have been retrieved.

    the trigger for the error to the form level is-
    DECLARE
         error_value   NUMBER (5) := ERROR_CODE;
         lv_errtyp       VARCHAR2 (3) := ERROR_TYPE;
         lv_errtxt       VARCHAR2 (800) := SUBSTR (ERROR_TEXT, 0, 100);
         dbmserrcode   NUMBER := DBMS_ERROR_CODE;
         dbmserrtext   VARCHAR2 (200) := SUBSTR (DBMS_ERROR_TEXT, 0, 100);
         alt_num            NUMBER;
         alert_is        alert;
         v_err             error_tools.error_rec_type;
    BEGIN
    
         IF error_value = 40735 THEN
              alert_is := FIND_ALERT ('ME_ERROR');
              SET_ALERT_PROPERTY (alert_is, alert_message_text, ERROR_TEXT);
              alt_num := SHOW_ALERT ('ME_ERROR');
    
              IF alt_num = alert_button1 THEN
                   RAISE form_trigger_failure;
              END IF;
         ELSIF error_value IN (41039, 42100, 40401, 40405, 40102, 41009) THEN
              NULL;
         ELSIF error_value IN (40202) THEN
              alert_is := FIND_ALERT ('ME_ERROR');
              SET_ALERT_PROPERTY (alert_is,
                                              alert_message_text,
                                              :SYSTEM.current_item || ' must be entered. ');
              alt_num := SHOW_ALERT ('ME_ERROR');
         ELSIF error_value IN (40508, 40509) THEN
              alert_is := FIND_ALERT ('ME_ERROR');
    
              IF dbmserrcode <= '-20000' OR dbmserrcode >= '-20999' THEN
                   SET_ALERT_PROPERTY (alert_is,
                                                   alert_message_text,
                                                   error_tools.get_oracle_error_desc (dbmserrtext));
              ELSE
                   SET_ALERT_PROPERTY (
                        alert_is,
                        alert_message_text,
                        lv_errtyp || '-' || TO_CHAR (error_value) || ': ' || lv_errtxt
                   );
              END IF;
    
              alt_num := SHOW_ALERT ('ME_ERROR');
         ELSE
              alert_is := FIND_ALERT ('ME_ERROR');
              SET_ALERT_PROPERTY (
                   alert_is,
                   alert_message_text,
                   lv_errtyp || '-' || TO_CHAR (error_value) || ': ' || lv_errtxt
              );
              alt_num := SHOW_ALERT ('ME_ERROR');
         END IF;
    
         error_tools.clear_errors;
    END;
    I checked if I catch any exception no_data_found in the form. In the query before relaxation so that DB, I have the following code: -.
    BEGIN
    some_code..................................
    
         BEGIN
              IF :exceptional_events.screening_group_num IS NULL THEN
                   SELECT scr.screening_group_num
                     INTO scr_group_num
                     FROM screening_groups scr
                    WHERE UPPER (scr.screening_group_name) =
                                   UPPER (:exceptional_events.screening_group_name);
    
                   :exceptional_events.screening_group_num := scr_group_num;
              END IF;
         EXCEPTION
              WHEN NO_DATA_FOUND THEN
                   NULL;
         END;
    
    some_code.........................
    END;

    Hello!

    May your: system.message_level is set to something greater than "0"?

    Please try to catch the FRM-40301 in a trigger - MESSAGE like:

    begin
    if
     message_code = 40301
    then
      message ( 'Your Query returns no records. Please enter again or press STRG-Q to leave enter-query mode.' );
      message ( ' ' );
      clear_message;
    else
      message ( message_type || '-' || message_code || ': ' || message_text );
    end if;
    end;
    

    Concerning

  • on frm 40202

    When I use "insert record" in the default toolbar to create a new record, the focus of the cursor on the required text field, I can use "delete record" in the toolbar by default to delete

    but now, I add a button with a shutter release button on the form and write the command "delete_record" in the trigger.

    When I use "insert record" in the default toolbar to create a new record, the focus of the cursor on the required text field, I can't use the button Delete and show the error 40202

    I want to know how the record 'delete' in the default toolbar can do this.

    Hello

    CASE 1.
    =======

    FRM-40202 can occur if you use button objects in a block that also contains the required fields or with validation.

    To avoid the FRM-40202 when a button is clicked, set the item property 'Mouse navigate' false for the button.  The default value is TRUE.

    For example:
    ------------
    You have a block on dept that contains the field mandatory dept.deptno and a button with a shutter release button when pressed.

    When you press the button, you get FRM-40202 "Item should be entered" when the button is pressed.

    Set the property 'Mouse navigate' false, and required field validation will not be triggered when the button is pressed.
     
     
    Explanation of the solution:
    ==================

    When 'Mouse navigate' is false, Oracle Forms does not navigation to the button when it is pressed.  When 'Mouse navigate' is TRUE, Oracle Forms accesses the element and navigation lights and validation of the triggers that cause
    FRM-40202 happen.  You don't have to navigate to the shutter when key pressed the firing button.

    ==================================================

    CASE 2.
    =======

    FRM-40202 may appear as expected using boxes option and groups of radio with the required fields, but you are by clicking on the option button did not get selected consistently.

    This behavior is Oracle Forms bug 336430336430 bug has been reported on Oracle Forms 4.5.6.5.5 and reproduces also in Developer/2000 version 1.3 32-bit Oracle Forms 4.5.7.0.10.  This bug is still an open with the development question.

    For example:

    o you have a group of radio as the first element in the block, with 2 radio buttons.  The first option button is the default.

    o the second item in the block is a required text element.  For example, emp.ename

    o launch the form

    o click on the radio button 1 (default), then click in ename and leave the field blank

    o If you click the default radio button after leaving the ename required field blank, you will receive FRM-40202 as expected, but the default button is selected.

    If you click on the option button 2 (not the default) after leaving the field empty mandatory ename, you receive FRM-40202 as expected, but box 2 will NOT be selected.
       
    Workaround for Bug 336430:
    ---------------------------------------------

    Set the property to point to 'Mouse navigate' FALSE for the Group of radio buttons.  This will allow selection buttons without moving the focus out of the required text element. Thus, the FRM-40202 will not happen.

    If you must leave the property 'Mouse navigate' TRUE to the Group of buttons radio, then you can make the text of point required field not required, but you must validate yourself.

    Explanation of the solution:
    =====================

    The behavior of the selected radio button after receiving FRM-40202 is not the same as the selected option button is the default. This inconsistency is reported in Oracle Forms bug 336430.

    ==================================================

    CASE 3.
    =======

    FRM-40202 may appear when you try to ENTER QUERY mode.  This is Oracle Forms bug 324949.

    Bug 324949 occurs is in ENTER QUERY mode when the first item in the block has a format mask and element is required.   This bug has been fixed in Oracle Forms 4.5.7 and above.

    For example:
    ------------

    1. create a form with a block based on the scott/tiger emp table
    2. the first field in the form should be empno
    3. Add a format for the empno of 9999 field mask
    4 run the form
    5. enter a number in the empno field
    6. use the BACKSPACE key to delete the value from the empno field
    7. Select query-> entry to Runform menu by default to enter a query.
    You will get FRM-40202 as expected.
    8 select record-> Clear from the menu of default Runform
    9. Select query-> entry to Runform menu by default to enter another query.  Again, you get FRM-40202.
    10. This prevents you from entering a query, running a query, the compensation block, remove the folder, etc..

    Workaround for Bug 324949solution:
    ----------------------------------------------
    This bug does not reproduce when the first item in the block is required, but is not a format mask.  For example, to remove the format mask the first element.

    Explanation of the solution:
    =====================

    Bug 324949 is originally FRM-40202 not properly occur if the first element contains a format mask.  Upgrade Oracle Forms 4.5.7 or above to fix this bug.

    =================================================

    CASE 4.
    =======

    Oracle Forms bug 273420 causes FRM-40202 occur when you try to call another form using OPEN_FORM, when a required field is blank on the active form.  This bug affects Oracle Forms 4.5.5.X and 4.5.6.X and is reported fixed in 4.5.7.X.

    Workaround for Bug 273420:
    ----------------------------------------------
    To avoid this error, set the property validation_unit to form_scope form before using OPEN_FORM.

    For example:

    / * In complete relaxation you use to open the form * /.

    BEGIN
    SET_FORM_PROPERTY ("formname", VALIDATION_UNIT, FORM_SCOPE);
    OPEN_FORM ('formname');
    END;

    / * Create a when-window-activated trigger in the form of call.  This * /
    / * put the validation unit to item_scope back of * /.
    / * form. **/

    BEGIN
    IF GET_FORM_PROPERTY ("formname", VALIDATION_UNIT) = "FORM_SCOPE".
    THEN SET_FORM_PROPERTY ("formname", VALIDATION_UNIT, ITEM_SCOPE);
    END IF;
    END;

    Explanation of the solution:
    =====================

    OPEN_FORM should not attempt to validate the current form before you open the second form. Setting the validation unit will work around this error by specifying the scope of validation to flush at the level of the form, instead of the default ().

    ==================================================

    CASE 5.
    =======

    FRM-40202 may appear when you try to undo changes made to a record that contains a required field.

    To undo changes made to a record without having to enter values in the mandatory fields:
     
    1. use registration-> clear Menu Option:
    ----------------------------------
    The form operator may use registration-> clear menu in Oracle Forms Runform default menu.

    2 use the built-in function CLEAR_RECORD:
    ------------------------------
    You can call the built-in CLEAR_RECORD Oracle Forms programmatically.

    For example:

    You may have a "Cancel" button and the following
    When-pressed key triggering factor:

    BEGIN
    CLEAR_RECORD;
    END;

    NOTE:

    Make sure the item property 'mouse navigate' button is false. Otherwise required field validation will not allow navigation out of a required field when you try to press the button 'Cancel', if the data did not intervene.
     
    Explanation of the solution:
    ================

    CLEAR_RECORD causes Oracle Forms delete or empty, the current record in the block without validation.

    ==================================================

    BOX OF 6.
    =======

    FRM-40202 may occur to navigate to another block after using a
    A relaxing time-new-Record-Instance attribute default values programmatically to block that you navigate.

    To avoid FRM-40202 in this situation, use the trigger when-create-Record to assign default values instead of relaxing when-new-Record.

    Explanation of the solution:
    =================

    Once - new - Record - Instance trigger, SYSTEM. RECORD_STATUS on INSERT.  After the trigger when-create-Record, the SYSTEM. RECORD_STATUS stay AGAIN, and the user will be able to navigate to another block.
     
    Relaxation when-create-Record only filled a folder with the equivalent of default values and does not attempt to change the status, and until the operator changes the record, the situation will remain NEW.

    Note:

    Bug 308106 is originally as NEW Oracle Forms 4.5.6 not correctly report the State of the file.  The SYSTEM. RECORD_STATUS should reflect the NEW after the
    When-create-Record trigger fires and reflects the status of the INSERT.  This bug is reported as fixed in Oracle Forms 4.5.7.X.

    ==================================================

    Additional information:
    ==================

    Oracle Forms 4.X Reference Manual Volume 1.
    Chapter 2, triggers
    When-create-Record Trigger
    Once - new - Record - Instance Trigger
    Chapter 4, System Variables
    SYSTEM. RECORD_STATUS

    Please check and let me know

  • Finally, mite update frm FF 3.6 at 14 for html5 (on the work of google last updated frm 3 to 5 services dint). will be history, bookmarks, site prefs etc be preserved?

    Finally, mite update frm FF 3.6 at 14 for html5 (on the work of google last updated frm 3 to 5 services dint). will be history, bookmarks, site prefs etc be preserved? probably used to active connections. extension & plugin compatibility is not really important.

    also, so simply, I hit update and do, will that opera-like "Firefox" menu appear or I have to do a clean install to get it?

    If you do the update of in Firefox bookmarks, preferences, history, etc. will be there. Active connections should work for most as well. The majority of your extensions and the plugin should work as well, but you may need to update after the update of Firefox.

    On Windows XP the menu Firefox is not by default, but if you want you can always enable it by going to view > toolbars and unchecking the menu bar

  • has been able to play gta vice city and san andras and now I changed the frm windows XP to 7. but now I'm not able to play another game

    original title: card__ graphic

    I was able to play gta vice city and san andras and now I changed the frm windows XP to 7. but now I'm not able to play any other game m .is it probkem of bone or my graphics card?

    -----------------

  • Frm net 3.5 install problem

    I also have a similar problem.  I had Mr. Fix It uninstall 2.0 so 3.5 can be loaded. There is a KB associated with 3.5 and install a 3 .exe files associated with the 3.5.  Not the case that I could find does say to install all or 1 or 2 of them before you run the installation of 3.5 or not. I have a 'watered' LM and want to uninstall (2008 version) for a worm to essenstials.  Where should I start? I guess I need atleast net frm 2.0?

    Hello

    You must install the previous version before installing .net framework was last updated.

    Follow the steps in the article, and check if that helps.

    http://support.Microsoft.com/kb/976982

    If the problem persists, follow the steps in troubleshooting section and check if that helps.

    http://support.Microsoft.com/kb/906602

  • I can't uninstall windows live frm my computer, I tried, and I'm not in my control panel, but still on my pc

    Hi I'm strees nw I'm tryin to uninstall windows live programs frm my computer so I can install new programs, but I can't do that I tried other ways but always get it can u pls help me.

    Hello

    Look for Windows live essentials

    Welcome to Windows Live Solution Center
  • How to recover frm the checkbox value

    Hello

    How to recover frm the checkbox value

    can someone help me on this topic

    Thank you

    Sujith

    CheckboxField class

    Boolean getChecked()

  • FRM-30187: size of the column of type CHAR in the record group must be between 1 and 2000.

    Hi, forms 6i, db 10g

    I created a lov based on this query

    select * from items_qty_vu -- database view
    

    and the view code is

    CREATE OR REPLACE FORCE VIEW items_qty_vu (serial, item_id, expiry_date, qty)
    AS
       WITH item_units_plus AS
            (SELECT item_id, unit_id, factor,
                    LEAD (factor, 1, 1e99) OVER (PARTITION BY item_id ORDER BY factor)
                                                                   AS next_factor,
                    ROW_NUMBER () OVER (PARTITION BY item_id ORDER BY factor DESC)
                                                                           AS rnk
               FROM item_units)
       SELECT     ID.serial, ID.item_id, ID.expiry_date,
                  SUBSTR
                     (SYS_CONNECT_BY_PATH (   TRUNC (  MOD ((  ID.qty
                                                             - ID.qty_allocated
                                                            ),
                                                            iup.next_factor
                                                           )
                                                     / iup.factor
                                                    )
                                           || ' '
                                           || u.unit_name,
                                           ', '
                                          ),
                      3
                     ) AS qty
             FROM item_detail ID JOIN items i ON i.item_id = ID.item_id
                  JOIN item_units_plus iup ON iup.item_id = ID.item_id
                  JOIN units u ON u.unit_code = iup.unit_id
            WHERE CONNECT_BY_ISLEAF = 1
       START WITH iup.rnk = 1
       CONNECT BY iup.rnk = PRIOR iup.rnk + 1 AND ID.serial = PRIOR ID.serial
         ORDER BY ID.serial;
    
    

    When I compile the form, I face the error FRM-30187,

    If I replace my query "select * from items_qty_view" with "select item_id, serial, expiry_date of items_qty_vu", it compiles successfully.

    As salamualikum, Salem,.

    You must follow my instructions carefully.

    1. Select the record group.

    2. go in the record group property

    3. Select and open the column specifications

    4. highlight the column and check the decrease of the length, the bellows of the size that you cross more than 2000 then 2000.

    Compilation of now and you're done.

    Wow. you did.

    Hamid

Maybe you are looking for

  • the iPhone 5 and other battery

    Last December (2015) I had my battery replaced on my iPhone 5. About two weeks later I had to have the battery replaced as it was a defective battery. After that, everything is like new. Last Saturday, my sat phone to 100% every day even with constan

  • transfer of downloads on iMac on external hard drive

    How can I transfer music from my iMac to a portable external hard drive

  • Exit on LAN of PXI

    Hello I use the following materials: SMU-1062 q SMU-8108 OR PXI-5600 (02 card for 40 MHz of bandwidth) SMU-5641R (two entries are used; one for each NI PXI-5600) PMA-1115 LabVIEW 2009 I use the mode of the instrument to detect the signal to jump and

  • No printer in the print, only icon in the "Add printer" Wizard dialog box

    Windows XP Professional - Version 2002 - Service Pack 3 What would cause the print dialog box does not show printer, only the icon of the Add Printer Wizard? This occurs in only one (Eclipse) application on the PC. There are 20 printers in printers a

  • Printer e-all-in-one-HP Deskjet Ink Advantage 3525

    This printer has on board the OCR capabilities? If yes how can you launch?