PO Display Transaction Code from WebDynpro Aplication

      By Ashwini Shirke ,  Pune.

  1 : Open transaction SE80 and from the drop down list select WebDynpro Component.

  2 : Enter the application name (Here Zcall Transaction ).

  3 : You will get a pop up as shown above. Click YES.

FIRST-7-5-2013 9-55-49 AM.png

4 : A Web Dynpro component will then be created. A COMPONENT CONTROLLER, WINDOW and INTERFACE COMPONENTS will be created automatically.

  5 : Double click on the Component controller. You will see an empty context.

      Right click on the CONTEXT and click on create > node.

TWO-7-5-2013 10-06-50 AM.png

6 : Enter the details on the pop up as shown below. (Create NODE)

THREE-7-5-2013 10-12-31 AM.png

7 : Inside the Node , Create one Attribute by Right Clicking that Node and Select Create a Attribute.

FOUR1-7-5-2013 10-13-13 AM.png

  8 : Give the Attribute Name as EBELN, with Type EKPO-EBELN. Then Press Enter.

PACH-7-5-2013 10-37-36 AM.png

  9 : In the Layout Tab of the View, Right click the ROOTUIELEMENTCONTAINER and give Insert Element. It will open a Pop-Up for Creating an Element.

10 : Enter GROUP in the Name Field and Select GROUP in the Type Field and Press Enter.

SECOND-7-5-2013 10-00-55 AM.png

THIRD-7-5-2013 10-03-49 AM.png

11: Insert a new UI elements of type GROUP,CAPTION,RADIOBUTTONGROUPBYINDEX and Textview under ROOTUIELEMENTCONTAINER .

FOUR-7-5-2013 10-05-10 AM.png

 

12 : Create Context Binding For the RADIOBUTTON by Clicking the Button in the Right Side Of the Texts in the Properties. It will open a Popup with the Context Element . In that Select the Attribute EBELN.

AATH-7-5-2013 10-40-28 AM.png

DAHA-7-5-2013 10-41-19 AM.png

13 : Then create one Action for onSelect Event of the Dropdown by Clicking the Create Button as shown below. Then Give the Action Name as FIND_DATA and press Enter.

AKRA-7-5-2013 10-42-18 AM.png

14 : Create another Element by Right clicking the ROOTUIELEMENTCONTAINER and give Insert Element. It will open a Pop-Up for Creating an Element.

  15 : Enter ‘OPEN_PO’ in the Name Field and Select ‘Button’ from the ID for the Type Field and Press Enter.

BARA-7-5-2013 10-43-39 AM.png

16 : Create an Action In properties Events under OnSelect click on New Button and Enter name of the Action “ON_OPEN”.

TERA-7-5-2013 10-45-10 AM.png

17 : Now save everything and right click on the Component (ZCALL_TRANSACTION).

Click the link Create > Application. Enter the following details.

18 : Now this is the most important step of all. CODING J

For coding, go to the Input View and click on METHODS, which is the last tab.

  Method WDDOINIT .

  data v_element type ref to if_wd_context_element.

  data : items_node type ref to if_wd_context_node,

            v_index type i,

            v_text type string.

  data : itemlist type wd_this->elements_node.”rdgroup.

  data : w_list type wd_this->element_node.”rdgroup.

select DISTINCT ebeln from ekpo into table itemlist

   where ebeln like ‘**********’ AND bukrs = ‘***’ and meins = ‘EA’ and matkl = ‘001’ .

            items_node = wd_context->get_child_node( name = `NODE` ).

           items_node->bind_table( itemlist ).

           items_node->set_lead_selection_index( 3 ).

            v_index = items_node->get_lead_selection_index( ).

            clear w_list.

             read table itemlist into w_list index v_index.

             v_text = w_list-ebeln.

   Endmethod.

There you will find a method ONACTIONACTION_DATA already created. This is the event handler method of the action FIND.

Method ONACTIONFIND_DATA .

data : v_element type ref to if_wd_context_element,

       items_node type ref to if_wd_context_node,

        v_index type i,

        v_text type string.

data : itemlist type wd_this->elements_node.

data : w_list type wd_this->element_node.

  items_node = wd_context->get_child_node( name = `NODE` ).

items_node->get_static_attributes_table( importing table = itemlist ).

v_index = items_node->get_lead_selection_index( ).

  clear w_list.

  read table itemlist into w_list index v_index.

  v_text = w_list-ebeln.

Endmethod.

There is the event handler method of the action ONACTION_OPEN.

  Method ONACTIONON_OPEN .

  data : v_text type string, url type string,host type string ,port type string.

data lo_nd_rdgroup type ref to if_wd_context_node.

data lo_el_rdgroup type ref to if_wd_context_element.

  data ls_rdgroup type wd_this->element_node.

  data lv_ebeln type wd_this->element_node-ebeln.

  data lo_window_manager type ref to if_wd_window_manager.

  data lo_api_component type ref to if_wd_component.

data lo_window type ref to if_wd_window.

cl_http_server=>if_http_server~get_location(

         importing host = host

          port = port ).

  lo_nd_rdgroup = wd_context->get_child_node( name = wd_this->wdctx_node ).

* get element via lead selection

  lo_el_rdgroup = lo_nd_rdgroup->get_element( ).

  if lo_el_rdgroup is initial.

endif.

* get single attribute

lo_el_rdgroup->get_attribute(

   exporting

      name =  `EBELN`

   importing

    value = lv_ebeln ).

  concatenate ‘http’

‘://’ host ‘:’ port

            ‘/sap/bc/gui/sap/its/webgui?~transaction=ME23N&%20EKKO-EBELN=’ lv_ebeln

           into url.

lo_api_component = wd_comp_controller->wd_get_api( ).

lo_window_manager = lo_api_component->get_window_manager( ).

* call the url which we created above

lo_window_manager->create_external_window(

   exporting

            url = url

   receiving

           window = lo_window ).

lo_window->open( ).

Endmethod.

19 : SAVE the application and activate the Component.

20 : Now run the application. Here’s the output

vis7-5-2013 11-37-08 AM.png

ATHRA7-5-2013 11-30-59 AM.png

Regards,

Ashwini

To report this post you need to login first.

3 Comments

You must be Logged on to comment or reply to a post.

  1. Ravindra Devarapalli

    Hi,

    Thank u for sharing.

    I tried in my client , In layout i am getting error like

    The value of the properly ‘wdp_show_selector’is null or undefined not a function object.

    Can you please explain about this.

    (0) 

Leave a Reply