Pop up Warning on Unsaved Changes

I have an ADF JSFF page.
It contains a drop down menu through which I could see details of a particular event b ased on the option selected in the dropdpwn choice.
<af:selectOneChoice id="socEventLevel"
                                    label="#{Msg.LOG_LEVEL}"
                                    value="#{pageFlowScope.ea_entUiModelBean.logLevel}"
                                    disabled="#{!pageFlowScope.ea_entUiModelBean.rowSelected}"
                                    unselectedLabel="#{Msg.SELECT_LEVEL}"
                                    valueChangeListener="#{backingBeanScope.ea_entEventLogTabUiBean.getLogDetails}"
                                 autoSubmit="true">
                  <af:selectItem label="#{Msg.VIEW_LOG}" value="0"
                                 id="si5"/>
                  <af:selectItem label="#{Msg.ERROR}" value="1" id="si4"/>
                  <af:selectItem label="#{Msg.WARNING}" value="2" id="si33"/>
                </af:selectOneChoice>
The moment I select one of these choices and try to navigate to another page I get a popup that says "This page contains uncommitted data. Would you like to perform navigation. Press OK to continue , or cancel to abort navigation"
How do I remove this popup ??
Thanks in advance

User, how should we know?
You did not give and information about the app, what's done before you try to navigate away, no jdev version.
You can turn the warning off completely, but i suggest you think about it first. If you get the warning, the transaction you are in is dirty. You loos every change you made if you navigate away from the page. Check Jdeveloper,Oracle ADF &amp;amp; Java: Uncommitted/Unsaved Data Warning on page Navigation-Oracle ADF for info where to configure this.
Timo

Similar Messages

  • Warning on Unsaved Changes Functional Pattern

    Overview
    One advantage of integrated applications is users can easily navigate just about anywhere based on current needs. However, with the added flexibility also comes the increased risk of unsaved data accidentally being lost when navigating away from a page. Therefore, many applications typically warn the user when this is about to occur. Using the new warning on unsaved changes feature, 11g ADF applications can easily implement this type of functionality.
    Click here to see the document that describes this pattern.
    Edited by: Richard Wright on May 13, 2010 1:10 PM

    Hi,
    I have a page with an edit form. The user can close/leave the page by clicking on different buttons (menu items, close icon, back button). In this case, the system should warn the user about unsaved data. Furthemore, I want to skip data validation. I tried to implement the "Warning on Unsaved Changes Functional UI Pattern", although this approach doesn't skip data validation. How should I do this?
    I'm using ADF 11g.
    Pedro Medeiros.

  • Warning on Unsaved Changes Functional Pattern --Help!

    Is there anyone out there who knows how to make this work??!!
    [http://www.oracle.com/technology/products/adf/patterns/11.1.1.1.0/UnsavedDataWarning.html]
    Help!

    Frank Nimphius wrote:
    Hi,
    I am not familiar with the document, but options I see are
    option 1: set uncommitted data warning property on the af:document to "on" (I am not sure, but think this is already available in JDeveloper 11g R1)
    option 2: use the controller context (ControllerContext) of the ADFc task flow handler to detect if the transaction is dirty
    option 3: use a managed bean that accesses the AM in the DataControl to check if the transaction is dirty
    FrankThank you for the reply Frank. Below are my response to your options
    response to option1:
    I have already set the uncommitted data warning property on the af:document to "on" (yes, the option is already available in JDeveloper 11g R1) and even set the bounded task-flow inside the region of my page as "critical", but when I navigate to other pages thru the navigation items in my template header, the prompt for uncommited changes did not show.
    response to option2:
    Which class of my project will use the controller context to detect if the transaction is dirty? I have tried to google the uncommittedDataWarning property which lead me to the DirtyPageHandler class. I have read on DirtyPageHandler class API that in case I do not set an implementation the default implementation will be used- and if I me quote from the API -"that default implementation will always return false from isDataDirty and will do nothing in response to a trackNavigation call." I wonder if aren't there any concrete samples to make this work? As I understand, the uncommitted data warnings is one of the publicized new features of JDeveloper 11gR1. Nevertheless, I have tried to follow allong and did create my own implementation:
    1.) I did override the isdataDirty method to always return true,
    2.) override the trackNavigation method to "System.out.println("prompt");",
    3.) and created a file named oracle.adf.view.rich.context.DirtyPageHandler in the META-INF/system folder of my project, and
    4) created a one line text which represents my implementing class in the created file in #3.
    but still nothing especial happened.
    response to option3:
    What exactly is "AM" in the DataControl?
    Your feedback on this is very much appreciated.
    Thanks,
    pino

  • Warn by leaving a form view with unsaved changes

    Hello JSF / Richfaces users,
    maybe that's not the first time, that someone asks this question here, but unfortunately I couldn't found any concrete examples on the forum. So I'd like really to get your help:
    I'd like to put some "input listeners" on my form views, so that when the user makes changes (typing in inputText, selection another value in selectMenu or checking a Checkbox), then he clicks on another Button / Link without saving, he shoudl will be warned by a dialog box remebering him to save the changes or leaving the view without saving (changes will be lost).
    I tried at first to put a boolean "inputChanged" on my Bean, then setting it to true with an adapted event (onchange) by each component. And by the buttons/links which link to another page I tried to show a <rich:modalpanel> once the value of "inputChanged" is true but I couldn't realize this conditions.
    Thereafter I found a solution based on Javascript:
    <script language="javascript" type="text/javascript">
        // Keep flag when something had changed
        var changed = false;
        Save in "changed" flag, whether an input had been done by the user.
        after that the calling of this method will be removed
        from the corresponding attribute of the input elements,
        in order to avoid redundant method calls */
        function storeChange(aChanged, aElement) {
            changed = aChanged;
            aElement.setAttribute('onchange', '');
        Finally and when the "changed" flag is true, a confirmation message will be shown
        to confirm whether the page could be left.  
        window.onbeforeunload=function unloadAlert() {
            if(changed) {
                return 'You have unsaved changes on the page. If you click on OK, the changes will be lost';
            return null;
    </script>{code}
    And in the view:
    {code}<a4j:form>
            <h:outputLabel id="label_name" value="Name" for="in_name" />
            <h:inputText id="in_name" value="#{bean.name}"
                onchange="storeChange(true, this)" />
            <br />
            <h:outputLabel id="label_email" value="E-Mail" for="in_email" />
            <h:inputText id="in_email" value="#{bean.email}"
                onchange="storeChange(true, this)" />
            <br />
            <a4j:commandButton oncomplete="javascript:changed=false"
                value="Save" />
        </a4j:form>{code}
    And now I'd
    like rather than the JS terriying dialog box, a user-friendly rich:modalPanel which should do the same function.
    For any
    indication I will be very very thankful                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

    Hi David,
    Thank for the prompt answer. I've tried that before but I have put that in checkin action. So that didn't work before but now as per your suggestion it works nicely. The form isn't evaluated.
    However, this time my changes aren't reflected on the user.. Basically what I do is
    - checkout user view (with empty form) (in an activity)
    - update user view (in another activity)
    - check in user view (in another activity)
    however, changes are discarded. I used winmerge to compare and saw exactly the necessary fields are updated after update activity. but after checkin no changes are reflected. so what should I do now :(
    Relevant actions are:
    <Action id='0' application='com.waveset.session.WorkflowServices'>
              <Argument name='op' value='checkoutView'/>
              <Argument name='viewId'>
                <concat>
                  <s>User:</s>
                  <ref>accountId</ref>
                </concat>
              </Argument>
              <Argument name='type' value='User'/>
              <Argument name='id' value='$(accountId)'/>
              <Argument name='Form' value='Empty Form' />
              <Return from='view' to='user'/>
              <Return from='WF_ACTION_ERROR' to='error'/>
            </Action>
            <Action id='0' application='com.waveset.session.WorkflowServices'>
              <Argument name='op' value='checkinView'/>
              <Argument name='view' value='$(user)'/>
              <Return from='WF_ACTION_ERROR' to='error'/>
            </Action>

  • VIs that are never called or changed but always have "unsaved" changes

    I have a large project.  Whenever I close it, I always get a pop-up telling me that the same 7 sub-VIs have unsaved changes.  I have not edited or changed these VIs in over a year.  They are called by sections of the program that are conditionally disabled at the moment!   I get this pop-up warning even when the last thing I did before closing the project was save every VI that is open.
    The only clue I have to offer is that these 7 VIs are the only ones in the project that directly talk (via ethernet) to a motion controller.  Is internet activity on my computer while I am working on the project causing these VIs to think that they have been modified??
    -Geoff N.

    Well, did you ever try to save those at the dialog? Maybe they are still in an older version?
    If you open one of these VIs and look at the "lilst unsaved changes" of the VI properties, what does it say?
    LabVIEW Champion . Do more with less code and in less time .

  • Pop up warning message while creating PO

    Hi,
    How to give a Genral or a POP up Warning Message while creating and checking a PO in ME21n and ME22n.
    Even i tried in changing the local setting in the menu bar, but it doesnt work.
    Help and suggestions will be much appreciated.
    Thanks & Regards.
    Kumar.

    Hi Jay,
    I tired with the BADI ME_PROCESS_PO_CUST  in the method IF_EX_ME_PROCESS_PO_CUST~CHECK, but still i am able to display only error message not Warning message.
    Any suggestion regarding this.....
    Thanks & Regards.
    Kumar.

  • Pop up warning when creating policy domain in OAM 10g

    Has anyone seen below pop up warning when creating a policy domain in OAM 10g Policy manager?
    Warning:
    This policy domain controls the access to the URI you are currently accessing
    /access/oblix/apps/policyservcenter/bin/policyservcenter.cgi
    Are you sure you want to commit these changes?

    Hi,
    Does Note 842378.1 look like a match for you? Maybe the obcompounddata attribute is missing for some odd reason.
    Regards,
    Colin

  • FM8: File Always Opens Unsaved Changes

    Hi,
    I have a file in Framemaker 8 that always opens with "unsaved changes."  I save the file, the asterisk clears, but the next time I open the file the asterisk is there.
    I thought this might be a "missing font" issue and, as a test, turned off Remember missing fonts. This setting does not seem to impact this behavior.
    Any help much appreciated.
    Mary

    I found a very nice explanation by Fred Ridder on Framers:
    I think a better understanding of how cross-references are handled will help you under why I say this.
    Whenever you open a file that contains one or more cross-references, FrameMaker refreshes each of those references. If the reference is to another location within the same file, the refresh is straightforward unless the cross-reference truly is unresolved due to a missing or hidden cross-reference marker. If the reference points to a location that is in another file that is already open, the process is similarly straightforward.
    But if the reference points to a location that is in a file that is *not* already open, FrameMaker has to silently (without showing anything on your screen) peek inside the target file to retrieve the latest information for the refernce. If that file has any sort of problem that would throw a warning message during a non-silent open (e.g. an unavailable fonts message), FrameMaker is unable to peek inside it and therefore cannot find the marker it's looking for. It reports this failure to find the marker as an unresolved cross-reference. If you start by manually opening the file with the missing fonts issue, so that you can manually dismiss the warning message, then you will not get an unresolved cross-reference warnign when you open the original file because FrameMaker can now find the target marker when it updates the cross-references.
    BTW, the updating of the cross-references is the reason why FrameMaker will warn you about unsaved changes when you attempt to close a file that you *know* you didn't make any edits in. Even if the cross-references did not actually change as a result of the update operation, the fact that they were refreshed counts as a change that FrameMaker thinks you ought to save.
    -Fred Ridder
    This  makes sense and matches with what you said so succinctly Jeff. Thanks for the help.
    Mary

  • Creative Cloud pop up warning

    Yesterday I installed Adobe Illustrator CC and InDesign CC (Mac OS10.9.3). Every few seconds today I am getting a Creative Cloud pop up warning:
    Administration rights are required to complete Adobe Add-ons installation or removal

    I am really sorry to hear you have encountered this issue. It's very rare but we are planning to release a fix for this in the Creative Cloud desktop app within a few weeks. The cause of it is that when processing InDesign installed plug-ins, Extension Manager attempts to move the plug-in manifest files. If you does not have write permissions on this folder, a request is made for elevation of privileges. In the mean time there is a workaround:
    Change the following folder so it is writeable: /Library/Application Support/Adobe/InDesign/Version 9.0/en_GB/Extensions
    > chmod 777 /Library/Application Support/Adobe/InDesign/Version 9.0/en_GB/Extensions
    Note the locale/language (en_GB) could be different. In this case en_GB stands for British English, en_us would be US English and so on.
    Also please note this appears to be a Mac only issue. I hope that explains the issue and how to fix it but please let me know if you have any problems applying the workaround.
    Thanks,
    Jonathan

  • SharePoint PPS 2013 Dashboard Designer error "Please check the data source for any unsaved changes and click on Test Data Source button"

    Hi,
    I am getting below error in SharePoint PPS 2013 Dashboard Designer. While create the Analysis Service by using "PROVIDER="MSOLAP";DATA SOURCE="http://testpivot2013:9090/Source%20Documents/TestSSource.xlsx"
    "An error occurred connecting to this data source. Please check the data source for any unsaved changes and click on Test Data Source button to confirm connection to the data source. "
    I have checked all the Sites and done all the steps also. But still getting the error.Its frustrating like anything. Everything is configured correctly but still getting this error.
    Thanks in advance.
    Poomani Sankaran

    Hi Poomani,
    Thanks for posting your issue,
    you must have to Install SQL Server 2012 ADOMD.Net  on your machine and find the browse the below mentioned URL to create SharePoint Dashboard with Analysis service step by step.
    http://www.c-sharpcorner.com/UploadFile/a9d961/create-an-analysis-service-data-source-connection-using-shar/
    I hope this is helpful to you, mark it as Helpful.
    If this works, Please mark it as Answered.
    Regards,
    Dharmendra Singh (MCPD-EA | MCTS)
    Blog : http://sharepoint-community.net/profile/DharmendraSingh

  • FDK Problem: "Unsaved changes in file" dialog with MIFs

    Hi there
    I have a problem saving MIF files using our FrameMaker API client.
    After we have written out all our content, we're getting prompted to save unsaved changes in the .MIF file.
    We're not sure whether to click yes here or not.
    If we click yes, we then get a save dialog which prompts for a filename,
    but has the default file extension set to .FM.
    When you click "save", another message box appears telling me that I'm trying to save a
    .MIF file in the .FM format and that is not allowed, and asks if I want to save it
    as .MIF. 
    Although this is an a mere annoyance for me, it's probably very confusing for
    customers who use our software, and I'm not sure whats causing it.
    I've tried to address it by modifying the default save parameters within the FAPI
    using this:
    F_PropValsT saveParams = F_ApiGetSaveDefaultParams();
    i = F_ApiGetPropIndex(&saveParams, FS_ModDateChanged);
    saveParams.val[i].propVal.u.ival = FV_DoOK;
    Needless to say, it didn't work. I'm wondering is thee another approach I should
    be using?
    Thanks
    Eric

    Hi Eric,
    I'm not clear if your software is saving the file automatically, or whether the user needs to do it after your process runs. And, I'm not really clear on what exactly you want to happen after your code runs.
    I do think that any open MIF file (even if in binary format, after being opened in FM) will cause that prompt when you attempt to close it manually, even if you have made no changes since the last save. My thought is that FM simply looks at the file extension and generates that behavior accordingly.
    A few options you have (may be more, once I understand the situation better):
    - Let the code close the file itself once it is done, using F_ApiClose(docId, FF_CLOSE_MODIFIED). This, of course, if the interactive user doesn't need to see it.
    - Use F_ApiNotification() and F_ApiNotify to hijack the save request and save the file as MIF automatically, which should allow you to avoid the second prompt.
    - Use notifications to hijack the document closure process itself, simply closing the doc upon request whether it has changes or not. Or, maybe you could add your own prompts. This would take consideration of whether you actually want to allow an interactive user to make changes after the code runs.
    Just some ideas there. If you provide more info on what you want to happen after your code runs (presumably this is the translation thing), I might be able to help more.
    Russ

  • How Do i make a pop-up menu's contents change in 1 cell according to what I have chosen in another pop up menu from another cell

    In table 1 I have 4 sets of options under the heading "CATEGORY" which will make up a pop up menu in the first cell. "Slat fencing", "standard pool fencing", "Non standard pool and garden fencing" and "Louvres" if I choose one of these 4 categories from a pop-up menu I need the next column to indicate another set of pop up menu's that change according to the first cell that I chose. I.E. I have 2 cells in a table. If I choose "Standard pool fencing" from a pop up menu in the first cell I need the pop up menu in the second cell to show the options Flat top Black, Flat top other colour, Semi frameless glass, Frameless glass.
    Any help would be greatly appreciated.
    Regards, Brendan.
    TABLE 1
    CATEGORY
    SUB CATEGORY
    Slat fencing
    Aluminium privacy screens
    Knotwood timber grain
    knotwood standard powder coated
    Standard pool fencing
    Flat top Black
    Flat top other colour
    Semi frameless glass
    Frameless glass
    Non standard pool and garden fencing
    Flat top
    loop top
    rod top
    loop and spear
    rod and spear
    level spear
    hi/lo spear
    florence
    mondello
    venice
    sorrento
    carini
    verona
    milan
    Pisa 2
    Pisa
    Meditteranean
    Pescara
    Louvres
    fixed horizontal louvre 85mm elliptical blades
    operable horizontal louvres
    Vertical louvres (Stefmar) using 65x16 aluminium slats
    160mm vertical louvres
    TABLE 2
    CATEGORY
    SUB CATEGORY
    Slat fencing
    Knotwood timber grain

    Brendan,
    Let me try to explain using a similar but different method:
    All the lines are shown for information flow and would not normally be included.
    The table in the top left is a working table where you interact with the information:
    You first select a category using a slider.  As you slide left and right the "value" (shown as 2 in column B) will change.  As the value changes the Category changes because the information is looked up from the category table (highlighted with a blue shaded background in the first picture.
    The subcategory will also change as you modify the slider in column "B" because you are changing the category, which selects which table is used for the sub-category (sub-category tables are highlighted in light green).  Once you select the category you can then slide through the possible selections for the subcategory (column "D").
    There are only two formulas and they are in the "Work" table:
    A2=IFERROR(VLOOKUP(B2,Category :: A:C, 2, FALSE), "<Not Found>")
    C2=IFERROR(VLOOKUP(D2, INDIRECT(A2),2,FALSE), "<NOT FOUND>")
    For A2=IFERROR(VLOOKUP(B2,Category :: A:C, 2, FALSE), "<Not Found>").... this means in cell A2 enter the text "=IFERROR(VLOOKUP(B2,Category :: A:C, 2, FALSE), "<Not Found>")" omit the first and last double quote
    This whole scheme requires the tables be named the same as the categories in the "Category" table
    I hope this helps.  If not please indicate what is causing you trouble.

  • Way to detect if an Indesign Document has unsaved changes

    I have an InDesign document that I have saved. After saving the document, I make some changes to it. Now I want to detect if there are any unsaved changes in the document through JSX. I have tried to use the property document.saved, but this method only tells me if the document was saved for the first time.
    If have some unsaved changes in a document that has been previously saved, document.saved still returns true.
    Is there any other way to detect unsaved changes for a document?

    @Kapoor – you could tell by the layoutWindow name. If a * is in front of the name, the document is not fully saved.
    if(app.documents[0].layoutWindows[0].name.match(/^\*/)){$.writeln("doc not saved!")};
    At least this is true for layout windows on Mac OSX.
    In Windows the little * could be at the end of the name.
    Can't remember. Currently I'm on OSX 10.7.5.
    If it is indeed on the left right side of the name, you have to check on what OS the script is running and do the match accordingly.
    Uwe
    //EDIT

  • APEX 4.1 is it possible to remove pagination "unsaved changes" message?

    Hi,
    We've developed a tabular form in APEX 4.1 which only contains one updateable column. Once the user modifies the column it raises a Dynamic Action which UPDATES data at source table. The problem is after modifying any field and clicking on pagination link, we get the following alert message "This form contains unsaved changes. Press "Ok" to proceed without saving your changes."
    Is it possible to get rid of that message? I found the way to translate the message but nothing to remove it. We also saw pagination is calling a JavaScript function called paginate, would it be possible to modify its definition to disable the message somehow?
    Thanks

    Hi,
    Apex uses a global array called gTabFormData to store the original form values when the page loads and identify which ones have been modified when the user does pagination. So, a hack you could use is to call this function right after you saved the changes to the database:
    function resetFormCachedData() {
        var c = $x_FormItems($x('report_<REPORT_STATIC_ID'>));  // e.g. report_MYSTATICID
        for (var e = 0; e < c.length; e++) {
            if (c[e].name != "X01") {
                gTabFormData[e] = c[e].value
            } else {
                gTabFormData[e] = "0"
    }I suggest putting this code in a JS library, so if Apex changes in a future release (e.g. providing a documented way to do this), it is easy to change it too.
    Luis

  • Pop up warning: "We are having trouble verifying you membership" and "00 Days Remaining".

    I am the administrator of a team of 12 CC Licenses. I believe that we are all allowed to download CC onto one computer at our office as well as one computer or laptop at home for doing work after hours, etc. Many of us have done this and now we are all getting a pop up warning that "We are having trouble verifying you membership" and that we have "00 Days Remaining". This is very disturbing to us since according to your website we have 9 months remaining on our license. Any suggestions on this?

    Thank you for your suggestions, however, I did not find an answer to my problem there. After about 8 hours of research, on-line chatting and finally a phone call all I have found out is that #1: I should remove or re-name the "hosts" document in my "/etc" folder. However, when I did that my Extensis Suitcase was disabled. Not a viable solution. #2: our firewall is blocking the Adobe products from contacting the Adobe server to verify our membership, therefor I need to install one of 17 possible URL's in our firewall to allow the connection. I cannot do this until next week when our IT guy is in for his bi-weekly visit. This does not make since to me because 3 of our team have not tried to install CC on a second computer and they are not having any trouble at all. So how could the firewall be the problem? I believe the problem is that it is impossible to find out the proper procedure to install CC on a second computer (home or laptop). Originally I was told that I needed to remove the existing user by clicking on the "X" in the CC admin-licenses panel and resend the invitation again so that CC could be installed on a second computer. All of our problems started after this was done. Now I am told that after the first license invitation was sent all that needed to be done to install on a second computer was to log in to the creative.adobe.com web-site, click on the Download Center tab and simply download everything you need on the second computer. Brilliant! Simple! Why is this not explained anywhere! So now I think I will try uninstalling CC from my second computer and try the Brilliant, Simple way and see what happens.

Maybe you are looking for