PDA

Ver la Versión Completa : Editar adts en girlla CL_SALV_TABLE


marianoboni
07/06/10, 17:41:02
Buenas Tardes:
Tengo que editar celdas de este tipo de grilla; logre enlazarle la funcionalidad F4, despliega la ventana pero no permite seleccionar nada, de lo que infiero que no me esta permitiendo editar. Alguien tiene idea como habilitar la edición en estos casos?

DATA: lx_msg TYPE REF TO cx_salv_msg,
lr_columns TYPE REF TO cl_salv_columns_table,
lr_column TYPE REF TO cl_salv_column_table,

P_DDIC TYPE SALV_S_DDIC_REFERENCE,
EX_MSG TYPE REF TO CX_SALV_NOT_FOUND .

lnsDoc = P_WA_DOC-lineas.

IF containerLns IS INITIAL.

CREATE OBJECT containerLns
EXPORTING
container_name = 'CC_LINEAS'.

ELSE.

containerLns->FREE( ).

CREATE OBJECT containerLns
EXPORTING
container_name = 'CC_LINEAS'.

ENDIF.

TRY.
cl_salv_table=>factory(
EXPORTING
R_CONTAINER = containerLns
container_name = 'CC_LINEAS'
IMPORTING
r_salv_table = o_alvLineas
CHANGING
t_table = lnsDoc ).

CATCH cx_salv_msg INTO lx_msg.

ENDTRY.

lr_columns = o_alvLineas->get_columns( ).

loop at lr_columns into lr_column.


endloop.

lr_columns->set_optimize( 'X' ).

P_DDIC-TABLE = 'ACGL_ITEM'.
P_DDIC-FIELD = 'MWSKZ'.


TRY.
lr_column ?= lr_columns->GET_COLUMN( P_DDIC-FIELD ).
lr_column->SET_DDIC_REFERENCE( P_DDIC ).
lr_column->SET_F4( IF_SALV_C_BOOL_SAP=>TRUE ).
lr_column->set_optimized( 'X' ).

CATCH CX_SALV_NOT_FOUND INTO EX_MSG.
MESSAGE EX_MSG TYPE 'I'.
ENDTRY.

o_alvLineas->display( ).

marianoboni
07/06/10, 17:54:24
Acabo de ver que no es posible editar datos en este Objeto.

Post Finalizado.