Eventing between multiple IViews

I have multiple Dynpage IViews on one page. I raise and receive events between the IViews. I can alert the databag or eventObject values. The problem is when I try and write to the IView that has subxcribed to the event.
ending IView:
/******  store initial client data   ******/
     EPCM.storeClientData( 'urn:myOwnNameSpace', 'myData', '15' );
     EPCM.storeClientData( 'urn:myOwnNameSpace', 'myData2', '10' )
/******* set the user name based off of the selected index for Request For *******/
function setRequest(){  
     var funcName = htmlb_formid+"_getHtmlbElementId";
     func = window[funcName];
     var ddl = eval(func("Request"));  
     var selectedIndex = ddl.getIndex();
     var name = ddl.getValue(selectedIndex);
     EPCM.raiseEvent( 'urn:myOwnNameSpace', 'myRequestFor',  name );
Receiving IView:
[code]function myRequestHandler( eventObject ) {
    var passedData = eventObject.dataObject;  
    var temp=EPCM.loadClientData('urn:myOwnNameSpace', 'myData');
    var funcName = htmlb_formid+"_getHtmlbElementId";
     func = window[funcName];
     var myTime = eval(func("myTime"));  
     myTime.setValue(passedData);
EPCM.subscribeEvent( 'urn:myOwnNameSpace', 'myRequestFor', myRequestHandler);code]
The alert has the data passed but the values are not written back to the JAVA htmlb objects.
I did the same thing using JSP DYnpages and it works. I would prefer nto to use the JSP page. Do I have an option

the problem is not missing the document element value. I have it. I can alert it to the browser. The problem is forcing the value back to the JAVA HTMLB form element within the class.
The problem is closed. I have gone the JSP route which is working.
Message was edited by: Tom Mosseau

Similar Messages

  • Eventing between three iviews

    Hi all,
    I implemented three Iviews in a model and tried to define eventing between them in the following manner:
    - Output of iView1 is input of iView2
    - Output of iView2 is input of iView3
    Eventing is functioning well between iView1 and iView2, but it isn't doing between iView2 and iView3.
    Does eventing only work between two iViews once a page? Do I need a different EPCM event than "com.sap.visualcomposer:epcm" for the eventing between iView2 and iView3.
    Regards,
    Elyes

    Hi
    Did you give the event between iview1 and 2 and iview 2 and 3 different names.
    Jarrod

  • Using events between EP iView and WD iViews

    Hello all,
    I'm sending an event from EP iView to WD iView.
    it is working fine except i can't pass a parameter between them.
    Does anyone know how to pass the parameter?
    Thanks, Adi.

    Hi,
    > Is this documented
    More or less, see http://media.sdn.sap.com/html/submitted_docs/60_sp2_javadocs/epcf_toolbox/com/sapportals/portal/prt/service/epcftoolbox/package-summary.html
    > he can try "parameter1" instead of "dataObject"
    > ...
    > it basically a EPCF event
    That's what I wanted to say, also this script generator cannot generate other JS calls than the JS-API provides. That's why I advise to check the generated code, to get an idea how these "registered parameters" work (if they do).
    Hope it helps
    Detlev
    PS: If it doesn't help, just let the toolbox go and create the JS by yourself. If you really want more than one parameter, encapsualte them into one string like "myfirsparam=123;mysecondparam=456".

  • Client side event between Java iView and BSP application

    Hi,
    I am developing a BSP iView which listen to event raised by standard SAP HR TeamViewer iView.  The TeamViewer iView raise a event when user click on the employee list. 
    EPCM.raiseEvent { "urn:com.sap.pct.hcm.orgmanagement:CurrentObject", "objectChanged", concatenatedKey);
    My BSP is subscribing to the event and perform the myreceiveEvent function.
    EPCM.subscribeEvent
    ( "urn:com.sap.pct.hcm.orgmanagement:CurrentObject", "objectChanged", myreceiveEvent );
    However, my BSP returns an error message saying that EPCM is undefined.  I know that I have to included the java script file.  I checked with my basis team guy and they said there is not any js file in ICF.  Can someone let me know which file I need to include in my BSP code and where is the file locate?
    Thanks,
    Eric

    Hi Eric,
    > the ICF where the BSP is stored
    > is in the Oracle database
    Eric... the place where the JS fragment - within the BSP - appears, is retrieved by some http request. The script=epcfproxy.js forces the browser to send a http request just to the same relative location the original page came from. Doesn't matter if something is within a database...
    > Do you know how to locate the
    > epcfproxy.js file in the WAS?
    I think:
    > and the epcfproxy.js file is in the zip file
    > that you suggested
    you have found it?! Put it to any place on the BSP server you can access, if you can't set it with relative url, use "/some/.../dir/epcfproxy.js" as location.
    > If I am only EPCM but not EPCMPROXY,
    > do I need to include the epcfproxy.js in my code?
    Have a look at epcfproxy.js. It's no magic at all, you have to call top or parent (just look) and do some minor things. For sure, you can live without the proxy file, you have just to put the neede scripts explicitely on your page, that's not that fine, but it works.
    Hope it helps
    Detlev

  • URGENT:Eventing between two iviews in one page

    Hi all,
    I have developed a model in visual composer which contains
    two iviews in a single page .The first iview contains the input fields and the data service.The second iview contains the output form.I should get the output in the second iview when i click a button or a field in the table.I am unable to pass the data from one iview to another iview during thios process.And also help me in navigating between two different pages and data transfer between them.Please help me regarding this issue either by sending any documents or by giving useful suggestions,
    Points will be rewarded for helpful answer.

    Hi,
    see the modeler's  Guide
    [https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/63f2052e-0c01-0010-b9a2-e1f7457a7fbe]
    For differenr layers creation
    Help .sap.com link  [http://help.sap.com/saphelp_nw04s/helpdata/en/ca/fbdb4269b2f340e10000000a1550b0/frameset.htm]
    Regards,
    Govindu

  • Eventing between iView and nested iView

    I try to make an Event between an iView and an nested iView. I followed the instruction on page 164 in the reference guide and tried some other things, but it doesn´t work. I make an output Port on the one side, there i could select the fields to be displayed. But when I compose the Input Port , there are no field to see.
    So what make I wrong?

    Hello Marcus,
    the main thing about the desired eventing seems to be that when you have placed your data service in the nested iview you have to create a signal-in port<b> by pulling a data connection out of the input port of the data service</b> to create the input-port of your nested iView. Only this way, the port is filled with the input data of the data service.
    Back in your main iView you can connect the data flow to the newly created port of your nested iView the same way as you connect to a data service. You then should see the input fields of the data service that you placed in the nested iView and be able to assign values to the input fields.
    Hope that helps
    cheers
    Gerhard

  • HT1198 If I share an iPhoto library between multiple users, will the Faces, Events, and Places be automatically usable by all users, or will each user have to tag all the photos (e.g. if a user tags a face, will a different user have to do it in their own

    If I share an iPhoto library between multiple users, will the Faces, Events, and Places be automatically usable by all users, or will each user have to tag all the photos (e.g. if a user tags a face, will a different user have to do it in their own iPhoto application??

    Have you read this Apple document regarding sharing a library with multiple users: iPhoto: Sharing libraries among multiple users?
    OT

  • Portal eventing between Java WD iview to ABAP WD iview?

    HI Experts ,
    I have requirement on which,
    The manager can select an employee from the EE Search iView (Object and Data Provider). All other iViews react on the selection and display data of the selected employee. Technically the personnel number is transferred from the search iView to the other iViews on the portal page, also to the related activity iView. This mechanism is called Eventing. The applications, started via the related activity iView, are launched with the personnel number as parameter. With other words the application, e.g. Manage Objects on Loan, can be directly started for the employee selected from the EE Search iView.
    The Employee Information page is based on WD Java whereas the Objects on Loan application described in this specification is based on WD ABAP...........Due to different technologies used how to do the Pernr number transfer between these iviews?
    If anybody have done this let me know the steps
    Thanks in Advance,
    Dharani

    Hi Dharani,
    You can use portal events to enable iViews running on the same page to communicate with each other. You just have to find out which event is fired by the WD Java iView and then you will have to register and handle the event in your WD ABAP application : http://help.sap.com/saphelp_nw70ehp1/helpdata/en/f6/7d6f4151dc5758e10000000a1550b0/frameset.htm
    You can use HttpFox (firefox plug-in) to find the details of the fired event (name, namespace...) by looking at the eventQueue parameter in the HTTP POST request.
    Regards,
    Pierre
    Edited by: Pierre DOMINIQUE on Jul 9, 2009 11:16 AM

  • Eventing between Web Dynpro iView and regular DynPage iView

    I have seen, done eventing between two dynpage iviews and two webdynpro iviewsHowever, and gone through "How to Use the Portal Eventing for Web Dynpro iViews". However, I have been trying to have a webdynpro iview talk to a dynpage iview but they just won't communicate. Is this even possible?
    Ok basically I have a portal page in a popup window with no masthead and top level navigation. The page has two iviews -  the top one being an iView that points to a webdynpro application on Server A, and the bottom one being a dynpage iview on the Portal Server B.
    In the webdynpro iview, the code for when a button is clicked is
    public onSomeAction(Event event) {
        WDPortalEventing.fire("urn:myUrn","eventName","value");
    In the dynpage iview, the code i have for it is
    myServ = (IEpcfToolbox) PortalRuntime.getRuntimeResources().getService(IEpcfToolbox.KEY);
    myReceiver = myServ.getClientEventReceiver(request, "urn:myUrn", "eventName");
    form.addRawText(myReceiver.getWrappedScript());
    try {
        if (!myReceiver.isReceived()) {
            form.addComponent(createMainScreen());
        } else {
         form.addComponent(new TextView("event received!"));
    } catch (Exception e) {       
        form.addComponent(createErrorScreen());
    I tried all the things I could think of but the receiving iView just won't get the event fired.
    Can someone confirm that this should work? and correct me where I've done wrong.
    Please help. this is very urgent. your help will be greatly appreciated. thanks in advance
    PS. My environments are EP 6.0 SP2 and WAS 6.40 SP14

    > hi,
    >
    > portal eventing  works properly if all participants
    > are in the same domain. Otherwise portal eventing
    > g does not work. If the SAP J2EE
    > Engine on which the Web Dynpro application is
    > deployed is in another domain, you have to  map the
    > IP address of the SAP J2EE Engine to the domain name
    > of the
    > SAP J2EE Engine on which the SAP Enterprise Portal is
    > running, by editing the configuration file hosts.
    >
    > regards,
    >
    > Ganesh.N
    I am no direct access to the boxes so I can't try your suggestion. It really makes sense that eventing won't work if the iViews are on different domains. I know they are in the same domain but different subdomains.
    Anyway, good news I got eventing to work with the mentioned set. I found that that the SAP Java EPCFToolbox API had a bug that kept throwing javascript errors when I tried to have the web dynpro iview fire an event and the SAP one subcribed to it.
    I got around it but using the EPCF Javascript API instead.
    Code:
    response.write("<script>");
    response.write("EPCM.subscribeEvent('urn:dla.telework', 'createPdf', doSomething);");
    response.write("function doSomething() {");
    response.write("window.location = self.location + '&eventReceived=true';");
    response.write("}");
    response.write("</script>");
    So basically just output raw text through the response object and it just works.
    On a similar topic, since eventing can only pass string parameters back and forth, I'm still looking for a way to pass other more complex Java objects between web dynpro and sap iviews. From what I haven't they don't share the same session object (which I thought they did). So basically I can't just stick stuff in the session and pull it down on the other end. I'm clueless right now. If anybody has some tips, plesae share. Thanks

  • Portal Eventing between WDP Java iView & non-WDP iView

    Dear Experts,
    I have 1 Web DynPro Java iView and 1 non-Web DynPro (using JSPDynPage and JSP) iView, both attached to a page. When Web DynPro Java iView fire a portal raise event, the portal iView did not execute the javascript function tied to the event subscribed.
    Here is the code snippet which reside in the Web DynPro Java iView that is used to fire the event
    String param = "test";
    WPortalEventing.fire("urn:com.company.Test1", "TestEvent", param);
    This the code snippet that is in the jsp page
    function notifyTest(param){ 
          // code to print param value is here
    EPCM.subscribeEvent("urn:com.company.Test1", "TestEvent", notifyTest);
    Note:
    1. When Web DynPro Java iView fire the portal event the entire page is refreshed, including the non-WDP iView.
    2. When EPCM is replaced with window.top.EPCM, the page is refreshed, it is totally hanged with progress bar.
    Can anyone help to solve this problem?
    Edited by: CloudSOmnislash on Apr 8, 2009 6:06 PM

    Kumar, Rui,
    I have all my code inside a web dynpro component. All that I have in dynpro to work with (or that's what I know so far) is a WDPortalEventing object that I can use to access the fire, subscribeEvent and unsubscribeEvent methods. I still haven't found a way to get to the actual EPCM object that the Portal runtime gives you through javascript. And even if I get there, how am I supposed to write javascript in my dynpro code and later pass the value stored in the client data bag to the web dynpro context ?
    Simon,
    I had tried a small app yesterday and it didn't work when the iViews were not assigned to the same page. I will see if I can change my code anymore and get it working. I will make fresh posts to this thread as and when I find anything that works. In the mean time, if you have webdynpro iViews that talk to each other across pages, do let me know how you are doing it!
    Thanks for your replies...
    - Navneet.

  • Portal Eventing between Web DynPro Java iView and non-Web DynPro iView

    Dear Experts,
    I have 1 Web DynPro Java iView and 1 non-Web DynPro (using JSPDynPage and JSP) iView, both attached to a page. When Web DynPro Java iView fire a portal raise event, the portal iView did not execute the javascript function tied to the event subscribed.
    Here is the code snippet which reside in the Web DynPro Java iView that is used to fire the event
    String param = "test";
    WPortalEventing.fire("urn:com.company.Test1", "TestEvent", param);
    This the code snippet that is in the jsp page
    function notifyTest(param)
         // Code to print param value here
    EPCM.subscribeEvent("urn:com.company.Test1", "TestEvent", notifyTest);
    Note:
    1. When Web DynPro Java iView fire the portal event the entire page is refreshed, including the non-WDP iView.
    2. When EPCM is replaced with window.top.EPCM, the page is refreshed, it is totally hanged with progress bar.
    Can anyone help to solve this problem?

    hi
    Please write the below code snippet in ur jsp for notifyTestjavascriptfunction
    function notifyTest( eventObj ) {
         eventParameter=eventObj.dataObject;
         // code to print the parameter "eventParameter"
    Thanks
    Harsimran

  • How to Exchange Data and Events between LabVIEW Executable​s

    I am having some trouble determining how to design multiple programs that can exchange data or events between each other when compiled into separate executables. I will layout the design scenario:
    I have two VIs, one called Status and the other Graph.  The Status VI displays the serial number and status of each DUT being tested (>50 devices).  The Status VI has one timed loop along with a while loop that contains an event structure.  If the user clicks on the DUT Status Cluster the event structure needs to pass the serial number to the Graph VI.  The Graph VI when called fetches the records for the DUT based on the Serial Number and time frame.  This VI is a producer/consumer so the user can change the time frame of the records to display onto the front panel graph.
    I have a couple reasons the VIs need to be separated into independent applications. One being the underlying database fetches tends to slow the threads down between the two VIs; the other is that they may be distributed into separate systems (don't consider this in the design criteria).
    I have been researching the available methods to pass the serial number to the Graph VI.  My initial idea was to us a command line argument, but this does not allow the Status VI to pass another Serial Number to the Graph once it has started (I do not want to allow the user to execute multiple Graph applications because the database query can load down the server).
    Is there a program method that I can implement between the two VIs that will allow me to compile them as two executables, and allow the Status program the repeatedly send an updated serial number event to the Graphs program.
    I have reviewed many methods; Pipes (oglib_pipe), Action Engine, and Shared Variable.  I am not sure which method will give me the ability to use a Event driven structure to inform the Graphs program when to update the serial number.  Any suggestions and tutorials or examples would be greatly appreciated.

    I have used the Action Engine (aka: functional global) approach for many years and it works well. Something to think about is that if you make the event's datatype a variant the only code that will need to know the actual structure of the event will be the function that needs to respond to it. Hence, a single event can service multiple functions.
    Simply create a cluster containing an enum typedef that is a list of the functions that the event will service, and a variant that will be the function event data. From anywhere in the code you can fire the event (via the functional global) by selecting the function from the enum and converting function specific data to a variant. On the receiving end the event handler uses the enum to determine the function that is to get the data and sends the variant to it. The event handler doesn't know or care what the actual event data is so you could in theory add new functions without modifying the event handler.
    Mike...
    Certified Professional Instructor
    Certified LabVIEW Architect
    LabVIEW Champion
    "... after all, He's not a tame lion..."
    Be thinking ahead and mark your dance card for NI Week 2015 now: TS 6139 - Object Oriented First Steps

  • Communicate between two iviews

    Hi everyone, if i create two iviews. And i want to pass a variable from one iview to the other one by triggling an event .
    What technology can help me do that?  Thx~~

    Hi Louis,
        Communication between two iviews is accomplished by EPCF concept.
      Refer to this forum thread where Prakash Singh has clearly explained about the same
    Communicate between two iviews
    Hope this helps.
    Regards,
    Joshua Kiran

  • Drag and drop between multiple instances of an executable

    I want to know if there is a special way (not using Windows API) to drag and drop data between multiple instances of a same executable. 
    I have an application built in LabVIEW, where the main window can open a child window. Each window has a plot control. Between the two windows, a plot data of main window can be copied by drag and drop. 
    And I open another instance of the same executable. Now there are two executables(A and B).
    I want to drag and drop a plot data from the main window of B to the child window of A. But in this case, Drag Enter Event is not fired. I think that the event seems to be fired only inside an executable.
    http://digital.ni.com/public.nsf/allkb/AB268878693EF4B586257037004A6725 says that Queue or Semaphore is working only inside an executable. Is drag operation also valid only inside a process?

    Hi,
    Placed images (as opposed to pasted images) in Indesign are by their very nature pointers to an external image file, so there is no way to slim down the size of your exported PDF other than by playing with the export settings. Other than that, ensure that your file is placed in Indesign at 100% and at the correct resolution for your desired output. If you open the PDF in Acrobat, you can also save as a reduced size PDF which may help.
    Good luck!
    Malcolm

  • How to transfer parameters between two iViews?

    Hi all,
    I have two WebDynpro based iViews (StartView and SecondView). when I press the button in the StartView, the EP will navigate to the SecondView. During this process, I want send a parameter value from the StartView to the Second View. In the StartView, I use the follow method to navigator:
    WDPortalNavigation.navigateAbsolute(
                  "ROLES:portal_content/com.sap.itsamtest/com.sap.secondpage",
                     WDPortalNavigationMode.SHOW_INPLACE,
                     (String) null,
                     (String) null,
                     WDPortalNavigationHistoryMode.NO_DUPLICATIONS,
                     (String) null,
                     (String) null,
                     "value=From Start Page");
    In the SecondView, I use the WDWebContextAdapter to get parameter's value.
    String Name = WDWebContextAdapter.getWebContextAdapter().getRequestParameter("value");
    It works fine. But I found there is a warning message:
    The method getRequestParameter(String) from the type IWDWebContextAdapter is deprecated     
    So is there any other good mechanism to implement the data transfer between two iViews.
    Thanks and Best regards
    Deyang

    Hi,
      Try the following:
    <b>Subscribing to a Portal Event:</b>
    http://help.sap.com/saphelp_nw04/helpdata/en/0c/8eee31e383cd408bcb07e80b887463/frameset.htm
    <b>Code Example for Programming Portal Eventing:</b>
    http://help.sap.com/saphelp_nw04/helpdata/en/0c/8eee31e383cd408bcb07e80b887463/frameset.htm
    <b>Regards,
    Sai Krishna.
    PS: Plz do assign points if it helps. ;-)</b>

Maybe you are looking for