Anuncio

Colapsar
No hay anuncio todavía.

REUSE_ALV_GRID_DISPLAY y CheckBox

Colapsar
X
 
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes

  • REUSE_ALV_GRID_DISPLAY y CheckBox

    Hola Amigos se que es un tema muy hablado en los foros, pero creanme no encuentro un ejemplo como tal que explique un poco mas, que codigo.

    hice un programa donde lleno una tabla interna con datos, y los muestro con este alv:

    REUSE_ALV_GRID_DISPLAY

    en dicha tabla interna tengo una columna que me indica si se selecciono la columna (es la primer columna).

    Pego un poco del codigo donde defino el campo que sera un checkbox:

    Código:
      wa_fieldcat-fieldname   = 'SEL'.
      wa_fieldcat-seltext_m   = 'Seleccionar'.
      wa_fieldcat-edit        = 'X'.
      wa_fieldcat-checkbox    = 'X'.
      wa_fieldcat-col_pos     =  1.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
    
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          I_CALLBACK_PROGRAM                = sy-repid
          I_CALLBACK_PF_STATUS_SET          = 'SET_PF_STATUS'
          I_CALLBACK_USER_COMMAND           = 'USER_COMMAND'
    *      is_layout = it_layout
          IT_FIELDCAT                       = it_fieldcat[]
        TABLES
          T_OUTTAB                          = data
        EXCEPTIONS
          PROGRAM_ERROR                     = 1
          OTHERS                            = 2.
    Mi programa es un Report no es una Dynpro.

    El proceso es:

    Mediante un selection Screen, pido ciertos parametros, el conjunto de datos los meto en una tabla interna y luego los muestro en un ALV.

    Mi duda es, como detecto esos registros seleccionados?

    pongo un boton en la pantalla que diga, grabar? y ahi detecto los marcados? o en que momento?

    En teoria:


    Código:
    I_CALLBACK_USER_COMMAND           = 'USER_COMMAND'
    En teoria deberia mandar llamar al form, pero cuando? cuando el usuario va dando clicks en la columna del checkbox? o cuando el usuario se sale de la pantalla mediante el boton BACK o cuando?

    Código:
    FORM user_command USING r_ucomm     LIKE sy-ucomm           "#EC CALLED
                            rs_selfield TYPE slis_selfield.
      DATA:
            lv_file   TYPE string,
            FILENAME  TYPE string,
            PATH      TYPE string,
            FILEPATH  TYPE string.
      BREAK-POINT.
    Nunca entra(o se detiene en esa parte) en que evento entra a esta Form.

    Con los registros seleccionados quiero llenar otra tabla interna.

    Existe otro Alv que me ayude mas? si es asi, cual es?

    Gracias.
Trabajando...
X