cancel
Showing results for 
Search instead for 
Did you mean: 

Calling a Web Dynpro Application from POWL feeder class

edemey
Explorer
0 Kudos

Hi,

I know this question is asked before but never answered, but I try again......

I have a own POWL feeder class where I defined a button in method IF_POWL_FEEDER~GET_ACTIONS.

I know that this action can be handled in method IF_POWL_FEEDER~HANDLE_ACTION.

When pressing the button I want do call another web dynpro application.

How can I do this? -> Any Example Coding?

Thank you and best regards, Edgar

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

http://wiki.sdn.sap.com/wiki/display/WDABAP/DocumentationInformationabout+POWL

this will give you option of obn.

Best regards,

Rohit

edemey
Explorer
0 Kudos

Hi Rohit,

i know this document, but this document often mentions the SAP portal in the obn chapter. I have no knowledege regarding the SAP portal.

My web dynpro application is not linked to a portal.

It is only the "stand alone" web dynpro component, where I embedded the POWL component with my own feeder class.

Any further ideas?

Thanks and best regards, Edgar

thomas_jung
Developer Advocate
Developer Advocate
0 Kudos

>It is only the "stand alone" web dynpro component, where I embedded the POWL component with my own feeder class.

Any further ideas?

You might have a problem then. The POWL framework requires the use of the Portal or the NetWeaver Business Client becuase of the usage of Portal APIs such as OBN - Object Based Navigation.

vineetrrakesh
Explorer
0 Kudos

Hi,

May be this helps:

You are using WD comp > My Comp, Now Mycomp uses> "POWL_UI_COMP".

Now from POWL Feeder method IF_POWL_FEEDER~HANDLE_ACTION you can trigger POWL_FOLLOW_UP event on click of the button on your POWL UI.

This even is available in your WD component Mycomp as it is exposed from powl as an interface event, Now handle this even in your View or component Controller and then you can trigger another WD application or Pop-up.

Please let me know in case if you face any issue.

Vineet Rakesh

edemey
Explorer
0 Kudos

Hi Vineet,

sounds good.....

I created the event handler method for POWL_FOLLOW_UP in My Comp.

Could you tell me how to raise the event POWL_FOLLOW_UP in the feeder method IF_POWL_FEEDER~HANDLE_ACTION.

Thank you and best regards, Edgar

edemey
Explorer
0 Kudos

Hi Vineet,

it works, thanks a lot!!!! Best Regards, Eddy

P.S.: Here is the coding for triggering the event and passing parameters for the selected POWL table line:


METHOD if_powl_feeder~handle_action.
  DATA: ls_parameter TYPE powl_namevalue_sty.
  DATA: lt_flights TYPE ty_flights.
  DATA: ls_flight TYPE sflight.
  DATA: ls_selected TYPE rstabix.
  FIELD-SYMBOLS: <lt_fligts> TYPE STANDARD TABLE.
  IF i_actionid = 'EDIT'.
*   Important: this triggers the event
    e_portal_actions-fire_wdevent = abap_true.
*   Pass parameters to event
    ASSIGN c_result_tab TO <lt_fligts>.
    lt_flights = <lt_fligts>.
*   Determine the first selected row
    READ TABLE c_selected INTO ls_selected INDEX 1.
*   Read selected POWL data
    READ TABLE lt_flights INDEX ls_selected-TABIX INTO ls_flight.
    CHECK sy-subrc = 0.
*   Pass parameters
    ls_parameter-key = 'ACTIONID'.
    ls_parameter-value = 'I_ACTIONID'.
    APPEND ls_parameter TO e_portal_actions-parameters.
    ls_parameter-key = 'CARRID'.
    ls_parameter-value = ls_flight-carrid.
    APPEND ls_parameter TO e_portal_actions-parameters.
    ls_parameter-key = 'CONNID'.
    ls_parameter-value = ls_flight-connid.
    APPEND ls_parameter TO e_portal_actions-parameters.
    ls_parameter-key = 'FLDATE'.
    ls_parameter-value = ls_flight-fldate.
    APPEND ls_parameter TO e_portal_actions-parameters.
  ENDIF.
ENDMETHOD.
 

Answers (0)