cancel
Showing results for 
Search instead for 
Did you mean: 

Multiple rows in table popin

Former Member
0 Kudos

Hi Experts,

I have a requirement to have multiple rows in the table popin, that is , having a table with multiple rows as the table popin.

For further information, the exact requirement is , there is a table which will have one of the column containing a button, EXPAND , clicking which a table needs to be displayed below the row, (same as it happens for Table popins) and EXpand button becomes COLLAPSE button after it is clicked. Now clicking the Collapse button should close the table showed in Table popin.

Kindly help for the above requirement.

Thanks in Advance for help

Shilpa.

Accepted Solutions (0)

Answers (1)

Answers (1)

former_member199125
Active Contributor
0 Kudos

Hi shilpa,

this functinality we can achieve with table popinst.and abt table buttons expand and collapse, please check is there any option to place the button in cell variant ( table popin toggle cell ).. If we can insert button then you can change the text dynamically.

Or else you can achieve this by, place two buttons say expand and collapse. and a table with data. hide the table and collapse initially using wdui_visibility attribute...on click of expand button ,,,, visible the table and collapse buttton and invisible the collapse button.. but here we cant display the extra table with in the table like in table popin

Regards

Srinivas

Former Member
0 Kudos

Hi Srinivas,

Thanks for your Reply!

Can you guide on the first method, how to have table as a table POPIN? Kindly share the steps.

Many thanks for your reply.

Shilpa.

Former Member
0 Kudos

LOOP AT wd_this->comp_tab INTO w_comp_tab.

  • lv_uielement_id_prefix = lv_uielement_id_prefix && iv_col_num.

IF w_comp_tab-name NE 'SELECTED_POPIN' .

l_new_col = cl_wd_table_column=>new_table_column(

id = w_comp_tab-name

width = '100px' ).

lr_header = cl_wd_caption=>new_caption( text = w_comp_tab-name ).

IF w_comp_tab-name EQ 'PRODUCT_ID'.

  • ** link to action

CONCATENATE w_comp_tab-name '_LINK' INTO l_link_id.

lo_link_to_action = cl_wd_link_to_action=>new_link_to_action(

id = l_link_id

text = 'PRODUCTID'

on_action = 'SET_POPIN'

).

l_new_col->set_table_cell_editor( lo_link_to_action ).

DATA: lr_el_details_cont TYPE REF TO if_wd_view_element.

lr_container ?= lr_el_details_cont.

  • Transparent container

DATA lr_transparent_container TYPE REF TO cl_wd_transparent_container.

DATA lr_table_in_table_popin TYPE REF TO cl_wd_table.

lv_uielement_id = lv_uielement_id_prefix && '_POPIN_CNTR'. "#EC NOTEXT

lr_transparent_container = cl_wd_transparent_container=>new_transparent_container(

id = lv_uielement_id "'TRANSPARENT_CONTAINER1'

height = '100%' "#EC NOTEXT

width = '100%'

accessibility_descr = 'TRANS_ACC'

is_layout_container = 'X' "#EC NOTEXT

view = view

).

DATA l_popin_layout TYPE REF TO cl_wd_matrix_layout.

l_popin_layout = cl_wd_matrix_layout=>new_matrix_layout( container = lr_transparent_container ).

lr_transparent_container->set_layout( l_popin_layout ).

  • lr_container->add_child( the_child = lr_transparent_container ).

DATA: l_item_node TYPE REF TO if_wd_context_node.

l_item_node = l_node->get_child_node( 'SUB' ).

l_popin = cl_wd_table_popin=>new_table_popin(

id = 'POPIN'

on_close = 'CLOSE_POPIN' ).

  • DATA: i_the_content TYPE REF TO cl_wd_uielement.

  • i_the_content ?= lr_transparent_container.

IF l_item_node IS BOUND.

cl_wd_dynamic_tool=>create_table_from_node(

EXPORTING ui_parent = lr_transparent_container

table_id = 'MULTIV_TAB'

node = l_item_node

RECEIVING table = lr_table_in_table_popin ).

ENDIF.

"Add the Transparent Container to the Table Popin

l_popin->set_content( lr_transparent_container ).

" add popin to column

l_new_col->set_popin( l_popin ).

ENDIF.

l_new_col->set_header( lr_header ).

" add column to table

lr_table->add_column( l_new_col ).

ENDIF.

ENDLOOP.