<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>Question Re: cl_wd_table - table with dynamic fields in Technology Q&amp;A</title>
    <link>https://community.sap.com/t5/technology-q-a/cl-wd-table-table-with-dynamic-fields/qaa-p/7312788#M2631844</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;&lt;CODE&gt;*get node info

 lr_node_info type ref to if_wd_context_node_info.
lr_new_node_info  type ref to if_wd_context_node_info
 lr_node_info  = wd_context-&amp;gt;get_node_info( ).

*create node
 lr_node type ref to if_wd_context_node.

 CALL METHOD lr_node_info-&amp;gt;add_new_child_node
  EXPORTING
*    supply_method                =
*    supply_object                =
*    dispose_method               =
*    dispose_object               =
*    static_element_type          =
    name                         = 'node_name'
*    is_mandatory                 = ABAP_FALSE
*    is_mandatory_selection       = ABAP_FALSE
*    is_multiple                  = ABAP_TRUE
*    is_multiple_selection        = ABAP_TRUE
*    is_singleton                 = ABAP_FALSE
*    is_initialize_lead_selection = ABAP_TRUE
*    static_element_rtti          =
*    is_static                    = ABAP_TRUE
*    attributes                   =
  receiving
    child_node_info              = lr_new_node_info    .

*now add all the attributes to the nodes which you have created as columns in the table
 lr_new_node_info-&amp;gt;add_attribute...........

*set the newly created node as data source to ur dynamic table
table-&amp;gt;set_data_source( new_node ).

Now you can bind the data to the node...&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 07 Sep 2010 08:45:47 GMT</pubDate>
    <dc:creator>Madhu2004</dc:creator>
    <dc:date>2010-09-07T08:45:47Z</dc:date>
    <item>
      <title>cl_wd_table - table with dynamic fields</title>
      <link>https://community.sap.com/t5/technology-q-a/cl-wd-table-table-with-dynamic-fields/qaq-p/7312785</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have generated a dynamic table with dynamic fields.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How can I fill the fields?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;METHOD wddomodifyview .&lt;/P&gt;&lt;P&gt;  DATA lr_container TYPE REF TO cl_wd_uielement_container.&lt;/P&gt;&lt;P&gt;  DATA lr_input TYPE REF TO cl_wd_input_field.&lt;/P&gt;&lt;P&gt;  DATA lr_table TYPE REF TO cl_wd_table.&lt;/P&gt;&lt;P&gt;  DATA lr_caption TYPE REF TO cl_wd_caption.&lt;/P&gt;&lt;P&gt;  DATA lr_table_column TYPE REF TO cl_wd_table_column.&lt;/P&gt;&lt;P&gt;  DATA lr_table_standard_cell TYPE REF TO cl_wd_table_standard_cell.&lt;/P&gt;&lt;P&gt;  DATA lr_column_group TYPE REF TO cl_wd_table_column_group.&lt;/P&gt;&lt;P&gt;  DATA lr_column_group2 TYPE REF TO cl_wd_table_column_group.&lt;/P&gt;&lt;P&gt;  DATA lr_column_group3 TYPE REF TO cl_wd_table_column_group.&lt;/P&gt;&lt;P&gt;  DATA lr_column_group4 TYPE REF TO cl_wd_table_column_group.&lt;/P&gt;&lt;P&gt;  DATA lr_column_group5 TYPE REF TO cl_wd_table_column_group.&lt;/P&gt;&lt;P&gt;  DATA: lines TYPE i.&lt;/P&gt;&lt;P&gt;  DATA: id TYPE string.&lt;/P&gt;&lt;P&gt;  DATA: counter TYPE string.&lt;/P&gt;&lt;P&gt;  DATA: binding TYPE string.&lt;/P&gt;&lt;P&gt;  DATA: c_count TYPE string.&lt;/P&gt;&lt;P&gt;  DATA: text TYPE string.&lt;/P&gt;&lt;P&gt;  DATA: it_comp_header TYPE TABLE OF zst_comp_header.&lt;/P&gt;&lt;P&gt;  DATA: wa_comp_header LIKE LINE OF it_comp_header.&lt;/P&gt;&lt;P&gt;  DATA: it_bin_comp TYPE TABLE OF zst_bin_comp.&lt;/P&gt;&lt;P&gt;  DATA: wa_bin_comp LIKE LINE OF it_bin_comp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT * FROM zst_bin_comp&lt;/P&gt;&lt;P&gt;  INTO TABLE it_bin_comp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT * FROM zst_comp_header&lt;/P&gt;&lt;P&gt;    INTO TABLE it_comp_header.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF first_time = abap_true.&lt;/P&gt;&lt;P&gt;    lr_container  ?= view-&amp;gt;get_element( 'ROOTUIELEMENTCONTAINER' ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    cl_wd_table=&amp;gt;new_table(&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        bind_data_source              = 'IT_BIN_COMP'&lt;/P&gt;&lt;P&gt;        id                            = 'DYNTABLE'&lt;/P&gt;&lt;P&gt;      RECEIVING&lt;/P&gt;&lt;P&gt;         control                       = lr_table ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DESCRIBE TABLE it_comp_header LINES lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT it_comp_header INTO wa_comp_header.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Minimum&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      counter = counter + 1.&lt;/P&gt;&lt;P&gt;      CONDENSE counter.&lt;/P&gt;&lt;P&gt;      CONCATENATE 'INPUT_' counter INTO id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     c_count = sy-index.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      c_count = counter.&lt;/P&gt;&lt;P&gt;      CONDENSE c_count.&lt;/P&gt;&lt;P&gt;      CONCATENATE 'IT_BIN_COMP.MIN' c_count INTO binding.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      cl_wd_input_field=&amp;gt;new_input_field(&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;           bind_value             = binding&lt;/P&gt;&lt;P&gt;           id                     = id&lt;/P&gt;&lt;P&gt;        RECEIVING&lt;/P&gt;&lt;P&gt;          control                = lr_input ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      lr_column_group = cl_wd_table_column_group=&amp;gt;new_table_column_group( ).&lt;/P&gt;&lt;P&gt;      lr_table_column = cl_wd_table_column=&amp;gt;new_table_column( ).&lt;/P&gt;&lt;P&gt;      lr_table_column-&amp;gt;set_table_cell_editor( lr_input ).&lt;/P&gt;&lt;P&gt;      lr_caption = cl_wd_caption=&amp;gt;new_caption( ).&lt;/P&gt;&lt;P&gt;      lr_caption-&amp;gt;set_text( 'Min' ).&lt;/P&gt;&lt;P&gt;      lr_table_column-&amp;gt;set_header( lr_caption ).&lt;/P&gt;&lt;P&gt;      lr_column_group-&amp;gt;set_fixed_position( 1 ).&lt;/P&gt;&lt;P&gt;      lr_column_group-&amp;gt;add_column( lr_table_column ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MAX&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CONDENSE counter.&lt;/P&gt;&lt;P&gt;      CONCATENATE 'INPUT2_' counter INTO id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      c_count = counter.&lt;/P&gt;&lt;P&gt;      CONDENSE c_count.&lt;/P&gt;&lt;P&gt;      CONCATENATE 'IT_BIN_COMP.MAX' c_count INTO binding.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      cl_wd_input_field=&amp;gt;new_input_field(&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;           bind_value             = binding&lt;/P&gt;&lt;P&gt;           id                     = id&lt;/P&gt;&lt;P&gt;        RECEIVING&lt;/P&gt;&lt;P&gt;          control                = lr_input ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      lr_table_column = cl_wd_table_column=&amp;gt;new_table_column( ).&lt;/P&gt;&lt;P&gt;      lr_table_column-&amp;gt;set_table_cell_editor( lr_input ).&lt;/P&gt;&lt;P&gt;      lr_caption = cl_wd_caption=&amp;gt;new_caption( ).&lt;/P&gt;&lt;P&gt;      lr_caption-&amp;gt;set_text( 'Max' ).&lt;/P&gt;&lt;P&gt;      lr_table_column-&amp;gt;set_header( lr_caption ).&lt;/P&gt;&lt;P&gt;      lr_column_group-&amp;gt;set_fixed_position( 2 ).&lt;/P&gt;&lt;P&gt;      lr_column_group-&amp;gt;add_column( lr_table_column ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BIN&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CONDENSE counter.&lt;/P&gt;&lt;P&gt;      CONCATENATE 'INPUT3_' counter INTO id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      c_count = counter.&lt;/P&gt;&lt;P&gt;      CONDENSE c_count.&lt;/P&gt;&lt;P&gt;      CONCATENATE 'IT_BIN_COMP.BIN' c_count INTO binding.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      cl_wd_input_field=&amp;gt;new_input_field(&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;           bind_value             = binding&lt;/P&gt;&lt;P&gt;           id                     = id&lt;/P&gt;&lt;P&gt;        RECEIVING&lt;/P&gt;&lt;P&gt;          control                = lr_input ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      lr_table_column = cl_wd_table_column=&amp;gt;new_table_column( ).&lt;/P&gt;&lt;P&gt;      lr_table_column-&amp;gt;set_table_cell_editor( lr_input ).&lt;/P&gt;&lt;P&gt;      lr_caption = cl_wd_caption=&amp;gt;new_caption( ).&lt;/P&gt;&lt;P&gt;      lr_caption-&amp;gt;set_text( 'Sorting Bin' ).&lt;/P&gt;&lt;P&gt;      lr_table_column-&amp;gt;set_header( lr_caption ).&lt;/P&gt;&lt;P&gt;      lr_column_group-&amp;gt;add_column( lr_table_column ).&lt;/P&gt;&lt;P&gt;      lr_caption = cl_wd_caption=&amp;gt;new_caption( ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Column group headline&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      text = wa_comp_header-chip.&lt;/P&gt;&lt;P&gt;      lr_caption-&amp;gt;set_text( text ).&lt;/P&gt;&lt;P&gt;      lr_column_group-&amp;gt;set_header( lr_caption ).&lt;/P&gt;&lt;P&gt;      lr_table-&amp;gt;add_grouped_column( lr_column_group ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Subproduct&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    cl_wd_input_field=&amp;gt;new_input_field(&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;         bind_value             = 'IT_BIN_COMP.SUBPROD'&lt;/P&gt;&lt;P&gt;         id                     = 'SUBPROD'&lt;/P&gt;&lt;P&gt;      RECEIVING&lt;/P&gt;&lt;P&gt;        control                = lr_input ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    lr_column_group = cl_wd_table_column_group=&amp;gt;new_table_column_group( ).&lt;/P&gt;&lt;P&gt;    lr_table_column = cl_wd_table_column=&amp;gt;new_table_column( ).&lt;/P&gt;&lt;P&gt;    lr_table_column-&amp;gt;set_table_cell_editor( lr_input ).&lt;/P&gt;&lt;P&gt;    lr_caption = cl_wd_caption=&amp;gt;new_caption( ).&lt;/P&gt;&lt;P&gt;    lr_caption-&amp;gt;set_text( 'Sub Product' ).&lt;/P&gt;&lt;P&gt;    lr_table_column-&amp;gt;set_header( lr_caption ).&lt;/P&gt;&lt;P&gt;    lr_column_group-&amp;gt;add_column( lr_table_column ).&lt;/P&gt;&lt;P&gt;    lr_table-&amp;gt;add_grouped_column( lr_column_group ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Remarks&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    cl_wd_input_field=&amp;gt;new_input_field(&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;         bind_value             = 'IT_BIN_COMP.REMARKS'&lt;/P&gt;&lt;P&gt;         id                     = 'REMARKS'&lt;/P&gt;&lt;P&gt;      RECEIVING&lt;/P&gt;&lt;P&gt;        control                = lr_input ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    lr_input-&amp;gt;set_read_only( value = abap_false ).&lt;/P&gt;&lt;P&gt;    lr_column_group = cl_wd_table_column_group=&amp;gt;new_table_column_group( ).&lt;/P&gt;&lt;P&gt;    lr_table_column = cl_wd_table_column=&amp;gt;new_table_column( ).&lt;/P&gt;&lt;P&gt;    lr_table_column-&amp;gt;set_table_cell_editor( lr_input ).&lt;/P&gt;&lt;P&gt;    lr_caption = cl_wd_caption=&amp;gt;new_caption( ).&lt;/P&gt;&lt;P&gt;    lr_caption-&amp;gt;set_text( 'Remarks' ).&lt;/P&gt;&lt;P&gt;    lr_table_column-&amp;gt;set_header( lr_caption ).&lt;/P&gt;&lt;P&gt;    lr_column_group-&amp;gt;add_column( lr_table_column ).&lt;/P&gt;&lt;P&gt;    lr_table-&amp;gt;add_grouped_column( lr_column_group ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    lr_input-&amp;gt;set_value( 'tets' ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   wd_context-&amp;gt;set_attribute( name = 'IT_BIN_COMP.REMARKS' value = 'test' ).&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Yield loss&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    cl_wd_input_field=&amp;gt;new_input_field(&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;         bind_value             = 'IT_BIN_COMP.YIELD'&lt;/P&gt;&lt;P&gt;         id                     = 'YIELD'&lt;/P&gt;&lt;P&gt;      RECEIVING&lt;/P&gt;&lt;P&gt;        control                = lr_input ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    lr_column_group = cl_wd_table_column_group=&amp;gt;new_table_column_group( ).&lt;/P&gt;&lt;P&gt;    lr_table_column = cl_wd_table_column=&amp;gt;new_table_column( ).&lt;/P&gt;&lt;P&gt;    lr_table_column-&amp;gt;set_table_cell_editor( lr_input ).&lt;/P&gt;&lt;P&gt;    lr_caption = cl_wd_caption=&amp;gt;new_caption( ).&lt;/P&gt;&lt;P&gt;    lr_caption-&amp;gt;set_text( 'Yield loss' ).&lt;/P&gt;&lt;P&gt;    lr_table_column-&amp;gt;set_header( lr_caption ).&lt;/P&gt;&lt;P&gt;    lr_column_group-&amp;gt;add_column( lr_table_column ).&lt;/P&gt;&lt;P&gt;    lr_table-&amp;gt;add_grouped_column( lr_column_group ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;    create the layout data of the text view&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;    DATA lr_grid_data TYPE REF TO cl_wd_grid_data.&lt;/P&gt;&lt;P&gt;    lr_grid_data = cl_wd_grid_data=&amp;gt;new_grid_data( lr_table ).&lt;/P&gt;&lt;P&gt;    lr_table-&amp;gt;set_layout_data( lr_grid_data ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Characteristics&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: it_2_char_2_col1 TYPE TABLE OF zst_2_char_2_col.&lt;/P&gt;&lt;P&gt;    DATA: wa_2_char_2_col1 LIKE LINE OF it_2_char_2_col1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: it_2_char_2_col2 TYPE TABLE OF zst_2_char_2_col.&lt;/P&gt;&lt;P&gt;    DATA: wa_2_char_2_col2 LIKE LINE OF it_2_char_2_col2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: it_2_char_2_col3 TYPE TABLE OF zst_2_char_2_col.&lt;/P&gt;&lt;P&gt;    DATA: wa_2_char_2_col3 LIKE LINE OF it_2_char_2_col3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    TYPES: BEGIN OF char,&lt;/P&gt;&lt;P&gt;            column TYPE i,&lt;/P&gt;&lt;P&gt;            char1 TYPE string,&lt;/P&gt;&lt;P&gt;            min1 TYPE i,&lt;/P&gt;&lt;P&gt;            max1 TYPE i,&lt;/P&gt;&lt;P&gt;            char2 TYPE string,&lt;/P&gt;&lt;P&gt;            min2 TYPE i,&lt;/P&gt;&lt;P&gt;            max2 TYPE i,&lt;/P&gt;&lt;P&gt;            char3 TYPE string,&lt;/P&gt;&lt;P&gt;            min3 TYPE i,&lt;/P&gt;&lt;P&gt;            max3 TYPE i,&lt;/P&gt;&lt;P&gt;    END OF char.&lt;/P&gt;&lt;P&gt;    DATA: min1 TYPE string.&lt;/P&gt;&lt;P&gt;    DATA: min2 TYPE string.&lt;/P&gt;&lt;P&gt;    DATA: min3 TYPE string.&lt;/P&gt;&lt;P&gt;    DATA: max1 TYPE string.&lt;/P&gt;&lt;P&gt;    DATA: max2 TYPE string.&lt;/P&gt;&lt;P&gt;    DATA: max3 TYPE string.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: it_char TYPE TABLE OF char.&lt;/P&gt;&lt;P&gt;    DATA: wa_char LIKE LINE OF it_char.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT * FROM zst_2_char_2_col&lt;/P&gt;&lt;P&gt;      INTO TABLE it_2_char_2_col1&lt;/P&gt;&lt;P&gt;      WHERE st_2_char_id = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT * FROM zst_2_char_2_col&lt;/P&gt;&lt;P&gt;    INTO TABLE it_2_char_2_col2&lt;/P&gt;&lt;P&gt;    WHERE st_2_char_id = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT * FROM zst_2_char_2_col&lt;/P&gt;&lt;P&gt;    INTO TABLE it_2_char_2_col3&lt;/P&gt;&lt;P&gt;    WHERE st_2_char_id = 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    LOOP AT it_2_char_2_col1 INTO wa_2_char_2_col1.&lt;/P&gt;&lt;P&gt;      LOOP AT it_2_char_2_col2  INTO wa_2_char_2_col2.&lt;/P&gt;&lt;P&gt;        LOOP AT it_2_char_2_col3  INTO wa_2_char_2_col3.&lt;/P&gt;&lt;P&gt;          wa_char-column = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          SELECT SINGLE bin_descr zmin zmax&lt;/P&gt;&lt;P&gt;            FROM zst_bin_char&lt;/P&gt;&lt;P&gt;            INTO (wa_char-char1, wa_char-min1, wa_char-max1)&lt;/P&gt;&lt;P&gt;            WHERE st_2_ch_2_col_id = wa_2_char_2_col1-id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          SELECT SINGLE bin_descr zmin zmax&lt;/P&gt;&lt;P&gt;            FROM zst_bin_char&lt;/P&gt;&lt;P&gt;            INTO (wa_char-char2, wa_char-min2, wa_char-max2)&lt;/P&gt;&lt;P&gt;            WHERE st_2_ch_2_col_id = wa_2_char_2_col2-id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          SELECT SINGLE bin_descr zmin zmax&lt;/P&gt;&lt;P&gt;          FROM zst_bin_char&lt;/P&gt;&lt;P&gt;          INTO (wa_char-char3, wa_char-min3, wa_char-max3)&lt;/P&gt;&lt;P&gt;          WHERE st_2_ch_2_col_id = wa_2_char_2_col3-id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;          APPEND wa_char TO it_char.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        ENDLOOP.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DATA: spalte TYPE string.&lt;/P&gt;&lt;P&gt;    counter = 0.&lt;/P&gt;&lt;P&gt;    LOOP AT it_char INTO wa_char.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      counter = counter + 1.&lt;/P&gt;&lt;P&gt;      CONDENSE counter.&lt;/P&gt;&lt;P&gt;      CONCATENATE 'IT_BIN_COMP.SPALTE' counter INTO binding.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CONCATENATE 'CHAR_' counter INTO id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      cl_wd_input_field=&amp;gt;new_input_field(&lt;/P&gt;&lt;P&gt;           EXPORTING&lt;/P&gt;&lt;P&gt;              bind_value             = binding&lt;/P&gt;&lt;P&gt;              id                     = id&lt;/P&gt;&lt;P&gt;           RECEIVING&lt;/P&gt;&lt;P&gt;             control                = lr_input ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      min1 = wa_char-min1.&lt;/P&gt;&lt;P&gt;      min2 = wa_char-min2.&lt;/P&gt;&lt;P&gt;      min3 = wa_char-min3.&lt;/P&gt;&lt;P&gt;      max1 = wa_char-max1.&lt;/P&gt;&lt;P&gt;      max2 = wa_char-max2.&lt;/P&gt;&lt;P&gt;      max3 = wa_char-max3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Zeile 6&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CONCATENATE min3 '-' max3 INTO spalte.&lt;/P&gt;&lt;P&gt;      lr_table_column = cl_wd_table_column=&amp;gt;new_table_column( ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      lr_input-&amp;gt;set_read_only( value = abap_false   ).&lt;/P&gt;&lt;P&gt;      lr_table_column-&amp;gt;set_table_cell_editor( lr_input ).&lt;/P&gt;&lt;P&gt;      lr_caption = cl_wd_caption=&amp;gt;new_caption( ).&lt;/P&gt;&lt;P&gt;      lr_caption-&amp;gt;set_text( spalte ).&lt;/P&gt;&lt;P&gt;      lr_table_column-&amp;gt;set_header( lr_caption ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Zeile 5&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      lr_column_group5 = cl_wd_table_column_group=&amp;gt;new_table_column_group( ).&lt;/P&gt;&lt;P&gt;      lr_caption = cl_wd_caption=&amp;gt;new_caption( ).&lt;/P&gt;&lt;P&gt;      lr_caption-&amp;gt;set_text( wa_char-char3 ).&lt;/P&gt;&lt;P&gt;      lr_column_group5-&amp;gt;set_header( lr_caption ).&lt;/P&gt;&lt;P&gt;      lr_column_group5-&amp;gt;add_column( lr_table_column ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Zeile 4&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CONCATENATE min2 '-' max2 INTO spalte.&lt;/P&gt;&lt;P&gt;      lr_column_group4 = cl_wd_table_column_group=&amp;gt;new_table_column_group( ).&lt;/P&gt;&lt;P&gt;      lr_caption = cl_wd_caption=&amp;gt;new_caption( ).&lt;/P&gt;&lt;P&gt;      lr_caption-&amp;gt;set_text( spalte ).&lt;/P&gt;&lt;P&gt;      lr_column_group4-&amp;gt;set_header( lr_caption ).&lt;/P&gt;&lt;P&gt;      lr_column_group4-&amp;gt;add_column( lr_column_group5 ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Zeile 3&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      lr_column_group3 = cl_wd_table_column_group=&amp;gt;new_table_column_group( ).&lt;/P&gt;&lt;P&gt;      lr_caption = cl_wd_caption=&amp;gt;new_caption( ).&lt;/P&gt;&lt;P&gt;      lr_caption-&amp;gt;set_text( wa_char-char2 ).&lt;/P&gt;&lt;P&gt;      lr_column_group3-&amp;gt;set_header( lr_caption ).&lt;/P&gt;&lt;P&gt;      lr_column_group3-&amp;gt;add_column( lr_column_group4 ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Zeile 2&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CONCATENATE min1 '-' max1 INTO spalte.&lt;/P&gt;&lt;P&gt;      lr_column_group2 = cl_wd_table_column_group=&amp;gt;new_table_column_group( ).&lt;/P&gt;&lt;P&gt;      lr_caption = cl_wd_caption=&amp;gt;new_caption( ).&lt;/P&gt;&lt;P&gt;      lr_caption-&amp;gt;set_text( spalte ).&lt;/P&gt;&lt;P&gt;      lr_column_group2-&amp;gt;set_header( lr_caption ).&lt;/P&gt;&lt;P&gt;      lr_column_group2-&amp;gt;add_column( lr_column_group3 ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Zeile 1&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      lr_column_group = cl_wd_table_column_group=&amp;gt;new_table_column_group( ).&lt;/P&gt;&lt;P&gt;      lr_caption = cl_wd_caption=&amp;gt;new_caption( ).&lt;/P&gt;&lt;P&gt;      lr_caption-&amp;gt;set_text( wa_char-char1 ).&lt;/P&gt;&lt;P&gt;      lr_column_group-&amp;gt;set_header( lr_caption ).&lt;/P&gt;&lt;P&gt;      lr_column_group-&amp;gt;add_column( lr_column_group2 ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      lr_table-&amp;gt;add_grouped_column( lr_column_group ).&lt;/P&gt;&lt;P&gt;      lr_grid_data = cl_wd_grid_data=&amp;gt;new_grid_data( lr_table ).&lt;/P&gt;&lt;P&gt;      lr_table-&amp;gt;set_layout_data( lr_grid_data ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    lr_container-&amp;gt;add_child(&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        the_child = lr_table ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMETHOD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Sep 2010 06:43:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/cl-wd-table-table-with-dynamic-fields/qaq-p/7312785</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2010-09-07T06:43:40Z</dc:date>
    </item>
    <item>
      <title>Re: cl_wd_table - table with dynamic fields</title>
      <link>https://community.sap.com/t5/technology-q-a/cl-wd-table-table-with-dynamic-fields/qaa-p/7312786#M2631842</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;As you have created the dynamic table with dynamic fields, you might have assigned as node to the data source of the table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If not, create a dynamic node and with the fields used in the dynamic table, assign it to the data source of the table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Bind the dynamically created node with data and data wil be displayed in the table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;*get the node info
lr_node_info type ref to if_wd_context_node_info.

lr_node_info = wd_context-&amp;gt;get_node_info( ).&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the IF_WD_CONTEXT_NODE_INFO method you will have methods to create node(ADD_CHILD_NODE) and attributes(ADD_ATTRIBUTE) dynamically&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Madhu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Sep 2010 08:08:35 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/cl-wd-table-table-with-dynamic-fields/qaa-p/7312786#M2631842</guid>
      <dc:creator>Madhu2004</dc:creator>
      <dc:date>2010-09-07T08:08:35Z</dc:date>
    </item>
    <item>
      <title>Re: cl_wd_table - table with dynamic fields</title>
      <link>https://community.sap.com/t5/technology-q-a/cl-wd-table-table-with-dynamic-fields/qaa-p/7312787#M2631843</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you please provide an example coding?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Sep 2010 08:32:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/cl-wd-table-table-with-dynamic-fields/qaa-p/7312787#M2631843</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2010-09-07T08:32:55Z</dc:date>
    </item>
    <item>
      <title>Re: cl_wd_table - table with dynamic fields</title>
      <link>https://community.sap.com/t5/technology-q-a/cl-wd-table-table-with-dynamic-fields/qaa-p/7312788#M2631844</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE&gt;&lt;CODE&gt;*get node info

 lr_node_info type ref to if_wd_context_node_info.
lr_new_node_info  type ref to if_wd_context_node_info
 lr_node_info  = wd_context-&amp;gt;get_node_info( ).

*create node
 lr_node type ref to if_wd_context_node.

 CALL METHOD lr_node_info-&amp;gt;add_new_child_node
  EXPORTING
*    supply_method                =
*    supply_object                =
*    dispose_method               =
*    dispose_object               =
*    static_element_type          =
    name                         = 'node_name'
*    is_mandatory                 = ABAP_FALSE
*    is_mandatory_selection       = ABAP_FALSE
*    is_multiple                  = ABAP_TRUE
*    is_multiple_selection        = ABAP_TRUE
*    is_singleton                 = ABAP_FALSE
*    is_initialize_lead_selection = ABAP_TRUE
*    static_element_rtti          =
*    is_static                    = ABAP_TRUE
*    attributes                   =
  receiving
    child_node_info              = lr_new_node_info    .

*now add all the attributes to the nodes which you have created as columns in the table
 lr_new_node_info-&amp;gt;add_attribute...........

*set the newly created node as data source to ur dynamic table
table-&amp;gt;set_data_source( new_node ).

Now you can bind the data to the node...&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Sep 2010 08:45:47 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/cl-wd-table-table-with-dynamic-fields/qaa-p/7312788#M2631844</guid>
      <dc:creator>Madhu2004</dc:creator>
      <dc:date>2010-09-07T08:45:47Z</dc:date>
    </item>
    <item>
      <title>Re: cl_wd_table - table with dynamic fields</title>
      <link>https://community.sap.com/t5/technology-q-a/cl-wd-table-table-with-dynamic-fields/qaa-p/7312789#M2631845</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The below code shows how to create a node.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;lo_node_info = wd_context-&amp;gt;get_node_info( ).
  CALL METHOD lo_node_info-&amp;gt;add_new_child_node
    EXPORTING
      name            = node_name
    RECEIVING
      child_node_info = lo_node_info.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Once you created the node , you can add attributes to the node.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  &lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;CALL METHOD lo_child_node_info-&amp;gt;add_attribute
    EXPORTING
      attribute_info = lv_attribute_info.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;lv_attribute_info has all the properties of a attribute , set them properly as you want before you create.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Once a node with required attributes is done , bind this to the data source of the table , using &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;cl_wd_table-&amp;gt;BIND_DATA_SOURCE( ).&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Aditya.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Sep 2010 08:54:49 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/cl-wd-table-table-with-dynamic-fields/qaa-p/7312789#M2631845</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2010-09-07T08:54:49Z</dc:date>
    </item>
  </channel>
</rss>

