Wie bekomme ich den ausgewählten Eintrag in Webdynpro -ABAP -Tabelle?
Frage
Ich habe ein WebDynpro mit einer Tabelle mit zahlreichen Zeilen. Nachdem der Benutzer auf die Schaltfläche Löschen geklickt habe, möchte ich die ausgewählte Zeile der Tabelle löschen.
Mein Problem ist im Moment, dass ich nicht weiß, wie ich dies im Ereignisanruf implementieren soll. Wie kann ich die ausgewählte Zeile der Tabelle identifizieren?
Lösung 2
Ich habe endlich die Lösung:
Im Schaltfläche implementieren Sie Folgendes, um auf den Knoten und schließlich auf den ID-Wert zuzugreifen:
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.
Andere Tipps
Wenn Sie mit "Tabelle" einen bearbeitbaren ALV meinen, gibt es dafür eine voreingestellte Funktion. Sich ansehen http://help.sap.com/saphelp_nw04s/helpdata/en/5f/ec57c72a1349c8bfda56d976e9399/frameset.htm und http://help.sap.com/saphelp_nw04s/helpdata/en/5f/ec57c72a1349c8bfda56d976e9399/frameset.htm Einzelheiten zum manuellen Verarbeiten der Auswahl finden Sie unter http://help.sap.com/saphelp_nw04s/helpdata/en/5f/ec57c72a1349c8bfda56d976e9399/frameset.htm.