MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 22/12/09, 15:35:56
fenix28 fenix28 is offline
Member
 
Fecha de Ingreso: may 2007
Mensajes: 39
Problema campos ALV OO Ayuda búsqueda!!!

Hola a todos compañeros tengo un pequeño problemilla que no entiendo lo que pasa, he creado un ALV OO con dos campos editables que son fechas, bien he puesto que esto campos tengan ayuda para que busquen las fechas, lo he declaro de la siguiente forma en el catálogo:

l_fieldcatalog-fieldname = 'FECHA_DESDE'. "Fecha Desde
l_fieldcatalog-scrtext_l = 'Fecha Desde'.
l_fieldcatalog-col_pos = 3.
l_fieldcatalog-key = 'X'.
l_fieldcatalog-outputlen = 10.
l_fieldcatalog-edit = 'X'.
l_fieldcatalog-REF_FIELD = 'BUDAT'.
l_fieldcatalog-REF_TABLE = 'BKPF'.

append l_fieldcatalog to g_fieldcatalog2.
clear: l_fieldcatalog.

l_fieldcatalog-fieldname = 'FECHA_HASTA'. "Fecha Hasta
l_fieldcatalog-scrtext_l = 'Fecha Hasta'.
l_fieldcatalog-col_pos = 4.
l_fieldcatalog-key = 'X'.
l_fieldcatalog-outputlen = 10.
l_fieldcatalog-edit = 'X'.
l_fieldcatalog-REF_FIELD = 'BUDAT'.
l_fieldcatalog-REF_TABLE = 'BKPF'.

El ALV se genera bien co la ayuda que me da la opción de usar la ayuda para poder modificar los datos, pero al cambiar la fecha no me captura el dato seleccionado "o algo me he dejado", si que si pongo a mano la fecha y cambia la que hay me lo detecta se mete en el metodo handle_data_changed
y lo guarda, el problema que si lo hago desde la ayuda detecta que ha cambiado pero no detecta que ha habido un cambio.

He registrado estos dos eventos para detectar los cambios:

*Registrar Evento Enter para poder activar el evento data_changed.
call method obj_grid2->register_edit_event
exporting
i_event_id = cl_gui_alv_grid=>mc_evt_enter.

* Registramos el evento cuando se modificar el dato por si acaso no
* pulsan el ENTER
call method obj_grid2->register_edit_event
EXPORTING
i_event_id = cl_gui_alv_grid=>mc_evt_modified.


Y mi método data_changed lo tengo de la siguiente forma:

class lcl_event_receiver2 definition.

public section.

methods:

handle_data_changed for event data_changed of cl_gui_alv_grid
importing er_data_changed.

endclass. "lcl_event_receiver DEFINITION

method handle_data_changed.

data: ls_mod_cells type lvc_s_modi,
lf_et_index_rows type lvc_t_row,
lf_et_row_no type lvc_t_roid.

clear g_wa_zcpr_cat_lin.

loop at er_data_changed->mt_mod_cells into ls_mod_cells.

read table g_zcpr_cat_lin index ls_mod_cells-row_id
into g_wa_zcpr_cat_lin.

if ls_mod_cells-fieldname eq 'FECHA_DESDE' and sy-subrc eq 0.
move ls_mod_cells-value to g_wa_zcpr_cat_lin-fecha_desde.
modify g_zcpr_cat_lin index ls_mod_cells-row_id
from g_wa_zcpr_cat_lin.
endif.

if ls_mod_cells-fieldname eq 'FECHA_HASTA' and sy-subrc eq 0.
move ls_mod_cells-value to g_wa_zcpr_cat_lin-fecha_hasta.
modify g_zcpr_cat_lin index ls_mod_cells-row_id
from g_wa_zcpr_cat_lin.
endif.

endloop.

endmethod.

Pero no me funciona con la ayuda, que me falta o que estoy haciendo mal ???? Alguna pista por favor.......... Gracias por leer este mensaje y feliz navidad..........

Saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 05:09:36.


www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web