Portal Events---WDA view is empty on initialization

Hello everyone,
I created a WDA application which will be integrated with Employee Search Iview (provided by SAP).  Everything is working fine...only issue is that when we display the page first time...my WDA view is empty...untill we click on an employee....I want to get the first employee from the list and display his/her info in my WDA view as soon as we open up the page.
I cannot seem to find any info on which event this Employee search iview triggers in the initialization and what parameters this event passes on.  Is there any documentation on this? I mean list of event trigger by this employee search iview and event names? 
Once again...when we click on an employee from the list....we are populating the data in WDA view...no problem there....we just want to show data when we first come to the page....same as SAP does for its Employee search iview and general data iview....these iviews are from SAP...and when we put them together...general data iview fetchs the data for the first employee in the list....on initialization....but our WDA view stays empty....
Thanks...
J.

Hi J,
when we click on an employee from the list....we are populating the data in WDA view...no problem there....we just want to show data when we first come to the page.
conceptually you need to place method in WDDOINIT of default view in your  WD4A application and try to read the first element of the employee list. This would be little different than reading the employee data from event, may be you can have some method in the ASSISTANCE class that attached to your WD Application that can read employee, data as soon as there is one available .
Greetings
Prashant

Similar Messages

  • Portal Eventing or FPM - navigate to diff comp controller view and ....

    Hi,
       The query is simple, i guess -
    From a particular component controller ( not from its view ) how can i navigate to a view of different component controller.
    Also how can i navigate to diff view ( within the same controller ) by the same controller.
    I tried Portal Eventing and FPM -
    WDPortalEventing.fire( "urn:com.sap.xss.hr.per.tw.bank.overview.Vc...Overview.Eventing","send","N");
    and at receiver
    WDPortalEventing.subscribe("urn:com.sap.xss.hr.per.tw.bank.overview.VcPerBankTWOverview",
         "send", wdThis.wdGetPortalEventAction() );
    it didn't worked.
    Also tried FPM after creating an FPM view , but need inputs from you to link it in event links as target.
    ECC6.0 - mysaperp2005.
    EP7
    THanks,
    Regards,
    Ankit

    Vishwas.. / Chaitanya -
    Thanks for the reply -
    -   I want to navigate to CompB's view from Component Controller A ( not frm the view ).
    - Another query was - how can i get to View2 of comp controller A via Comp Controller A itself. 
    Your answers were helpfull but i need some more info..
    The forums link u mentioined had some body mentioned this -
    " 2 ways to do this...
    The first way:
    1) Create a separate window in Comp B for each view that you need to navigate directly to (an interface view is created for each window)
    2) Embed the multiple interface views of Comp B into Comp A
    3) Use a separate outbound plug in Comp A for each Comp B interface view
    AFTER STEP 2 ON STEP 3 HOW CAN I HAVE AN OUTBOUND PLUG FROM COMP CONTROLLER A ( not from the view ). i.e., outbound plug from Comp A to the Comp B inteface view
    Lokesh -
    Trying same namespace didn't worked , - i guess Portal eventing might work between views , but here i have a component controller and a view.

  • Calling Portal event from ABAP class

    Hi Experts,
    I need a following clarificatrion, Please help,
    1. Is it possible to call a webdynpro method from a normal ABAP class?
    2. If no, we need a functionality of a class 'CL_WDR_HTTP_EXT_MIME_HANDLER' having method 'DO_DOMAIN_RELAX_HTML'.
    Is there any alternative method which can be used in ABAP having the same functionality.
    3. Is there any ways with which we can call portal event from ABAP class?
    Thanks,
    Shabir

    >1. Is it possible to call a webdynpro method from a normal ABAP class?
    I wouldn't necessarily recommend this approach. You shouldn't try to trigger events or any of the standard WDDO* methods from outside the WD Component itself.  That said, you can pass the object reference (like the WD_COMP_CONTROLLER object reference or the View Object Reference) into methods of normal classes.  Be careful if you are finding yourself calling a lot of your added methods from outside WD.  This is probably a sign that these methods should be in the Assistance Class or some other Class functioning as a Model Object.
    >2. If no, we need a functionality of a class 'CL_WDR_HTTP_EXT_MIME_HANDLER' having method 'DO_DOMAIN_RELAX_HTML'.
    Is there any alternative method which can be used in ABAP having the same functionality.
    What exactly do you want to do here?  Do you just want to get the relaxation script?  For what purpose?  You should never need to inject the relaxation script into WDA. 
    >3. Is there any ways with which we can call portal event from ABAP class?
    To what purpose.  Do you just want to delegate the triggering of the event that is inside WD Component to be called from a class?  If so you can pass the portal API object reference into a class from the WD Component.  However this only works while running within WD.
    How is this class used?  Are you running in WD?  Are you trying to generate some HTML code that runs in the portal independent of WD?

  • Portal event not working

    Hi,
    I am try to handle portal event in my WD ABAP i view. The event is fired by WD Java team viewer iView in MSS. What I want is when someone select an employee from team viewer iview from MSS, my WD ABAP iview should react accordingly.
    I check SAP note 1112733 for corresponding solution to handle event but it didnt worked. My WD ABAP application is not able to subscribe to the event.
    I wrote the following code in WDINIT method of my view
    DATA: l_api_component  TYPE REF TO if_wd_component,
            l_portal_manager TYPE REF TO if_wd_portal_integration,
            view TYPE REF TO if_wd_view_controller.
      l_api_component = wd_comp_controller->wd_get_api( ).
      l_portal_manager = l_api_component->get_portal_manager( ).
      view ?= wd_this->wd_get_api( ).
      l_portal_manager->subscribe_event(
    portal_event_namespace = 'urn:com.sap.mss.employeesearch'
    portal_event_name      = 'selection_changed'
    view                   = view
    action                 = 'RECIEVE_EMP_DATA' ).
    and the code written in event handler method is:
    METHOD onactionrecieve_emp_data .
      DATA: evt_name TYPE string.
      DATA lo_nd_gc_event_data TYPE REF TO if_wd_context_node.
      DATA lo_el_gc_event_data TYPE REF TO if_wd_context_element.
      DATA ls_gc_event_data TYPE wd_this->element_gc_event_data.
      DATA lv_event_string LIKE ls_gc_event_data-event_string.
    navigate from <CONTEXT> to <GC_EVENT_DATA> via lead selection
      lo_nd_gc_event_data = wd_context->get_child_node( name = wd_this->wdctx_gc_event_data ).
    get element via lead selection
      lo_el_gc_event_data = lo_nd_gc_event_data->get_element(  ).
    get single attribute
      lo_el_gc_event_data->set_attribute(
        EXPORTING
          name =  'EVENT_STRING'
          value = 'before handle' ).
      evt_name = wdevent->get_string( name = 'PORTAL_EVENT_NAME' ).
      IF evt_name = 'selection_changed'.
        lv_event_string = wdevent->get_string( name = 'PORTAL_EVENT_PARAMETER' ).
    get single attribute
      lo_el_gc_event_data->set_attribute(
        EXPORTING
          name =  `EVENT_STRING`
          value = 'handled' ).
      ENDIF.
    ENDMETHOD.
    In debugging mode, I am not able to go inside my event handler method.
    Please help why this event is not getting handled .
    Thanks
    Vishal Kapoor

    >
    Jon MB wrote:
    > Hi Thomas
    >
    > Please, can you confirm the restriction above applies to the following scenario?
    >
    > - We have an ECC system with the following URL: ecchost.domain.suffix
    > - We have a portal with the following URL: portalhost.subdomain.domain.suffix
    >
    > We have configured the portal for domain relaxing and SSO is working fine.
    >
    > Each system is under the same domain (domain.suffix), but in different subdomains.
    >
    > Shoudl this be the cause of ABAP WD applications not working? Is there any way to fix this without changing the URLs?
    >
    > Thanks in advance,
    > Jon
    I'm not a portal consultant, so I can only related the requirement from the WDA side that the domains must be the same. I don't know if the domain relaxation on the portal sise will take take of the subdomain.  My guess is that if you are having problems, that it doesn't.  You would probably need to ask this question in the portal forum or discuss with a portal consultant.
    > Is there any way to fix this without changing the URLs?
    I don't know of any.
    >Shoudl this be the cause of ABAP WD applications not working?
    What do you mean, not working?  Is the portal eventing just not work or are you not able to load the WDA applications at all.

  • Webdynpro proxy page and portal event

    Hello there,
    is it possible to capture the event from employee search iview into my custom webdynpro ABAP iview?
    Since it occurs to me that when a portal page is developed as a "Default page template" I am able to capture the event whenever manager clicks on any employee in the list.  But when i create a page with "Web dynpro proxy page" template, I cannot subscribe to the event.
    We are trying to use employee search ivew and general data iview provided by SAP plus a custom WDA iview.  But when I do a default page template, I am able to caputre the event but general data iview does not show any data...and when I use the proxy page template...I get data in general data iview but I am not able to capture the event....and my custom WDA iview does not show anything...
    Employee search iview (previously known as team viewer) and general data iview are standard SAP iviews.
    any ideas...
    appreciate the help!
    Thanks....
    J.

    Hi Srivastava,
    The scenario is like this....
    page lay out:
    Team viewer iview here----provided by SAP
    General data iview here-----provided by SAP
    my WDA iview here-----custom iview
    if the page template is default template....I get data in my WDA iview for selected employee in the team viewer...but I go not get any data in General data iview
    if the page template is web dynpro proxy page...i do not get any data in my WDA iview...but i get data in general data iview...
    after debugging this thing...i found that for webdynpro proxy page...the portal event is not getting caught in my WDA iview...
    how to subscribe to a portal event if the iview is embedded in  a page which is using web dynpro proxy page template...
    Just want to share this...that portal eventing is working fine...if the my iview is embedded in a page which is using default page template...
    any ideas????
    anyone???
    Thanks...

  • WD Abab - Portal Events from Employee Search

    Hi guys,
    I want to get the PERNR selected in Employee Search.
    I have two ivews,
    Employee Search and WD Abap.
    I´m using this source to subscribe the portal event.
    method WDDOMODIFYVIEW .
    data l_api_component type ref to if_wd_component.
    data l_portal_manager type ref to if_wd_portal_integration.
    l_api_component = wd_comp_controller->wd_get_api( ).
    l_portal_manager = l_api_component->get_portal_manager( ).
    data l_wd_view type ref to if_wd_view_controller.
    l_wd_view ?= wd_this->wd_get_api( ).
    call method l_portal_manager->subscribe_event    exporting
          portal_event_namespace = 'urn:com.sap.pct.hcm.orgmanagement:CurrentObject'
          portal_event_name      = 'objectChanged'
          view                   = view
          action                 = 'PORTAL_EVENT'.
    endmethod.
    What´s the action I have to implement ?
    And How I could get the PERNR selected ?
    Best Regards,
    Silvio Galery

    Do i understand you correctly that you are not getting the portal event ?
    This can be several reasons ?
    Both portal system and WDA server has to be in same domain and same proptocol to communicate with Portal event.
    Please check in that direction and search posts on this topic.

  • FORUMCRAWLER_VW view is empty

    Hello. I'm working on SES integration (trying to make it search through discussions). All I need to do is to create crawlers for two database data sources on a SES server (for forums and for announcements). But, talking about forums - it must be indexed and there must be a lot of information stored in FORUMCRAWLER_VW view, but for some reason this database view is empty. All I made for forums integration is WC_Collaboration managed server installation, creating a new forum and adding task flows with forum category IDs to a portal pages. So, the question is why a FORUMCRAWLER_VW view is empty and what I need to do to make my forum data in database to be "selectable" with this view. Thank you.

    Okay, problem seems solved. I don't know if it is a bug or a feature... (: Anyway, this view selects data from threads that had been created from a portal application. And if you create threads from WC_Collaboration server admin console, there's no data will be selected with FORUMCRAWLER_VW view. Sorry, have no time to check SQL query for those DB view, may be this behaviour is reasonable.
    Edited by: Insomnium on 17.01.2013 2:33

  • How to pass the selected Pernr from Portal to WDA iview dynamically ?

    Hi ,
    How we can pass the selected Pernr from portal page to the webdynpro application dynamically?
    Ex:
    If a manager select a employee id of an employee then it should display all the related document regarding the employee in the ivew.
    For that we need to pass the employee id(Pernr) to the iview.How it is possible.
    Thanks,
    Deepika

    Hi Deepika,
    Try using portal events. You will have to register and handle the required portal event in your WDA application.
    [Portal Events Help|http://help.sap.com/saphelp_nw70/helpdata/EN/03/0048413e466e24e10000000a155106/frameset.htm]
    In this link, navigate to Integration->portal integration->Portal Events.
    Also go through some sample applications:
    WDR_TEST_PORTAL_EVENT
    Regards,
    Reema.

  • Portal eventing in WD ABAP

    Hello ,
    We have an requirment to pass values from one WD ABAP application iView to another in the Enterprise portal.Is there any configuration that needs be done in WD ABAP or is there any setting in EP that we need to do ??
    Rahul

    Rahul,
    Though most of this stuff is of web dynpro for java. You can just replace java Code with ABAP.
    You need to use eventing functionality.In the SAP Enterprise Portal, different application types in specific iViews can be arranged on one page. To communicate between the different iView types the portal provides the Enterprise Portal Client Framework (EPCF), also known as client-side eventing. This document describes how Web Dynpro applications can use EPCF.
    http://help.sap.com/saphelp_nw04/helpdata/en/24/243ca46e1c334f8a6f8b0792656bc7/content.htm
    The following code shows the signature of the subscribe method:
    WDPortalEventing.subscribe(java.lang.String nameSpace, java.lang.String event, IWDAction action);
    for example
    WDPortalEventing.subscribe (“urn:com.sap.tc.webdynpro.test.portal”,
        “TestEvent”,
        wdThis.wdGetTestEventAction());
    You have to define the event’s name and its namespace. The combination of these two names must be unique.
    The third parameter is the Web Dynpro action, which should be mapped to the portal event. The action event handler is called if the Web Dynpro application receives the specified portal event on the client side. The mapping between a portal event and a Web Dynpro action is done automatically and it is completely transparent for the Web Dynpro application developer.
    You can reuse a Web Dynpro action for several portal events. If you want to receive the portal event’s data you have to define the following parameters for your Web Dynpro action:
    ·        dataObject
    The dataObject parameter contains the portal event parameter.
    ·        nameSpace
    The namespace parameter contains the portal event’s namespace.
    ·        name
    The name parameter contains the portal event’s name.
    It is useful to add the nameSpace and nameparameters to the Web Dynpro action if the action is reused for several portal events because you can use this information to differentiate between the portal events.
    Note: In the current version a portal event subscription is valid for a Web Dynpro view. Therefore you should add the required Java coding, for example in the wdDoInit() method of the generated view class. If you navigate between different views, you have to subscribe to every view for the portal event required.
    Unsubscribe from a portal event
    Unsubscribing from a portal event is very similar to subscribing. The following code shows the signature of the unsubscribemethod:
    WDPortalEventing.unsubscribe(java.lang.String nameSpace, java.lang.String event, IWDAction action);
    for example
    WDPortalEventing.unsubscribe (“urn:com.sap.tc.webdynpro.test.portal”,
        “TestEvent”,
        wdThis.wdGetTestEventAction());
    Note: You must unsubscribe every Web Dynpro view, because subscription and unsubscription is valid only for the current view.
    Raise a portal event
    The following example shows how to raise a portal event. The signature is:
    WDPortalEventing.fire(java.lang.String nameSpace, java.lang.String event, java.lang.String parameter);
    for example
    WDPortalEventing.fire (“urn:com.sap.tc.webdynpro.test.portal”,
         “TestEvent”,
        “AParameter”);
    You can fire a portal event anywhere in your Web Dynpro application. The event is sent to the client  with the next response. You can also raise more than one portal event in a request-response cycle. Typically, you will fire a portal event in a Web Dynpro action event handler (for example, as a response to pressing a button).
    The following step-by-step example shows how to carry out portal eventing within two simple Web Dynpro example applications.
    Example Description
    The user can enter an arbitrary string in an input field. If the user presses the pushbutton Click here in the sender view, the input string will be displayed in a TextView UI element of the listener application.
    Prerequisites
    You have built two Web Dynpro applications. How to build Web Dynpro applications is described in Creating a Simple Web Dynpro Application. In each application you have created a Web Component with a view that uses the portal eventing.
    You can find the detailed procedure describing how to insert UI elements into a view in Creating a Simple Web Dynpro Application.
    Further information about the integration of a Web Dynpro application into the SAP Enterprise Portal can you find under Running a Web Dynpro Application in SAP Enterprise Portal.
    Procedure
    Creating the Web Dynpro applications
           1.      Create the Web Dypro project. Call it webdynproexample_portal_eventing.
           2.      Create two Web Dynpro components. Call them:
                                a.      EventSenderComponent
                                b.      EventListenerComponent
           3.      Create two Web Dynpro applications. Call them:
                                a.      EventSenderApplication
                                b.      EventListenerApplication
    Creating the necessary views:
    Create the layout of the EventSenderView in the EventSenderComponent as follows:
    Create the context structure of the EventingSender View:
    The context value attribute Name must be of type String.
    Create an action “Show”
    Define the data binding of corresponding UI element properties:
    The appropriate properties of the UI elements must be bound to the context that contains and displays the data.
           4.      Define a text, for instance, “Enter a text:” for the label UI element (ID: NameLabel) using the property text.
           5.      Bind the property value of the input field (ID: NameInputField) to the context attribute Name.
           6.      Bind onAction of the button (ID:ShowButton) to the corresponding action Show.
    Implementation of the view controller
           7.      If you create an action declaratively within the SAP NetWeaver Developer Studio, the Web Dynpro framework automatically generates an onAction method in the controller’s implementation. The generated method enables you to write code to fetch the input string and to fire the portal event. The fire method of WDPortalEventing passes the data and the name of the event that should be handled by the second application as parameters. The following code shows the implementation of onActionShow method:
    public void onActionShow(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
        //@@begin onActionShow(ServerEvent)
       String name = wdContext.currentContextElement().getName();
        WDPortalEventing.fire("urn:com.sap.tc.webdynpro.example.portaleventing",
                           "Show",
                           name);
        //@@end
    Create the layout of the EventListenerView in the EventListenerComponent as follows:
    Create the context structure of the EventingListenerView:
    The context attribute Name must be of type String.
    Create an action, for example, ReactPortalEventing which should be mapped to the portal event.
           8.      Create an action ReactPortalEventing.
           9.      Add the parameter dataObject. It should have the type java.lang.String.
    Define the data binding of the corresponding UI element properties:
    The corresponding properties of the UI elements must be bound to the context that contains and displays the data.
    10.      Define a text for the NameLabel for example, The entry is displayed in a TextView UI element:
       11.      Bind the property text of the TextView UI element (ID: TextViewShow) to the context attribute Name.
    Implementation of the view’s controller
       12.      You have to subscribe to the event within the wdDoInit method. You have to define the namespaceof the event and the name of the event, for example Show. The third parameter is the Web Dynpro action, which should be mapped to the portal event.
       13.      You have to implement the action (ReactPortalEventing) that passes the dataObjectand fills the context with data. The following code shows the implementation of the wdDoInit and the reactPortalEventing methods:
    public void wdDoInit()
        //@@begin wdDoInit()
        WDPortalEventing.subscribe("urn:com.sap.tc.webdynpro.example.portaleventing", "Show",
        wdThis.wdGetReactPortalEventingAction() );
        //@@end
    public void onActionReactPortalEventing(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent, java.lang.String dataObject )
        //@@begin onActionReactPortalEventing(ServerEvent)
        wdContext.currentContextElement().setName(dataObject);
        //@@end
    Deploying the Web Dynpro Application
    Before you can call the Web Dynpro application, you have to build the Web Dynpro project and deploy the application on the J2EE Engine.
    Simple Testing of the Portal Eventing and Calling the Web Application
       14.      Create two iViews in the newly-created example folder as described in Running a Web Dynpro Application in SAP Enterprise Portal.
       15.      Create a page and add the two iViews to the newly-created page.
    To preview the Web Dynpro applications, choose the button Preview in the Portal Content Studio.
       16.      Enter your input and choose button Click here.
    Result
    A page preview will demonstrate portal eventing.
    Also, Please refer to these links,
    http://help.sap.com/saphelp_nw04/helpdata/en/c6/21fc3f82c2e469e10000000a155106/content.htm
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webdynpro/portal integration of web dynpro applications.pdf
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/cfb80249-0801-0010-3eaa-829afeac170f
    Please let me know whether its useful.
    Thanks,
    Raj.

  • Portal eventing between bsp and VC

    Hi everybody
    I need to use portal eventing to have a bsp and a VC iview communicate.
    The bsp iview should be displayed within the VC iview as html view, raise a portal event with some sort of parameters inside, and then be dynamically hidden by the main iview.
    I have often read about VC and bsp exchanging signals when belonging to the same page, but will this work even with bsp iview within VC iview? Has anyone ever achieved this?
    thanks
    Vincenzo

    Hello Vincenzo,
    It won't work, since the html view is implemented as an iframe on top of the model. If you want to use portal eventing, you should have the iViews inside a portal page which acts as a container and you also have the entire portal framework working for you.
    Regards,
    Natty

  • Portal Eventing in Webdynpro ABAP

    Hello,
    I am trying to implement Eventing in Webdynpro ABAP using 2 components ,Com1 serving as the source component and Com2 serving as Target. In Com1 I created a Inputfield and a button ,and then tied an action to the button and called the FIRE method of the IF_WD_PORTAL_INTEGRATION and sent the value in the Inputfield as the eventing parameter.
    In Com2, i subscribed to the event in the wddoinit() method and then defined an action for the same and got the parameter value sent in the Com1 and set the value in the context attribute in the Com2 which is bound to the inputfield.
    But still the value sent in Com1 is not displayed in the Com2 Inputfield.
    Any help would be highly appreciated.
    Thanks.

    >
    SAPEPDeveloper wrote:
    > Hello,
    >
    > I am trying to implement Eventing in Webdynpro ABAP using 2 components ,Com1 serving as the source component and Com2 serving as Target. In Com1 I created a Inputfield and a button ,and then tied an action to the button and called the FIRE method of the IF_WD_PORTAL_INTEGRATION and sent the value in the Inputfield as the eventing parameter.
    >
    > In Com2, i subscribed to the event in the wddoinit() method and then defined an action for the same and got the parameter value sent in the Com1 and set the value in the context attribute in the Com2 which is bound to the inputfield.
    >
    > But still the value sent in Com1 is not displayed in the Com2 Inputfield.
    >
    > Any help would be highly appreciated.
    >
    > Thanks.
    Hi I assume the following, please correct me if my understanding is not correct.
    1.First of all you try this in Portal.
    2.The moment you fire the event, the comp-2 view is active and subscribed to the portal event.
    If the above are true then tell me if the portal eventing enter into the action ?Have you checked in bebug that your action is triggerred on portal_event ?
    If portal event is action handler is called then if you have a importing parameter portal_event_parameter then your input value should be there.

  • PCUI - portal event - webDynpro Abap

    Hello,
    From standard PCUI, which used to create partner, I want to get a value partner and send it to a view that content Webdynpro Abap through portal Event.
    Is it possible? How?
    Thanks.

    Hello,
    Could you please clarify your question?
    Thanks and Regards
    Francisco

  • Portal Eventing in WebDynpro Java Pros and Cons

    Does anyone have a link to an article that discusses th epros and cons of using portal eventing between dynpro development components between iViews rather than using one larger web dynpro application.  I am clear that reuse can be an issue if you don't make each view t's own development component but I also find portal eventing to be very lacking.  What do others think about on this issue and is that an SAP recommendation?
    Shawn

    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a3c57e19-0d01-0010-ad8b-9edde6d1fae7
    Please read the restriction section.
    I will make much more sense if we need a high degree of data interchange between WDP components, to use context mapping and thus internal WDP calls rather than portal eventing.
    hth

  • Portal Eventing JSP TreeView

    I am trying to refactor a piece of code that was originally designed using HTMLB to create a tree view role menu that invokes an event in another iView.
    My question is, can portal eventing be done with traditional  JavaScript as opposed to using HTMLB? We are not using WebDynPro for this project.
    I would like to use a jsp treeview to re-engineer the existing htmlb tree structure, but wanted to get some feedback on the options...thanks

    Hi Ryan,
    > whether or not the eventing
    > has to be done on the server side
    The eventing between iViews is done by EPCF, and this is, as said, a pure JS framework. Often it might be senseful for the iView which gets "informed" by some other iView about some event with some event data, to use this data and to refresh itself. This depends on the concrete use case.
    Having this said, it is obviously totally independent if you usue EPCF from some portal HTMLB-JSP, a "pure" JSP without HTMLB or a BSP - all of these things end up in HTML with the possibility to include JS - the EPCF calls.
    See http://help.sap.com/saphelp_nw04/helpdata/en/82/04b340be3dff5fe10000000a155106/frameset.htm for further details.
    > Can all of this be done without post backs
    > to the server,
    As said before, the eventing through EPCF works on client side, but in many cases it makes sense to refresh some iView with some data sent by the event.
    Imagine a List-Details iView combination. The user has one iView with a list of products and another iView with the details of one product. By choosing one product in the list iView, this iView could raise an event, which is subscribed by the details iView, for example passing some product-ID. Now it would make sense to refresh the details iView with the ID given. The alternative would be to load all details data and only to show up the chosen details and to switch on the event. Two disadvantages: It's much harder to code and you may have a very long transmission/network time for the inital call of this iView.
    > without using htmlb using JSP not BSP
    See above, it's independent from the HTML-Layer.
    > can you store a result set in a client side object,
    > like a cookie, and if so, how?
    For sure, somehow you can (at least some representation). But here I'm unsure again, in which direction this question aims, if this is really helpful.
    Hope it helps
    Detlev

  • Problem when handling Portal events

    Hi all,
    I am trying to handle portal events between two Iviews on a same page.For this I am using all the necessary parts from coding prospectives(eg. Event fire, Subscribe event and action handler method).
    But I am not able to handle portal events.I found some properties on Iview and page level as:
    1) Web Dynpro Client on Iview level - Default auto (Some threads suggest that events only works on HTML pages).
    I change it to plain HTML, but having doubt that is this value passed to this property.
    2) ID Prefix - Default blank (I-View level)
    I assign com.sap to it and also assign application name to ID.
    Is these will affect something on Portal handling.
    I also watch some e-learning sessions, I do similer to those sessions but at my end I still facing problem.
    Please suggest what I will do more to handle Portal events.
    Thanks
    Sanket sethi

    I am using this code to  fire and catch Portal events.Please look at the code and suggest where I am lacking.
    Fire:
    data node                               type ref to if_wd_context_node.
    data portal_event_namespace  type string value 'urn:com.sap.webdynpro.testApplications.testEvent'.
    data portal_event_name          type string value 'FMP_EVENT'.
    data portal_event_parameter   type string.
      data lr_componentcontroller type ref to ig_componentcontroller .
      data l_api_componentcontroller type ref to if_wd_component.
      data lr_port_manager type ref to if_wd_portal_integration.
      lr_componentcontroller =   wd_this->get_componentcontroller_ctr( ).
      l_api_componentcontroller = lr_componentcontroller->wd_get_api( ).
      lr_port_manager = l_api_componentcontroller->get_portal_manager( ).
      lr_port_manager->fire(
        exporting
          portal_event_namespace = portal_event_namespace
          portal_event_name      = portal_event_name
          portal_event_parameter = portal_event_parameter ).
    Catch: (Register and receive parameter)
      data node                                  type ref to if_wd_context_node.
      data subscribe_hello                   type wdy_boolean.
      data  view                                  type ref to if_wd_view_controller.
      data  portal_event_namespace    type string value 'urn:com.sap.bc.webdynpro.<namerspace>.<Name>.
      data  portal_event_name             type string value 'FMPEVENT'.
    here is the name of the action where the portal event will be received!
    you have to create this action in the application!!
    data  portal_event_action_name  type string value 'RECEIVE_PORTAL_EVENT'.
      data lr_componentcontroller type ref to ig_componentcontroller .
      data l_api_componentcontroller type ref to if_wd_component.
      data lr_port_manager type ref to if_wd_portal_integration.
    DATA lo_api_component  TYPE REF TO if_wd_component.
    DATA lo_portal_manager TYPE REF TO if_wd_portal_integration.
    lo_api_component = wd_comp_controller->wd_get_api( ).
    lo_portal_manager = lo_api_component->get_portal_manager( ).
    DATA lo_api_controller  TYPE REF TO if_wd_view_controller.
    lo_api_controller ?= wd_this->wd_get_api( ).
    CALL METHOD lo_portal_manager->unsubscribe_event
      EXPORTING
        portal_event_namespace = portal_event_namespace
        portal_event_name      = portal_event_name
        view                   = lo_api_controller
      lr_componentcontroller =   wd_this->get_componentcontroller_ctr( ).
      l_api_componentcontroller = lr_componentcontroller->wd_get_api( ).
      lr_port_manager = l_api_componentcontroller->get_portal_manager( ).
      view ?= wd_this->wd_get_api( ).
       call method lr_port_manager->subscribe_event
          exporting
            portal_event_namespace = portal_event_namespace
            portal_event_name      = portal_event_name
            view                   = view
            action                 = portal_event_action_name.
      data node                              type ref to if_wd_context_node.
      data portal_event_namespace type string.
      data portal_event_name          type string.
      data portal_event_parameter   type string.
      portal_event_namespace = wdevent->get_string('PORTAL_EVENT_NAMESPACE').
      portal_event_name          = wdevent->get_string('PORTAL_EVENT_NAME').
      portal_event_parameter   = wdevent->get_string('PORTAL_EVENT_PARAMETER').
      node = wd_context->get_child_node( name = 'PORTAL_EVENT_DATA' ).
      node->set_attribute( exporting name = 'PORTAL_EVENT_NAME' value = portal_event_name ).
      node->set_attribute( exporting name = 'PORTAL_EVENT_PARAMETER' value =                         portal_event_parameter ).

Maybe you are looking for