tengo una duda sobre como se debe de realizar lo siguiente:
quiero modificar datos dentro de un alv grid al presionar un boton de “Guardar Cambios”, pero no capto bien la idea de como hacerlo, donde puedo encontrar informacion al respecto o como se debe hacer el update?
como cargo los registros modificados en una work area o como se hace la comparacion??
ya encontre la forma de guardar cambios en el grid y la tabla
realice lo siguiente por si alguien mas lo llegara a requerir:
when 'ACTIALIZAALV'.
data: itab like YLEGTMPTABLEUSR.
CALL METHOD VG_DGRID->check_changed_data. " valido si hay cambios en el grid
IF ti_datos_usuarios[] NE ti_datos_usuarios_ant[].
CALL FUNCTION 'POPUP_TO_CONFIRM' " mensaje para validar si quieren guardar los cambios
EXPORTING
titlebar = 'Alerta... '
text_question = 'Modificar datos... Continuar?'
text_button_1 = 'Aceptar.'
text_button_2 = 'Cancelar.'
default_button = '2'
display_cancel_button = ' '
IMPORTING
answer = popup_return " to hold the FM's return value
EXCEPTIONS
text_not_found = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
IF popup_return EQ '1'.
MODIFY YLEGTMPTABLEUSR FROM table ti_datos_usuarios. " se cambian los datos en la tabla
ENDIF.
ELSE.
MESSAGE i001(00) WITH 'No data changed'.
ENDIF.