Helps the modal dialog box a value back to the calling page

Greetings,

Apex Version: 4.1.0.0.32


What I'm trying to do is create a modal dialogue that is called from a form page. The user dialog box will report to IR which allow him to select a line and send a value of this line to a field of the calling page. I work in Firefox, but I get an error using IE 8. I hope that someone can show me why it does not work in Internet Explorer.

Here's how I do it:

Of the calling page:

Created a button
Action: Redirect URL
Target URL: javascript:var rc = window.showModalDialog ('f? p = & APP_ID.:70: & SESSION.: & DEBUG.:', ",'resizable: Yes;) Center: Yes; dialogWidth:1000px; dialogHeight:500px ;') ;


On the page called:

The called page is an IR report where the query returns this as one of the columns:

* (Note: I had to put a point '.' before the onclick so he could show in this thread.) It is not there in my actual code.) *
select
<a href="#" name="z" style="color:blue; text-decoration:underline;" .onclick="javascript:passBack(''' || LOT_NO ||''');">Select</a>' SelectThis
, column1
, column2
from sometablename;
This solves the anchor:
<a .onclick="javascript:passBack('232158');"  href="#">Select</a>
Here is the function Javascript is called the anchor onclick:
function passBack(passVal1)
{
  opener.document.getElementById("P75_ITEM1").value = passVal1;
  close();
}
When I run the present in Firefox, it works as expected. I click the button on the parent page. The modal dialog box is open and the report of the IR is displayed. I click on one of the links in the report and it returns the correct value to the appellant and closed page modal dialog box.

When I run it in IE8, it fails. I click the button on the parent page. The modal dialog box is open and the report of the IR is displayed. I click on one of the links in the report and I get this error: 'opener.document is null or not an object ".

I hope that it is clear and that someone can help.

Thank you

Larry

A quick google search determines that window.opener does not exist when you use window.showModalDialog

Range of suggestions to use window.open instead of window.showModalDialog to use instead of window.opener dialogArguments

Try the following:

The parent page to define a getPopupValue() function:

 function getPopupValue(){
   var dr =  window.showModalDialog('f?p=&APP_ID.:70:&SESSION.::&DEBUG.:::','','resizable:yes;center:yes;dialogWidth:1000px;dialogHeight:500px;');

    if ( (dr != undefined) && (dr != '') && (dr != false) ){
     $x("P75_ITEM1").value = dr;
    }
 }

Change the url of the button to call the function:

 javascript:getPopupValue(); 

On the popup page change the valve function for:

function passBack(passVal1)
{
  returnValue = passVal1;
  close();
}

Tags: Database

Similar Questions

  • APEX 5.0 after you close a modal dialog box, I want to introduce the parent page, without losing session values

    I have a parent page that triggers a modal dialog box in APEX 5.0. When the user confirms in the dialog box, it closes the dialog box by using the process of dialogue.

    In the parent page, if I do not have a dynamic action "Dialog box closed", the user returned to page with the values, they recently came again here. If I add a closed action dialog box to send the page, the values are lost - it's as if the page refreshes before submitting. Someone knows how to solve this problem.

    Thank you.

    user3282753 wrote:

    Please update your forum profile with a recognizable username instead of "user3282753": Video tutorial how to change username available

    Also, is it possible to display the success message from the Page of the dialog box without updating the parent page.

    See Roels Blog: display a success message after you close a modal dialog box

  • Returning from universal theme item values - form Page (modal dialog box)-

    Hello

    I use the universal theme - modal dialog (the form page, page 7) and intend to return several values of the item to the page back 2 when the dialog box is closed.

    I'm back from the point values P7_DNAME & P7_DEPTNO of page 7 of the elements P2_DNAME & P2_DEPTNO on page 2 but does not work.

    Form Page - Page 7 (modal dialog box)

    Process - close dialogue

    Items to return - P7_DNAME, P7_DEPTNO (put several points of values here to go back to page 2)

    Report Page - Page 2 (that calls the page 7 of the modal dialog box)

    Here we have a dynamic Action. I use the event ""closed dialogue ' and 'Set value' action "

    Event (closed dialog box) -

    Action - set

    -Define (return goods of dialogue) - P7_DNAME, P7_DEPTNO Type

    -Selection Type (items) - P2_DNAME, P2_DEPTNO [here I am back to several items.]

    If I go back more than one Page values element, it doesn't any idea WHY?

    BUT if I'm back only a single value of point, there works perfectly well.

    Thank you

    Deepak

    You can return multiple items at once and their values are sent along, but you cannot set multiple items with different values by the action of a set value.

    You must create an action of the value set for each element you want to set the value with the value of the element to return.

  • Skillbuilders modal dialog box - condition for the parent page dialog box

    Hello

    When you use this great plugin, I have a dynamic action on my calling page that deals with the selection of the dialog box.
    It uses
    Select the type object: DOM
    DOM object: document
    Condition: expression javascript
    ($v ('P110_PROD_SEARCH') is 'BLAH')
    where the js expression is to ensure that I run the correct dynamic action, especially when I have a few buttons on the page referring to different variants of the modal dialog box.

    My first action is some javascript which questions the value of
    this.data.modalPageCloseValue
    It helps me to make decisions in subsequent actions on the opportunity to execute some pl/sql, for example

    In the light of a recent issue of my about a possible bug APEX (displayed with HTML item affected by the dynamic action and since we cannot put conditions on measures - I was wondering if I could incorporate something in my condition of dynamic action to stop all the dynamic enforcement action if modalPageCloseValue is null - but it seems to be out of reach?)

    Scott

    Scott,

    Ah, of course, use this:

    $v('P110_PROD_SEARCH') == 'BLAH' && this.data && this.data.modalPageCloseValue
    

    Kind regards
    Dan

    blog: http://DanielMcghan.us/
    work: http://SkillBuilders.com/APEX/
    Twitter: https://twitter.com/dmcghan

  • How to display the icon of the narrow on the title bar of dialog modal dialog box on Mac?

    Hello world.. !!

    I have a question... When we display a modal dialog box on mac, it does not contain a close icon in the upper left corner. If the type of dialogue Panel and then the close icon appears. What do I do to make the close icon shows the dialog box when its type is modal... for example, kADMSystemAlertDialogStyle... ?? Something should be changed in the resource file in the section that defines the specifications of dialogue mentioned below... ?

    resources 'DLOG' (kMyDialog, 'My window', purgeable) {}

    {0, 0, 580, 570}, / / up, left, down, right

    5, / / movableDBoxProc

    0 x 0, / / is not visible at the start

    0 x 0, / / no close button

    0 x 0, / / application options

    18504, / / resource ID

    "My box", / / title of dialogue

    0x0 / / positioning noAutoCenter dialogue

    };

    I tried to change the values for the "no close button", but as there is no document that describes what are the valid values for this field, so I had no success...

    Help, please...

    Thank you!

    ADM has been deprecated for some time. You really shouldn't use it.

  • Number of the modal dialog box

    Hi team,

    I'm developing a modal pop-up dialog page base to APEX 5. My requirement is during the click on column interactive report, I need to open the modal dialog box... I don't understand what I'm doing wrong with that:

    Step 1: Created a page of normal mode 1 with interactive report and column link to page 2

    Step 2: Page created 2 with the dialog box modal as a model.

    But my link does not have apex.naviagtion.dialog as seen in the application "sample dialog. I am getting following error

    2 request 102358 dialog page cannot be returned successfully. If make sure that the template in use on page 2 is the type of model 'Page of dialogue', with the JavaScript dialog initialization appropriate, closing the dialog and dialog box cancel the code defined.

    Workspace: sun_bhatia

    User name: sunil

    Password: sunil

    Application 102358

    Please can someone tell me what wrong I do it in steps. T

    Thank you

    Sunil Bhatia

    OK, the trick to work around this problem is that the dummy parameter value must be a substitution of the report the column value string and not a literal, as I used initially.

    The IR link column and the column link in column 1 are working in the area of interactive report migrated from Standard report .

  • Position of the modal dialog box

    Hi,.

    Could someone explain to me how the op i tion to the wide a modal dialog is calculated?

    I put the height of my modal dialog box to 780px (all of the page of the dialog box is displayed), and the modal dialog box is displayed at the top of the window:

    780px.PNG

    A user complains that the modal dialog box is located roughly halfway to the window and having to drag upward to display all items and buttons.


    After you change the height to 600px, I get the same answer (the modal dialog box is about to halfway through the window) on my environments: different types of MacBook (Air/Pro), a window PC, all modern browsers.

    600px.PNG

    Then sometimes (how SMART is that! ) ) the modal dialog box (with the height value 780px) is positioned at the top of the page, sometimes the top less x.


    Thank you


    Jos

    Thanks John:

    Hello

    Thanks John: How to persist APEX dialog size and position. HardLikeSoftware

  • State of the coast customer Pass to the modal dialog box

    Hi guys,.

    I would like to open a modal dialog box and change the value of a select list of the modal dialog box. I have to be able to switch the status of the customer value using apex.item("P1_DEPTNO").getValue (). The declarative method to use modal dialog boxes is to use a button and a link to the page, where everything is taken care for us, the value, the checksum for the protection of session state, etc..

    But sometimes we need to go on the side of current customer State the modal page, for example, while we are in the middle of creating a new row in a table... and the value is not yet stored in the database.

    So, how can we do this? By the way the page in progress and also variables to generate the control are appropriate for the items to be passed.

    Since there is no dynamic action to do this directly, I tried to attach a dynamic action to a button and run javascript to open the dialog box (https://docs.oracle.com/cd/E59726_01/doc.50/e39149/javascript_api.htm#AEAPI29504):

    var l_url="f?p="+$v("pFlowId")+":2:"+$v("pInstance")+"::::P2_DEPTNO:"+apex.item("P1_DEPTNO").getValue();
    alert (l_url);
    
    
    apex.navigation.dialog(l_url, {
        title:'About',
        height:'480',
        width:'800',
        maxWidth:'1200',
        modal:true,
        resizable:false },
        '',
        $('#EMP_REPORT'));
      
    
    
    

    Unfortunately, I get an error internal an error:

    2 request 157 dialog page cannot be returned successfully. If make sure that the template in use on page 2 is the type of model 'Page of dialogue', with the JavaScript dialog initialization appropriate, closing the dialog and dialog box cancel the code defined.

    I do not understand the error message since I use the theme 42 and the handling of the ordinary modal dialog box works.

    Would appreciate advice.

    See you soon,.

    ~ Dietmar.

    Hi Dietmar,

    you're always coming to these requirements of fancy...

    The following has worked for me in Chrome. But to test if it works in any browser.

    1. Describe your button as usual with a link to the page of the dialog box
    2. For example to set items , specify P7_CUSTOMER_ID as the name and ~ CUSTOMER_ID ~ as value. ~ CUSTOMER_ID ~ is our placeholder that will NOT get replaced by APEX. We use it in our JavaScript code.
    3. Set the static ID of your my_button button so that we are able to access in JavaScript
    4. In the run when the Page loads page level attribute, add something like
      var myButton$ = $( "#my_button" );
      myButton$.attr( "onclick", myButton$.attr( "onclick" ).replace( "~CUSTOMER_ID~", "' + $v( 'P2_CUSTOMER_ID' ) + '" ));
      

    The JS code above will replace your reserved space and turn the link into something like

    javascript:apex.navigation.dialog('f?p=73380:7:109940056598048::NO:RP:P7_CUSTOMER_ID:' + $v( 'P2_CUSTOMER_ID' ) + '\u0026p_dialog_cs=QxixrjW-ZGmCMXTNBPlITtOG_X3aShXqYmmaugetfJ8rYKRHHpJpeskKbIEO3qpqVIkX-dWYaqbZ0_AGq3ASTg',{title:'Sample Database Application - Customer Details',height:'480',width:'660',maxWidth:'1000',modal:true,dialog:null},'t-Dialog--wizard',$('#my_button'));
    

    Obviously, you will not be able to use the Protection of the Session State for the P7_CUSTOMER_ID dialog page item, so you set the page of dialogue level attribute Access Protection Page to the Unrestricted.

    The amount of control that see you in the URL is really just to protect the dialog box itself.

    Concerning

    Patrick

  • Article not saved when the item is in a modal dialog box of jquery

    Hi all


    I followed the instructions here:
    http://shijesh.WordPress.com/2010/04/10/jQuery-modal-form-in-Apex-4/
    to create a modal jquery dialog, this is the code that I added in the html header:
    <link rel="stylesheet" href = "http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/
    redmond/jquery-ui.css" type="text/css" />
    
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js"> </script>
    <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.js"> </script>
    <script type="text/javascript">
    $( function() {
       $('#ModalForm').dialog(
       {
            modal : true ,
            autoOpen : false ,
            width : 425,
            closeText : 'Close',
            stack : false,
            resizable : false,
            buttons  : {
                Cancel : function() {
                         closeForm();
                    } ,
                Save : function() {
                    updateMEMOVELD();
                }
                       }
       });
    });
    
    function openForm()
    {
        $('#ModalForm').dialog('open');
    }
    
    function closeForm()
    {
        //$('#ModalForm input[type="textarea"]').val('');
        $('#ModalForm').dialog('close');
    }
    
    function updateMEMOVELD () 
    {
       var get = new htmldb_Get(null, &APP_ID.,    
                        'APPLICATION_PROCESS=f_memo', 0);
       get.add('P9_MEMOVELD',$v('P9_MEMOVELD'));
       var gReturn= get.get();
       //alert(gReturn);
       //alert($v('P9_DATUM'));
      $s('P9_MEMOVELD',gReturn);
      alert($v('P9_MEMOVELD'));
      $s('P9_MEMOVELD_COPY',$v('P9_MEMOVELD'));  
      $('#ModalForm').dialog('close');
    }
    </script>
    my situation is a little different, my modal doesn't have to perform a sql update, just to change a field
    the user will then record in the main form
    for some reason any field never gets updated in the db
    I even created an application on the application called f_memo process:
    BEGIN
      APEX_UTIL.SET_SESSION_STATE('P9_MEMOVELD',:P9_MEMOVELD);
      htp.p(:P9_MEMOVELD);
    END;
    Why my domain is not send to the db?
    It works when I remove this from the header of the region:
    < d i v id="ModalForm" title="Add Person" style=" d isplay:n one  "   >
    but then of course I have more a modal dialog box



    What's wrong?


    I put the code online at apex.oracle.com
    workspace XONIXRS
    login/password demo/demo
    Run the application
    Click lijst (invoices) without (in the region of the right sidebar)
    Then click on the button Search (search)
    a report is displayed, click on edit on the first line (200900017)
    now, a form appears, click the memo of pure and simple button
    now the modal shows upward, change the field and click Save
    Click ok (for warning) and then click on save the invoice
    you stay on the same page
    Now click on town
    and then click on edit on the first line (200900017) new
    then click on note even once, you will see that the memo has not been changed

    How comes?

    KR
    Martin

    The problem is that the creation of a region of a modal rise this area of the html code. Take a look at the DOM when you run your page and not the html source code, because that does not reflect the changes to the DOM is the loading of the page. This means that your memo field is far from the FORM tags and actually only submit to the session state. The issue is not addressed when you send page! You can follow through your debugging page. Memo is not saved and untreated.
    Try saving the value of session state is not enough, it does not really matter in this case. The time that you submit the page, session state is crushed by the submitted values of the elements.
    So what I did:


    • Move P9_MEMOVELD to the FACTUUR region, as well as all other db fields

    • change the type of hidden

    • the protected value not

    • in modal region to create a new page P9_MEMOVELD_POP, type textfield element

    • Set the source to always use a page element as a source, with the source P9_MEMOVELD

    • change of function updatememoveld:

      function updateMEMOVELD ()
      {
         /*
         var get = new htmldb_Get(null, &APP_ID.,
                          'APPLICATION_PROCESS=f_memo', 0);
         get.add('P9_MEMOVELD',$v('P9_MEMOVELD'));
         var gReturn= get.get();
         //alert(gReturn);
         //alert($v('P9_DATUM'));
        $s('P9_MEMOVELD',gReturn);
        alert($v('P9_MEMOVELD'));
        $s('P9_MEMOVELD_COPY',$v('P9_MEMOVELD'));
        */
        $s('P9_MEMOVELD',$v('P9_MEMOVELD_POP'));
        $('#ModalForm').dialog('close');
      }
      

      If you want or need the session state as a whole belongs to you, it depends on if you are using this also dynamically on the page and therefore to influence results, but I don't think it will be (it's a Memo field...)



    Additional notes:

    • Be careful with the jquery libraries! The standard libraries are included, but you add previous versions too! 1.4.2 this could cause problems of...

    • Use your models better. Why did you would wrap a region in the div tags? Change or add a model of region to be DIV tags You can then easily assign a static id in this region and target. This will save you from enveloping the wrappers wrapped (cause it is what looks like the code that is generated in the end).

  • Foglight display size of the modal dialog box

    Hello

    Dashboards drilled down, I can choose how to display the detailed view.  So I chose popup--> the modal dialog box.  Now when I click on a line, instead of leading me to another page, it will display a popup window and view detail info.  The popup window has a fixed size and I can't change it.  Is there a way to change or set a certain size?

    Yes. You must change the settings from the view of exploration down, not the parent view. The settings are located under Configuration-> Options of Popup. You can play with the default size, size maximum and scroll bar to display the drilled down. It took me a while to figure this one out myself.

  • How to set the location of the display of the modal dialog box?

    Hello

    Setting the height of a modal dialog box seems to influence the position of the modal dialog in the window.

    (See also the Position of the modal dialog box)

    If anyone can confirm this? And if so, how can I handle it?

    Thank you

    Jos

    Hello

    Thanks John: How to persist APEX dialog size and position. HardLikeSoftware

  • interaction of the modal dialog box with master apex 5

    Hello

    Apex 4.2 that my links has been built with sql only for the specified lines, links point to event opening the modal dialog box.

    Can you tell me how should I format link to open the modal dialog box for interactive report?

    Hi jareeq,

    jareeq wrote:

    Apex 4.2 that my links has been built with sql only for the specified lines, links point to event opening the modal dialog box.

    Can you tell me how should I format link to open the modal dialog box for interactive report?

    Please see the example of a modal dialog box of region in sample dialogue is available in packaged Application.

    This will give you an idea how to call a modal dialog box for interactive report link.

    or better create sample on apex.oracle.com which will be easier for users to give you the appropriate solution.

    Kind regards

    Jitendra

  • Possible to update the display of the art behind the modal dialog box?

    I am trying to create a plugin that changes the attributes display and art in a modal dialog box. I would like to change to show that they are made in the dialog box before the dialog box is disabled.

    From now on, it seems that the view is only updated when the dialog box is disabled.

    Is there some registrant can I send, or on function call to trigger a new drawing of in my UIController?

    Again, I think I answered my own question. By the discussion here: AI Document-view synchronization problem

    I called AIDocumentSuite-> RedrawDocument() 2 x. That seems to have done the trick.

  • Cannot process the request because a modal dialog box or the alert is active

    I can't work for the life of me why I get this message when "cannot process the request because a modal dialog box or the alert is active. I simplified my code to reproduce the problem.

    All I want to do is have a dialog box that allows me to edit items on the page... But it does not seem to allow it. I must be missing something simple.

    var selection = app.activeDocument.selection[0];
    
    dialog = new Window('dialog');
    
    var button = dialog.add('button', undefined, 'Resize');
    
      button.onClick = function() {
    
      selection.geometricBounds = [0, 0, 10, 10];
    
    };
    
    dialog.show();
    

    If you use 'dialogue', then you must leave the modal state to interact with the app was done by closing the dialog box.

    var w = new Window('dialog');
    var v = w.add ('edittext');
    var b = w.add('button');
    b.onClick = function(){
        w.close(1);
    }
    if (w.show()==1) alert (v.text);
    

    Or switch to modal MOM like brother suggested dialog boxes...

    Loïc

    Ozalto | Productivity-oriented - Loïc Aigon

  • How to remove "modal dialog box or alert" when the script is underway?

    Hi all

    I've created a script that will set the text of the rtf files from a folder to a document on a different page based on the correspondence. But if a font which was in doc file but absent on my mac, showed an error when running the script.

    This means that Indesign has opened a missing alert police box and script stop to this line and the error shows "cannot process the request because a modal dialog box or the alert is active.

    Is possible to remove this error and the script is continue to place all RTF files? I have little knowledge of try/catch.

    indesign #target

    myDoc var = app.documents.item (0);

    sourceFolder var = Folder("/Users/admin4/Desktop/ec_txt");

    myFiles = sourceFolder.getFiles ("*.rtf");

    var myFrame1 = myDoc.pageItems.itemByID (111076);  Switzerland

    var myDoc.pageItems.itemByID = myFrame2 (111114);  euro area

    var myFrame3 = myDoc.pageItems.itemByID (111146);  Germany

    for (var i = 0; i < myFiles.length; i ++)

    {

    switch (myFiles [i].name.slice (6, myFiles [i].name.lastIndexOf ("_")))

    {

    case 'Switzerland_en ':

    myFrame1.parentStory.insertionPoints.item(-1).place (file (sourceFolder + "/" + myFiles [i] .name))

    break;

    case 'Eurozone_en ':

    myFrame2.parentStory.insertionPoints.item(-1).place (file (sourceFolder + "/" + myFiles [i] .name))

    break;

    case 'Germany_en ':

    myFrame3.parentStory.insertionPoints.item(-1).place (file (sourceFolder + "/" + myFiles [i] .name))

    break;

    }

    }

    To remove alerts, you can use different levels of user interaction.

    app.scriptPreferences.userInteractionLevel = UserInteractionLevels.NEVER_INTERACT;
    

    Not forgotten to reset after the end of the script with the following:

    app.scriptPreferences.userInteractionLevel = UserInteractionLevels.interactWithAll;
    

    Hope it resolve your request.

    --------

    Green4ever

Maybe you are looking for