Come ottenere la voce selezionata nella tabella WebDynPro ABAP?
Domanda
Ho un webdynpro contenente una tabella che mostra numerose righe. Dopo che l'utente fa clic sul pulsante Elimina, voglio eliminare la riga selezionata della tabella.
Il mio problema in questo momento è che non so come implementarlo nella chiamata di eventi. Come posso identificare la linea selezionata della tabella?
Soluzione 2
Finalmente ho ottenuto la soluzione:
Nell'evento pulsante Implementa quanto segue, per accedere al nodo e infine il valore ID:
method ONACTIONZSS10_15_ONDELETE .
DATA ls_cust type wd_this->element_IT_Cust.
DATA lo_nd_cust TYPE REF TO if_wd_context_node.
DATA lo_el_cust TYPE REF TO if_wd_context_element.
" Get the selected element
lo_nd_cust = wd_context->get_child_node( name = 'IT_CUST' ).
lo_el_cust = lo_nd_cust->get_element( ).
" Get the attributes of the node-element
lo_el_cust->get_static_attributes(
IMPORTING
static_attributes = ls_cust ).
" Call the delete-function
CALL FUNCTION 'ZSS10_15_CUST_FM_DELETE'
EXPORTING
custid = ls_cust-ID
.
endmethod.
Altri suggerimenti
Se per "Table" intendi un ALV modificabile, c'è una funzione preimpostata per questo. Date un'occhiata al http://help.sap.com/saphelp_nw04s/helpdata/en/5f/ec57c72a1349c8bfdda56d976e9399/frameset.htm e http://help.sap.com/saphelp_nw04s/helpdata/en/5f/ec57c72a1349c8bfdda56d976e9399/frameset.htm Per i dettagli su come elaborare manualmente la selezione, vedere http://help.sap.com/saphelp_nw04s/helpdata/en/5f/ec57c72a1349c8bfdda56d976e9399/frameset.htm.