FRM-40403

FRM-40403 A calling form has unapplied changes. Save not allowed.
I do not understand why the above message occurs when the CALLING form is performing an UPDATE but NOT when it is performing an INSERT. I have seen documented (cannot remember where) that the called form is not allowed to commit because it would also try to commit the calling form. However, if the calling form is creating a new record I can successfully commit the called form and the changes in the calling form remain outstanding. If this is possible, why is it not possible when the calling form is doing an update ?

I've done a bit more research and it seems to be about preserving locks in the calling form, and of course inserting does not involve locks. I suppose that the called form is ABLE to commit without affecting
an outstanding insert in the calling form because the insert is not yet posted.
What I really want is a method to detect whether a called form is running in post-only-mode. One method is to attempt a commit and trap FRM-40403, but that means if it is not in P-O-M the commit will succeed, and I might not want to do that.
I thought about passing the calling form system.form_status, but that does not distinguish between updates and inserts. I could set a variable in an on-lock
trigger but would need to be careful about unsetting it correctly, seems cumbersome.
One of the things I am trying to achieve is a called form used as a LOV, which allows new rows to be added to the list. Whether the called form can commit or needs to post only depends on whether the calling form is updating or inserting.

Similar Messages

  • Problem with FRM-40403

    I'm getting the following error when trying to commit a form in Forms 6i
    FRM-40403: A calling form has unapplied changes. Save not allowed
    The scenario is the following:
    I have Form A which calls Form B, when I save Form B I get the error and nothing is saved on that form... The problem is that I have another form, lets called it Form C which also calls Form B and I am able to save Form B there... the call I'm doing its exactly the same in both forms A & C,
    CALL_FORM('FORM_B', NO_HIDE, DO_REPLACE, NO_QUERY_ONLY, pl_id);
    I googled the error but the only workaround I found is using OPEN_FORM to use another session, it actually works but then I loose some global variables I set in Form B so I can use in Form A; and the actual course of the code after doing the call_form doesn't execute.
    Any ideas what could it be??
    Thanks in advance

    you mean all the changes to the form?? Its sounds kinda complicatedThe problem:
    If you use POST in a form, all outstanding changes will be applied against the database (INSERT's, UPDATE's, DELETE's are executed), but there is no final commit sent to the database. But.. forms treats the status of all objects as applied (means the record-status of all records is QUERY, the Form-Status is QUERY). If you now exit the form, forms will not ask you "Do you want to save the changes" for there are no outstanding changes. But... If the forms is exited, there will be no commit executed and therefore the formerly applied changes are lost.
    To avoid this, you have to "remember" that you posted in some variable and check that variable additionally to the Form-Status, something like
    IF :SYSTEM.FORM_STATUS='CHANGED' OR :GLOBAL.MY_PERSONNEL_COMMIT_FLAG='Y' THEN
      -- now ask for "Do you want to save the changes"
      -- and do a COMMIT_FORM if answered with yes
    END IF;

  • FRM-40403 A Calling for has.....

    Hi guyz,
    im facing some strange problem, hope someone give me a suitable answer.
    My application is working fine just i attach the another datablock its starts giving problem with an error
    FRM-40403: A Calling form has unapplied changes. Save not allowed.
    I create some parameters and passing the values below is the parameter code.
    declare
    plist ParamList;
    begin
    plist := Create_Parameter_List('INPUT_PARAM');
    Add_Parameter(plist, 'empid',TEXT_PARAMETER,:employee.empid);
    Add_Parameter(plist, 'emp_name',TEXT_PARAMETER,:employee.emp_name);
    Add_Parameter(plist, 'dob',TEXT_PARAMETER,:employee.dob);
    CALL_FORM('PORTS',no_HIDE,NO_REPLACE,NO_QUERY_ONLY,plist);
    DESTROY_PARAMETER_LIST(plist);
    end;
    im unable to save the data in form B before it was working fine.
    anyone help me why this problem occured? even though i delete the newly added datablock even though not working. help me plz...
    Regards

    Before calling form b you could check :SYSTEM.FORM_STATUS, if that is changed, the changed have to be applied to DB before callin form b, maybe something like:
    IF :SYSTEM.FORM_STATUS='CHANGED' THEN
      IF <Aks use for saving> THEN
        COMMIT_FORM;
        CALL_FORM('FORMB');
      END IF;
    ELSE
      CALL_FORM('FORMB');
    END IF;

  • FRM-40403 A CALLING FORM HAS UNAPPLIED CHANGES  SAVE NOT ALLOWED .

    Dear Friends
    I have order data entry screen form when the order item is not yet defined
    then I am using this script for calling the item definition form
    DECLARE
         l_n_curr_rec NUMBER;
    BEGIN
    BEGIN
         :global.l_n_curr_rec2 := :COP_ORDER_DETAILS.LINE_NO;
         :GLOBAL.CLASS_CODE := :CLASS_CODE;
         :GLOBAL.LINE_NO := :LINE_NO;
    :GLOBAL.USER_ID := '1';
    END;
    :global.cop_order_code := :cop_order_details.cop_order_code;
    :global.ord_date := :cop_order_details.ord_date;
    :global.command_line := 'c:\sales\new_items.fmx';
    call_form(command_line);
    go_block('cop_order_details');
    go_record(:global.l_n_curr_rec2);
    :cop_order_details.item_code := :global.item_code_var;
    END;
    And this script is used in the item definition ,that is the called form
    BEGIN
    INSERT INTO IM_INVETORY
    (ITEM_CODE,ITEM_NAME_A,ITEM_NAME_E,STOCK_ITEM,ITEM_CLASS)
    VALUES(:IM_NEW_ITEMS.ITEM_CODE,:IM_NEW_ITEMS.ITEM_NAME_A,:IM_NEW_ITEMS.ITEM_NAME_E,'1',:IM_NEW_ITEMS.ITEM_CLASS)
    COMMIT_FORM;
    Wating for your valuable aswer.
    Best regards
    Jamil

    Hello,
    Go to the help -> display last error option menu to get the complete error message.
    Francois

  • To Call Another Form and Save Related MAster Data from a Transaction Form

    Hi
    Our project requires that forms for creating masters be called whenever the value (Key Value) being referenced in other forms are not found. For doing this I had used the When-Validate-Item Trigger and checked for the key value in the master tables and if not present, I use the Call_Form method to call the master form and create the key value and then come back to the Form in which I was working to continue processing the rest of the data.
    It works well if the CAlling forms is in INSERT MODE but Not in UPDATE MODE ( returns a message A Calling Form has unapplied Changes, Cannot Save data (Error: FRM-40403)).
    This same feature I tried to work it out around with a Key-Next-Item Trigger, it works fine for both the cases but as long as the user tabs out of the field from keyboard controls like the Enter Key or the Tab Key. But in case he wishes to click on the next field or some other button with a mouse OR he uses a keyboard shortcut to do some other operation viz. F10 for saving data, the trigger is not fired and that returns a ORACLE error (in case a database Integration issue arises) OR saves an invalid data.
    I would like to know what kind of triggers could we write to exactly call a master form to save a new key value irrespective of whether the calling form is working in INSERT mode or QUERY Mode.
    One way to do it is to use EXIT_FORM(DO_COMMIT, NO_ROLLBACK). But if the Primary/Calling form is closed without a Commit, then the related Master DAta is also Not Saved.
    Please Let me know if we can save the master data whatever be the state of the CAlling Form permanently.
    Thanks and Regards

    You are going to need to POST in the Called Form rather than committing (and make sure that you do not rollback when you exit).
    The Post will insert the master record into the DB but it will not be committed until you issue the commit in the Calling Form.

  • POST built in - Umm, this is the worst and doesn't work as intended..

    Win XP, oracle 10gR2
    POST really likes to save my changes.
    I post a block, and then goto my next form.. and I use another session with another login to view the data and it has already been comitted.
    This may have worked back in Client Server as intended , but it is surely lacking on the web forms.
    My form forms coworker said I'll just go busting my brains out trying to get it work, and he never got it work either, and said post doesn't do what you think it is supposed to do.
    He thinks we had problems with it even back on Client Server.
    Can anyone else confirm?

    Hello,
    Very easy to test.
    Create a basic form on the emp table, do some changes
    then post.
    Open another session with Sql*Plus or Sql Developer,
    then check if you see the changes or not.
    FrancoisI'll change my story to posting with "multiple forms" doesn't work.
    Form A - I make changes and POST.
    I call form B (the select form)
    I then call form C (edit screen) and make a change.
    I exit_form C, and say "NO" to forms asking me if I want to save changes.
    I exit_form B (no prompt, no base table block).
    In form A, I exit_form, and say "NO" to forms asking me if I want to save changes.
    I reenter the form A, and the value is changed to the new value.
    I just watched the column, and when I called form C - that's when the commit was performed. I see no commit's that were executed when calling for C.
    I am trying to avoid a frm-40403 (calling form has unapplied changes).
    Post isn't cutting it, so I plan to check the form_status and prompt the user if they want to commit (yes/no/cancel).."No" will cause an frm-40403 if they try to save in the form C. Of course if they say "yes" to commit, it will not have the problem in form C.
    I just checked, and I don't think I have any commits in Form C - if I did - I wouldn't get an FRM-40403 when I try to save in Form C.

  • Database trigger causes error in Form

    I have a database trigger on the per_performance_reviews table. When I try to save a performance review record from the forms I get the following error:
    FRM-40403: A calling form has unapplied changes. Save not allowed.
    Any suggestions???
    Here is my trigger:
    CREATE OR REPLACE TRIGGER APPS.XXPER_UPDATE_PERF_REVIEW
    BEFORE INSERT ON HR.PER_PERFORMANCE_REVIEWS
    REFERENCING NEW AS NEW OLD AS OLD
    FOR EACH ROW
    DECLARE
    l_hire_date DATE;
    l_next_review_Date DATE;
    l_event_type VARCHAR2(40);
    BEGIN
    select papf.START_DATE, pe.type
    into l_hire_date, l_event_type
    from per_all_people_f papf, per_performance_reviews ppr, per_events pe
    where ppr.performance_review_id = :NEW.performance_review_id
    and papf.person_id = ppr.person_id
    and pe.event_id = ppr.event_id
    and sysdate between papf.effective_start_date and papf.effective_end_date;
    l_next_review_date := l_hire_date + (365 * 2);
    IF l_event_type = 'APPRAISAL' THEN
    :NEW.NEXT_PERF_REVIEW_DATE := l_next_review_date;
    END IF;
    END XXPER_UPDATE_PERF_REVIEW;

    There is a forms forum here too.
    However this error message
    FRM-40403: A calling form has unapplied changes. Save not allowed.
    implies that you opend your current form without posting/commiting in the previous form. This is not allowed. Your changes never even touched the database.

  • Problem in deletion while calling a form

    Hi All,
    I have a form form1 and I am calling another form form2 by form1 and calling form3 by form2
    everying is ok till yet, but in form3 when I try to delete any data then it shows a message
    at the time of commit, message is....
    "FRM - 40403 - A calling form has unapplied Changes. Save not Allowed."
    Please help

    Mohan,
    Try opening each form in different session.
    OPEN_FORM(<form_name>, ACTIVATE, SESSION, NO_SHARE_LIBRARY_DATA);Regards,
    Manu.
    If my response or the response of another was helpful or Correct, please mark it accordingly

  • Calling form error

    Hi all...
    iam facing a problem while calling a form.
    iam opening a form,inserting data in empty columns of an existing record and with out saving iam calling another form.Inserting and updating data
    in the called form and again coming back to old form and then saving the form.
    while doing this, when i am trying to save on the called form its giving an error FRM-40403 CALLING FORM HAS UNAPPLIED CHANGES,SAVE NOT ALLOWED.
    please help
    thanks in advance.

    Really thank you very much Mr. Now after adding post; before call_form has solved the problem of inserting and committing the called form.
    but before moving on to called form its showing message FRM-40404:DATABASE APPLY COMPLETE:2 records applied.
    when the called form is saved and when the calling form is saved,it is not updating the existing record but inserting new record.
    how to avoid this message and insertion of new record..
    thanks a lot again.

  • Getting error message FRM-40700:No such trigger: SPECIAL20

    Hi,
    We have designed a custom report (Quote) and would like to use Special Menu's(Reports Menu) to open this custom Report. When I try to open this Report using
    REPORTS->Quote, The Report is opening seccuessfully but i am getting following error message at the bottom of screen bar.How can I clear this message ?
    FRM-40700:No such trigger: SPECIAL20
    The code which I wrote in the custom.pll is
    IF (form_name = 'OEXOEORD') THEN
    -- Enable View Order Report -- V1.4 --
    if (event_name = 'WHEN-NEW-FORM-INSTANCE') then
    app_special.instantiate('SPECIAL20', 'View Order Report');
    app_special.enable('SPECIAL20',PROPERTY_OFF);
    else
    if (event_name='WHEN-NEW-BLOCK-INSTANCE') THEN
    if block_name='ORDER' then
    app_special.enable('SPECIAL20',PROPERTY_ON);
    else
    app_special.enable('SPECIAL20',PROPERTY_OFF);
    end if;
    end if;
    end if;
    if (event_name='SPECIAL20' and block_name='ORDER') then
    param_to_pass1 := name_in('ORDER.HEADER_ID');
    select order_number into param_to_pass2 from oe_order_headers_all where header_id=param_to_pass1;
    editor_pkg.report(BSI_Quote(param_to_pass2), 'Y');
    null;
    end if;
    end if;
    Please give me valuable inputs on this issue.
    Thanks,
    HTH

    Hi,
    your package " app_special" does a call to "execute_trigger('SPECIAL20');" ,
    but there is no trigger with this name in your form. ( perhaps an Menu-item exists with this name.)
    Lock for "execute_trigger" in:
    app_special.instantiate('SPECIAL20', 'View Order Report');

  • FRM-92010 Error while saving a form in HRMS

    Hi,
    I created a new 12.1.1 instance and impletented HRMS as per doc id#145837.1.
    Applied patch 8934107, Ran DataInstall and hrglobal.drv.
    Now while saving the forms we are getting the following error: (in application.log)
    10/05/13 18:12:03.269 formsweb: Forms session <1> aborted: unable to communicate with runtime process.
    10/05/13 18:12:03.270 formsweb: Forms session <1> exception stack trace:
    java.io.IOException: FRM-93000: Unexpected internal error.
    Details : No HTTP headers received from runform
    at oracle.forms.servlet.ListenerServlet.forwardResponseFromRunform(Unknown Source)
    at oracle.forms.servlet.ListenerServlet.doPost(Unknown Source)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.AJPRequestHandler.run(AJPRequestHandler.java:313)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.AJPRequestHandler.run(AJPRequestHandler.java:199)
    at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
    at java.lang.Thread.run(Thread.java:619)
    I have also applied patch 8682249 as per doc 867501.1 (since error was the same) but still no luck.
    Please help.
    Regards,
    Neeraj
    Edited by: user556153 on May 13, 2010 6:19 AM

    Hi;
    Did you checked
    Queries Error With FRM-92101 In Many NLS Forms [ID 443922.1] << seems similar error like yours
    Forms FRM-92050, FRM-92100, FRM-92101, FRM-92102 Reference Guide [ID 444690.1]
    If its not help please enable trace
    How To Perform System Tracing For All Forms Runtime Processes? [ID 400144.1]
    Regard
    Helios

  • FRM-41211 Integration Error SSL - OracleAS 10g

    Hi.
    I have error Frm-41211 Integration Error SSL Failure Running Another Product error while calling a report from web form in oracleAS 10g.
    I have problem with RUN_REPORT_OBJECT in web forms.
    I have error: FRM-41211 SSL integration error .....
    OracleAS server began on Windoes XP SP2.
    Do you help me ?

    Hi,
    I remember having seen this issue in teh apst. My best recommendation is to work with customer support (metalink.oracle.com)
    Frank

  • FRM-41211 Integration Error SSL - Oracle Forms 10g

    Hi all.
    I have FRM-41211 Integration Error SSL Failure Running Another Product error while calling a report from web form in oracleAS 10g.
    I have problem with RUN_REPORT_OBJECT in web forms in this code:
    =====================================================
    DECLARE
    BEGIN
    repid := find_report_object('MODULE21');
    v_rep := RUN_REPORT_OBJECT(repid);
    -- jobid := substr(v_rep, length('rep60_WS70004')+2, length(v_rep));
    -- web.show_document('/reports/rwservlet/getjobid'||jobid||'?server=rep3945','_blank');
    END;
    =====================================================
    I have error: FRM-41211 SSL integration error .....
    OracleAS 10g server began on Windows XP SP2.
    Do you help me ?
    Very thanks !!

    Do you help me ?
    Thanks.

  • FRM-92101 error while running report from a button or menu

    Hi All,
    I am getting the error FRM-92101 while running report without parameter from a button or menu. I am using Developer Suit 10g. I get the error as it shows there has some configuration problem in my form. Will you please help me anyone how can i solve the problem. My previous forms running very well both with parameter and without parameter.
    Arif

    Hello Sir,
    Thanks for your cooperation. I have solved my problem by myself. The fact was that, when i tried with the following code which made my report---
    SELECT br.bid, br.bname, br.branchtxnstatus, dif.difference
    FROM branch br,
    (SELECT gladbrid branchid,
    SUM
    (CASE
    WHEN ga.gl_acc_categry IN ('L', 'I')
    THEN gd.gladbalance
    ELSE -1 * gd.gladbalance
    END
    ) AS difference
    FROM glaccount ga, glaccountdetail gd
    WHERE ga.glid = gd.gladglid
    GROUP BY gladbrid) dif
    WHERE dif.branchid = br.bid AND br.branchtxnstatus = :Br_Status
    and dif.difference!=0
    ORDER BY br.bid;
    and the code against the button or menu item is---
    DECLARE
    repid REPORT_OBJECT;
    v_rep VARCHAR2(100);
    rep_status VARCHAR2(20);
    BEGIN
    repid := FIND_REPORT_OBJECT('ASSET');
    v_rep := RUN_REPORT_OBJECT(repid);
    rep_status := REPORT_OBJECT_STATUS(v_rep);
    WHILE rep_status in ('RUNNING','OPENING_REPORT','ENQUEUED')
    LOOP
    rep_status := report_object_status(v_rep);
    END LOOP;
    IF rep_status = 'FINISHED' THEN
    /*Display report in the browser*/
    WEB.SHOW_DOCUMENT('http://192.168.0.21:8889/reports/rwservlet/getjobid'||
    substr(v_rep,instr(v_rep,'_',-1)+1)||'?'||'server=repserver90','_blank');
    ELSE
    message('Error when running report');
    END IF;
    Clear_message;
    END;
    Clear_message;
    which has shown the error FRM-92101 and didn't run the report.
    In that case I have changed the query to run the report. first of all i create a view following the query and build the report using a simple select query. that's etc. my report running fine now.
    It is mentioned that there had no error on my codes.
    Arif

  • Can not delete record from the master block ,frm-40202 field must be entere

    hi ,
    i have built a form which contain master and details blocks
    the problem is
    when i try to delete a record from the master block it gives me new serial for the transaction and when i try to save it, it says
    >frm-40202 field must be entered
    where this field is required and i cant save it
    although in another form when i delete from the master it gives me the previous record and it works properly
    if any one has any ideas pls help me
    thank u
    ------- the master block has a trigger when-create-recoder
    Declare>v_dummy number;
    Begin
    Select nvl(max(ERNT_NO),0) + 1 >Into v_dummy
    From LM_RENT_EXPNMST >Where cmp_no = :LM_RENT_EXPNMST.cmp_no
    And brn_no = :LM_RENT_EXPNMST.brn_no>and fiscal_yr = :LM_RENT_EXPNMST.fiscal_yr;
    >:LM_RENT_EXPNMST.ERNT_NO := v_dummy;
    END;
    IF :PARAMETER.RNT_NO IS NOT NULL THEN
         :LM_RENT_EXPNMST.RNT_NO:=:PARAMETER.RNT_NO;
              :LM_RENT_EXPNMST.RNT_YR:=:PARAMETER.RNT_YR;
         :LM_RENT_EXPNMST.CUST_DESC:=:PARAMETER.RNT_ADESC;
    END IF;Edited by: ayadsufyan on May 8, 2013 2:03 PM

    If this is a FORMS question you should mark this one ANSWERED and repost your question in the FORMS forum
    Forms

Maybe you are looking for

  • TEMPLATE AND PAGE TITLE MX2004

    I have started to use a template for a web site for the first time - all is going well except that I am unable to change the page title for individual pages which have the template applied. I believe I have made the title an editable region in the te

  • How to use JDBC RowSet ?

    Dear all, I downloaded Jdbc Rowset and configured it in my PC. But when I use CathedRowSet,it give me the following errors. Exception in thread "main" java.lang.UnsupportedClassVersionError: javax/sql/Row Set (Unsupported major.minor version 48.0)...

  • How to trace the data dictionary tables used in the standard transaction

    Dear all, Help me to trace the data dictionary tables used in the standard transaction "crm_dno_monitor". I need to find the tables where the data are stored. or Tell me generally how to find the tables used in the standard transaction. Regards, Prem

  • Automatically create users (SU01) from organization (0105)

    In our organization, we will have the user id populated in the 0105 record.  How do I have the system automatically create the user record (SU01) from the 0105 record?  I have looked at the HRUSER transaction, but I don't understand how to run that. 

  • OBIEE 11g Usage Tracking -

    Hello, I'm looking for a better way than Administration/ Manage Sessions to keep an eye on long-running queries. Is there a way to get OBI to place information about currently running (started but not ended) queries into usage tracking so that I can