on 05-17-2010 8:44 PM
Hello guys!
I need your help!
I created an ALV in my Web Dynpro, i need to get all rows that has been selected on my grid. How can i do this?
I don't found any answer about this in the forum.
PS.: My ALV doesn't have fieldcat, he's formed based on my Context Node using the method: BIND_TABLE.
Thanks in advance and regards.
Danilo Cardoso
Good day danilo,
This code will capture selected row.
DATA LO_ND_FLIGHTS TYPE REF TO IF_WD_CONTEXT_NODE.
DATA LO_EL_FLIGHTS TYPE REF TO IF_WD_CONTEXT_ELEMENT.
DATA LS_FLIGHTS TYPE WD_THIS->ELEMENT_FLIGHTS.
* navigate from <CONTEXT> to <FLIGHTS> via lead selection
LO_ND_FLIGHTS = WD_CONTEXT->GET_CHILD_NODE( NAME = WD_THIS->WDCTX_FLIGHTS ).
* get element via lead selection
LO_EL_FLIGHTS = LO_ND_FLIGHTS->GET_ELEMENT( ).
* get all declared attributes
LO_EL_FLIGHTS->GET_STATIC_ATTRIBUTES(
IMPORTING
STATIC_ATTRIBUTES = LS_FLIGHTS ).
Here LS_FLIGHTS contain the row selected in ALV table.
If you dont want to write code manually Just go to code wizard select READ option and press f4
and select the node you want to read for selected rows.
If you want multiple rows to be selected.
DATA LO_ND_SFLIGHT TYPE REF TO IF_WD_CONTEXT_NODE.
DATA LO_ND_SFLIGHT1 TYPE REF TO IF_WD_CONTEXT_NODE.
DATA LO_EL_SFLIGHT TYPE REF TO IF_WD_CONTEXT_ELEMENT.
DATA LO_EL_SFLIGHT1 TYPE REF TO IF_WD_CONTEXT_ELEMENT.
DATA: LS_SFLIGHT TYPE WD_THIS->ELEMENT_SFLIGHT1,
LT_SFLIGHT TYPE TABLE OF WD_THIS->ELEMENT_SFLIGHT1,
LT_TEMP TYPE WDR_CONTEXT_ELEMENT_SET,
WA_TEMP TYPE REF TO IF_WD_CONTEXT_ELEMENT.
* navigate from <CONTEXT> to <SFLIGHT> via lead selection
LO_ND_SFLIGHT = WD_CONTEXT->GET_CHILD_NODE( NAME = WD_THIS->WDCTX_SFLIGHT1 ).
* get element via lead selection
LO_EL_SFLIGHT = LO_ND_SFLIGHT->GET_ELEMENT( ).
CALL METHOD LO_ND_SFLIGHT->GET_SELECTED_ELEMENTS
RECEIVING
SET = LT_TEMP.
LOOP AT LT_TEMP INTO WA_TEMP.
CALL METHOD WA_TEMP->GET_STATIC_ATTRIBUTES
IMPORTING
STATIC_ATTRIBUTES = LS_SFLIGHT.
APPEND LS_SFLIGHT TO LT_SFLIGHT. " inside you are processing single record of selected records
CLEAR LS_SFLIGHT.
ENDLOOP.
LO_ND_SFLIGHT->BIND_TABLE( LT_SFLIGHT ).
I hope it helps.
Regards and Best wishes.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
HI,
You have to use method get_selected_elements of interface if_wd_context_node.
It will give u all selected elements of the context node bound to your ALV.
Do a where used list of this method, you'll find plenty of working examples
Regards
Manas Dua
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
81 | |
10 | |
10 | |
9 | |
7 | |
6 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.