alv table with business graphics

Upload: goutham292

Post on 06-Apr-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/3/2019 ALV Table With Business Graphics

    1/20

    ALV Table with Business Graphics (WebDynpro for ABAP)

    By Swarna Ramya R, Wipro

    In one of my Scenarios, I have to display the Employee details in a table with the Business Graphics. TheEmployee details contain the organization unit he is working, Percentage of Assignment, start date andend date. We can achieve this using the ALV.

    Procedure:

    1. Create one Webdynpro Component with name ZWA_ALV_BUSINESS_GRAPH.

    2. Press Enter.

    3. In the Component Controller, Go to the Context Tab, Right Click the Context and Select

    Create Node.

  • 8/3/2019 ALV Table With Business Graphics

    2/20

    4. Give the Node Name as EMPLOYEE with Cardinality 0..n and Press Enter.

    5. Create four Attributes inside that Node by Right Clicking the Employee and Select Create Attribute.

    6. The Attributes are of the Following Type.

    ZZORGEH - ORGEH

    ZZ_PER_ASSG - ZZASSG

  • 8/3/2019 ALV Table With Business Graphics

    3/20

    BEGDA - SYDATUM

    ENDDA - SYDATUM

    7. Go to the View Context , Drag and Drop the Node EMPLOYEE to the View Context.

    8. Then Right Click the Context and Select Create Attribute.

  • 8/3/2019 ALV Table With Business Graphics

    4/20

    9. Give Attribute Name as EMP_NO with Type CHAR8 and Press Enter.

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

    11. Enter Label in the Name Field and Select Label in the Type Field and Press Enter.

    12. Create another UI Element with INPUT in the Name Field and Select InputField in the Type Field andPress Enter.

  • 8/3/2019 ALV Table With Business Graphics

    5/20

    13. In the Label Properties, Select INPUT from the Dropdown for the labelfor Field and Enter Enter TheEmployee Number in the Text Field.

    14. Create Context Binding For the INPUT by Clicking the Button in the Right Side of the value in theProperties. It will open a Popup with the Context Element. In that Select the Attribute EMP_NO ANDPress Enter.

  • 8/3/2019 ALV Table With Business Graphics

    6/20

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

    16. Enter BUTTON in the Name Field and Select Button in the Type Field and Press Enter.

    17. Then create one Action for onAction Event of the BUTTON by Clicking the Create Action Button. ThenGive the Action Name as GET_EMPLOYEE_DETAILS and press Enter.

  • 8/3/2019 ALV Table With Business Graphics

    7/20

    18. Create another UI Element with Name VIEW and Select ViewContainerUIElement from the Dropdownin the Type Field.

    19. Go to the Outbound Plugs Tab in the View, and Enter TO_ALV_TABLE in the Plug Name.

  • 8/3/2019 ALV Table With Business Graphics

    8/20

    20. Go to the Component ZWA_ALV_BUSINESS_GRAPH and Double Click it. In the Used ComponentTab, declare the ALV Component as shown below and Press Enter.

    21. Now go to the View, in the Properties Tab click the Create Controller Usage Button as shown below.

    22. It will open a screen with Component Use Entries. There select the Component Use ALV withInterface Controller as shown below. Press Enter.

  • 8/3/2019 ALV Table With Business Graphics

    9/20

    23. It will display as follows in the View Properties.

  • 8/3/2019 ALV Table With Business Graphics

    10/20

    24. Then go to the Window ZWA_ALV_BUSINESS_GRA. Then Right Click the VIEW and Select EmbedView.

    25. It will open a Pop-up for Embed View.

    26. Click F4 by placing the Cursor in the View to Be Embedded Field.

  • 8/3/2019 ALV Table With Business Graphics

    11/20

    27. It will open a Screen for Selecting a View. Select EMPTYVIEW and Press Enter.

    28. The Values will be placed in the Embed a View. Then Press Enter.

  • 8/3/2019 ALV Table With Business Graphics

    12/20

    29. Again Right Click the VIEW and Select Embed View.

    30. It will open a Pop-up for Embed View.

    31. Click F4 by placing the Cursor in the View to Be Embedded Field.

    32. Select Component Use ALV with View/Interface View TABLE and Press Enter.

  • 8/3/2019 ALV Table With Business Graphics

    13/20

    33. The Values will be placed in the Embed a View. Then Press Enter. (Note: The Empty View is placedbefore inside the View is to Hide the ALV Table at the Beginning).

    34. Right Click the Outbound Plug TO_ALV_TABLE and Select Create Navigation Link.

  • 8/3/2019 ALV Table With Business Graphics

    14/20

    35. It will open a Pop-up For Choosing Destination for Navigation. Click F4 in the Dest.View Field.

    36. It will show the Destination Views. There select the Table in the View Column and Press Enter.

  • 8/3/2019 ALV Table With Business Graphics

    15/20

    37. It will display the Entries as shown below. Then Press Enter.

  • 8/3/2019 ALV Table With Business Graphics

    16/20

    38. Now go to Component usages in the left side tree and expand ALV and double click on theINTERFACECONTROLLER_USAGE. Then Click the Controller Usage Button in the Right Side Window.

    39. It will open a Screen for Selecting Component Use. There, select the COMPONENTCONTROLLER inthe View/Controller. Then Press Enter.

  • 8/3/2019 ALV Table With Business Graphics

    17/20

    40. Then Drag and Drop the Node EMPLOYEE to the Node DATA in the ContextINTERFACECONTROLLER.

    41. Go to the View and Click the Tab Methods.

  • 8/3/2019 ALV Table With Business Graphics

    18/20

    42. In the ONACTIONGET_EMPLOYEE_DETAILS Method, Write the Following Coding.ONACTIONGET_EMPLOYEE_DETAILS:method ONACTIONGET_EMPLOYEE_DETAILS .wd_this->fire_to_alv_table_plg( ).DATA lo_nd_employee TYPE REF TO if_wd_context_node.DATA lo_el_employee TYPE REF TO if_wd_context_element.DATA lt_employee TYPE wd_this->elements_employee.DATA ls_employee TYPE wd_this->element_employee.

    * navigate from to via lead selectionlo_nd_employee = wd_context->get_child_node( name = wd_this->wdctx_employee

    ).DATA lo_el_context TYPE REF TO if_wd_context_element.DATA ls_context TYPE wd_this->element_context.

    DATA lv_emp_no LIKE ls_context-emp_no.DATA lv_num TYPE I.

    * get element via lead selectionlo_el_context = wd_context->get_element( ).

    * get single attributelo_el_context->get_attribute(EXPORTINGname = `EMP_NO`

    IMPORTINGvalue = lv_emp_no ).

    SELECT ZZORGEH ZZ_PER_ASSG BEGDA ENDDA INTO CORRESPONDING FIELDS OF TABLElt_employee FROM PA9027 WHERE PERNR EQ lv_emp_no AND ENDDA EQ

    '99991231'.

    DESCRIBE TABLE lt_employee LINES lv_num.lo_nd_employee->BIND_TABLE( lt_employee ).data lo_cmp_usage type ref to if_wd_component_usage.lo_cmp_usage = wd_this->wd_cpuse_alv( ).

    if lo_cmp_usage->has_active_component( ) is initial.lo_cmp_usage->create_component( ).

    endif.DATA lo_INTERFACECONTROLLER TYPE REF TO IWCI_SALV_WD_TABLE .

  • 8/3/2019 ALV Table With Business Graphics

    19/20

    lo_INTERFACECONTROLLER = wd_this->wd_cpifc_alv( ).DATA lo_value TYPE ref to cl_salv_wd_config_table.lo_value = lo_interfacecontroller->get_model( ).

    * Set Visible Row Count as 5lo_value->if_salv_wd_table_settings~set_visible_row_count( lv_num ).

    * The Config Table Setting to Display Table & Business GraphicsDATA: l_ref_config_table TYPE REF TO if_salv_wd_table_settings,

    l_display_as TYPE salv_wd_constant VALUE '02'.l_ref_config_table ?= lo_value.l_ref_config_table->set_display_as( value = l_display_as ).

    endmethod.

    43. Save the Application and Activate the Component.

    44. Create Webdynpro Application, save it and Test the Application.

    Output:

    1. Enter the Employee Number in the Input Field and Click the Button Get Details.

    2. The Output will Display as shown below.

  • 8/3/2019 ALV Table With Business Graphics

    20/20