Ver Mensaje Individual
  #2  
Viejo 18/12/09, 12:42:05
The_best_for_less The_best_for_less is offline
Junior Member
 
Fecha de Ingreso: may 2009
Mensajes: 7
Prueba...

Estimado, espero que este código te sirva.
Lo que hago es definir y luego implementar.

Despues recorro el catalogo, y cuando encuentro el valor del catalogo
modifico la tabla y despues hago un refresh.

Todo esto debe ir después de las declaraciones de las variables.
Saludos.



CLASS lcl_event_receiver DEFINITION DEFERRED.

DATA: g_event_receiver TYPE REF TO lcl_event_receiver.

**************************************************************
* LOCAL CLASS Definition
**************************************************************
*§4.Define and implement event handler to handle event DATA_CHANGED.
*
CLASS lcl_event_receiver DEFINITION.

PUBLIC SECTION.
METHODS:
handle_data_changed
FOR EVENT data_changed OF cl_gui_alv_grid
IMPORTING er_data_changed.

PRIVATE SECTION.

DATA: error_in_data TYPE c.

ENDCLASS. "lcl_event_receiver DEFINITION
*---------------------------------------------------------
CLASS lcl_event_receiver IMPLEMENTATION.

METHOD handle_data_changed.
DATA pr_data_changed TYPE REF TO cl_alv_changed_data_protocol.

DATA: ls_good TYPE lvc_s_modi.
DATA: valor TYPE s_seatsocc.

error_in_data = space.

LOOP AT er_data_changed->mt_good_cells INTO ls_good.
CASE ls_good-fieldname.
WHEN 'REEMPLAZO'.

READ TABLE er_data_changed->mt_good_cells INTO ls_good
WITH KEY row_id = ls_good-row_id
fieldname = ls_good-fieldname.

CALL METHOD er_data_changed->get_cell_value
EXPORTING
i_row_id = ls_good-row_id
i_fieldname = ls_good-fieldname
IMPORTING
e_value = valor.

* Leímos tabla interna
READ TABLE gt_outtab INTO wa_outtab INDEX ls_good-row_id.
wa_outtab-total = wa_outtab-cantidad + valor.
wa_outtab-difer = wa_outtab-venta - wa_outtab-total.

* Modificamos
MODIFY TABLE gt_outtab FROM wa_outtab .
CALL METHOD grid1->refresh_table_display.

ENDCASE.
ENDLOOP.

IF error_in_data EQ 'X'.
CALL METHOD er_data_changed->display_protocol.
ENDIF.

ENDMETHOD. "handle_data_changed

ENDCLASS. "lcl_event_receiver IMPLEMENTATION
Responder Con Cita