Refrescar ALV grid con función REUSE

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Garces
    Senior Member
    • ago
    • 321

    #1

    Refrescar ALV grid con función REUSE

    Señores... tengo un problema

    Alguien sabe cómo refrescar los datos de un ALV Grid en un programa que usa la función REUSE_ALV_GRID_DISPLAY sin tener que cambiar el programa para usar la clase CL_GUI_ALV_GRID?

    Sucede que el programa lo que hace para refrescar la grilla es volver a cargar los datos en la tabla interna y volver a llamar a la función REUSE...

    Esto parece que hace que los dynpros se vayan anidando con cada acción de refresh y luego de ciertas refrescadas, el programa se cae con la excepción LIST_TOO_MANY_LPROS...

    Alguna sugerencia que no implique modificar el programa sustancialmente?

    Gracias
    Miguel Ángel Garcés Ramírez
  • aldape
    Senior Member
    • dic
    • 204

    #2
    Agrega estas lineas a tu funcion user_command...

    call function 'REUSE_ALV_GRID_DISPLAY'
    exporting
    i_callback_program = sy-cprog
    i_callback_user_command = 'USER_COMMAND'
    i_structure_name = 'REPORTE'
    i_callback_pf_status_set = 'SET_PF_STATUS'
    i_save = 'A'
    is_layout = gd_layout
    is_variant = gd_variant
    it_fieldcat = fieldcatalog[]
    tables
    t_outtab = reporte.

    ...
    ...
    ...

    form user_command using r_ucomm like sy-ucomm
    rs_selfield type slis_selfield.

    rs_selfield-col_stable = 'X'.
    rs_selfield-row_stable = 'X'.
    rs_selfield-refresh = 'X'.

    Comentario

    Trabajando...