INCORPORAR CHECK BOXES A UN ALV REPORT.
 

Para incorporar checkboxes en un alv report hay que seguir los pasos siguientes:

1. Incluir en la tabla de datos del alv una columna adicional TYPE C, que almacenará la información de si la línea esta o no seleccionada.


DATA: BEGIN OF I_ALV_DATA OCCURS 0,
  CHECKED TYPE C,   "Columna para los check boxes
  COLUM1  TYPE C,
  COLUM2  TYPE C,
END OF I_TAB.
              




 

2. En la estructura utilizada para la definición del layout del report hay que informar el campo BOX_FIELDNAME con el nombre el campo de Checkboxes del apartado anterior (en este caso 'CHECKED').


IS_LAYOUT-BOX_FIELDNAME = 'CHECKED'.
              

 

 

3. Se crea el fieldcatalog.


4. Se llama a la función ALV.


CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
  EXPORTING
     IS_LAYOUT     = IS_LAYOUT
     IT_FIELDCAT   = I_FIELDCAT
  TABLES
     T_OUTTAB      = I_ALV_DATA
  EXCEPTIONS
     PROGRAM_ERROR = 1
     OTHERS = 2.
              

 

 

 

 


Esto es suficiente para visualizar en el report un check box al comienzo de cada linea del report. Si se selecciona una de esas líneas, automáticamente cambia el valor del campo de checkboxes (en este caso 'Checked') en la tabla de datos (en este caso I_ALV_DATA), que pasa a tener el valor 'X'. Esa información permanece en la tabla de datos aún después de haber salido del report con F3 (BACK). De modo que podemos realizar cualquier tipo de procesamiento posterior con esos registros.