GET_ATTRIBUTE method of interface IF_WD_CONTEXT_NODE to retrieve value of context element

The GET_ATTRIBUTE method retrieves the value of an individual field/attribute of of context element.


Single context attribute not within a node
This is the simplest form of attribute to set as you can reference it directly using the WD_CONTEXT attribute.

  wd_Context->get_attribute(
     EXPORTING
        name  = 'MY_ATTRIBUTE'
     IMPORTING
        value =  ld_attvalue "Attribute Val
             ).



Single line structure context node
The abap code below retrieves a value from the CARRID attribute which is within the context node CARRIERS.

*Declare variables used to reference context node and attributes
Data: it_scarr type standard table of if_MAIN=>element_CARRIERS, "MAIN(view), CARRIERS(context)
      wa_scarr like line of it_scarr,
      context_node type ref to if_wd_context_node,
      lr_element TYPE REF TO if_wd_context_element.
* bind this data to the context of the flat structure
  context_node = wd_context->get_child_node( name = 'CARRIERS').
*                   CARRIERS' is the name of the context node
* Once you have a link to the context node/structure you can then reference the individual attributes
  lr_element = context_node->get_element( ).
  lr_element->get_attribute(
        EXPORTING
          name  = 'CARRID'   " Web Dynpro: Name of Context Element
        IMPORTING
          value =  ld_attvalue "Attribute Value
             ).

Table context node (multiple lines)
The abap code below retrieves the CARRID field value from within context node/table CARRIERS. Whether a context node acts like a structure or a table can be assigned using the Cardinality setting. The code below simply copys all row into an internal table.

* Set single value within context structure
Data: it_scarr type standard table of if_MAIN=>element_CARRIERS, "view name = MAIN, context = CARRIERS
      wa_scarr like line of it_scarr,
      context_node type ref to if_wd_context_node,
      lr_element TYPE REF TO if_wd_context_element.
  context_node = wd_context->get_child_node( name = 'CARRIERS').
*                   CARRIERS' is the name of the context node
* bind this data to the context of the table
  context_node->bind_table( it_scarr ).
  if sy-subrc eq 0.
    loop at it_scarr into wa_scarr.
      free lr_element.
      free context_node.
      context_node = wd_context->get_child_node( name = 'CARRIERS').
      lr_element = context_node->get_element( sy-tabix ). "sy-tabix represents table row to reference
      lr_element->get_attribute(
        EXPORTING
          name  = 'CARRID'
        IMPORTING
          value =  ld_attvalue  "Attribute Value
             ).
    endloop.
  endif.
***IN reality you would just use the following code to capture all rows of the table
***into an itab and then loop around the internal table(it_scarr)
  context_node->get_static_attributes_table(
    importing
      table = it_scarr ).

Also see here for how to use set_attribute to set individual value of a context attribute.

See all Methods of IF_WD_CONTEXT_NODE interface


Related Articles

Add programmed/OVS search help to FPM ESS/MSS application via enhancement to CL_HRESS_PER_DETAIL
BIND_STRUCTURE method of interface IF_WD_CONTEXT_NODE to assign structure to context
BIND_TABLE method of interface IF_WD_CONTEXT_NODE
Get the name of the button the user has clicked on within the SAP web dynpro action ABAP code
Create field Refering to datatype of webDynpro context element
WebDynpro context for creation of screen field including standard search help
Disable SAP User Personalisation in Web Dynpro app using WDDISABLEUSERPERSONALIZATION and WDENABLEUIELEMENTSHIDE
GET_SELECTED_ELEMENTS to get selected row of ABAP web dynpro table when not using lead selection
GET_STATIC_ATTRIBUTE_TABLE method to return all rows of a context table node
IF_WD_CONTEXT_NODE interface methods withn ABAP Web Dynpro to enable users to view and change data
ABAP code to manually trigger ABAP web dynpro plug
Popuate SAP WebDynpro field
Freely Programmed search help for your web dynpro application (custom value help/OVS)
Change the stylesheet theme used by your web dynpro and portal apps (i.e. SAP_TRADESHOW, SAP_CORBU)
Change the stylesheet theme used by your web dynpro and portal apps (i.e. SAP_TRADESHOW, SAP_CORBU)
SET_ATTRIBUTE method of interface IF_WD_CONTEXT_NODE to assign value to individuale context attribute
Clear context attribute using SET_ATTRIBUTE_NULL method of interface IF_WD_CONTEXT_NODE
Add Dropdown by index UI Element to table field within abap web dynpro
Add freely Programmed search help to a web dynpro application field
Retrieve SAP webDynpro field value entered by user
ABAP Web dynpro ALV report table
Hide fields of a web dynpro ALV table
Display web dynpro ALV report select options to resict output results
Assign value to ABAP web dynpro context via table, structure or individual attribute
Get selected ABAP Web dynpro dropdown byindex value (dropdownbyindex UI element)
ABAP web dynpro Dropdown by index UI Element allows a field to display a drop down list of values
ABAP web dynpro Dropdown default value, allow you to set current value of dropdown UI element
Change SAP web dynpro logon screen
Read ABAP Web dynpro table context on action / button click
ABAP Web Dynpro tables to allow users to view and change data
Get selected row of ABAP web dynpro table
Get all selected rows of table within your web dynpro for ABAP applications using GET_SELECTED_ELEMENTS
Get selected row of ABAP web dynpro table
ABAP Web Dynpro tree structure, display HR org structure as example
SAP ABAP Web Dynpro UI elements
View Container UI Element to display a web dynpro view within a wdp view
ALV ABAP Web Dynpro application
ABAP Web dynpro button click / Action
Call URL from SAP Webdynpro for ABAP ACTION
Call URL from SAP Webdynpro for ABAP ACTION
Display popup screen within ABAP Web dynpro
ABAP Web dynpro populate table on action / button click
ABAP code to Print abap web dynpro table
Adding URL parameters to you ABAP webdynpro to change thinks like the CSS