Problemas con Refresh en ALV

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Cesar2011
    Junior Member
    • feb
    • 6

    #1

    Problemas con Refresh en ALV

    Hola a todos:
    Soy nuevo en MUNDOSAP como usuario, ya lo venía utilizando antes como consulta y debo agradecerles ya que gracias a ustedes pude resolver varios problemas.

    Ahora quisiera que alguien me ayude con el siguiente tema:

    Estoy usando una toolbar copiada del programa SAPLKKBL, la STANDARD_FULLSCREEN, la que renombré como STANDARD.

    Así están la rutinas en mi programa:

    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
    i_callback_program = l_repid
    i_callback_pf_status_set = 'PF_STATUS_SET'
    i_callback_user_command = 'AT_USER_COMMAND'
    it_fieldcat = i_fieldcat
    is_layout = st_formato
    TABLES
    t_outtab = muestra
    EXCEPTIONS
    program_error = 1.


    FORM pf_status_set USING rt_extab TYPE slis_t_extab.

    IF sy-ucomm = '&REFRESH'.
    REFRESH MUESTRA.
    PERFORM CARGA_DATOS_AUX.
    PERFORM CARGA_DATOS_ALV.
    ENDIF.

    SET PF-STATUS 'STANDARD'.

    ENDFORM.

    El problema es el siguiente:

    Cuando hago click en el ícono Refresh la primera vez, no se ejecuta la rutina pf_status_set, luego en el siguiente click sí y ahí los datos se refrescan correctamente (son datos de stocks y de movimientos de inventario).

    Alguien podría decirme porque en el primer click no funciona ?.

    Gracias por todo y saludos.

    César.
  • kiboqac
    Member
    • mar
    • 55

    #2
    Realmente no se porque te funciona incluso en segundo click.

    En la rutina PF_STATUS_SET deberias de setearle tu SET PF-STATUS 'STANDARD'

    Y debes crear una rutina 'AT_USER_COMMAND' para poder procesar la accion del usuario y ahi si poner el codigo para que refresque

    FORM at_user_command
    USING p_ucomm LIKE sy-ucomm
    rs_selfield TYPE slis_selfield.

    IF sy-ucomm = '&REFRESH'.
    REFRESH MUESTRA.
    PERFORM CARGA_DATOS_AUX.
    PERFORM CARGA_DATOS_ALV.
    ENDIF.


    ENDFORM.
    Kibo

    Comentario

    • Cesar2011
      Junior Member
      • feb
      • 6

      #3
      Hola, gracias por responder:

      Ya tengo definida la rutina AT_USER _COMMAND, lo que sucede es que esta rutina "se activa" cuando hago doble click sobre algún campo del ALV.
      El Refresh que pertenece a la toolbar STANDARD está fuera del ALV (ver archivo adjunto).

      Gracias y saludos.
      Archivos Adjuntos

      Comentario

      Trabajando...