✒️ABAP POO El Layout del ALV GRID CONTROL
ABAP POO El Layout del ALV GRID CONTROL
EL LAYOUT DEL ALV GRI CONTROL
CONFIGURACION DEL LAYOUT
Se puede cambiar el diseño, por ejemplo asignando un título, coloreando el listado, optimizando el ancho de columnas.
Para hacer eso declaramos en el programa una estructura del tipo estándar LVC_S_LAYO y rellenar los campos que queramos configurar.
Los principales campos son:
GRID_TITLE: muestra un título con un máximo de 70 caracteres.
ZEBRA: si es ‘X’ se muestra un lisatado rayado.
NO_HEADERS: si es ‘X’ nop muestra la columna de cabecera.
SEL_MOPDE: determina cuantas celdas, columnas o filas pueden ser seleccionadas. Las opciones para estos campos son:
Espacio = Ver opción ‘B’ no botn
‘A’ = muchas columnas y muchas filas si botón
‘B’ = muchas columnas y muchas filas si botón
‘C’ = muchas columnas y muchas filas no botón
‘D’ = muchas columnas, muchas filas y muchas celdas si botón
Para seleccionas muchas entradas, presionamos la tecla CTRL y mantenemos presionado el botón del ratón.
CWIDTH_OPT: si es ‘X’ todos los anchos de columnas son optimizados. Si configuramos esta propiedad del layouy entonces no tendrá sentido asignar anchos fijos a las columnas del reporte mediante el campo del catálogo OUTPUTLEN
NO_TOOLBAR: esconde la barra de herramientas
TOTALS_BEF: muestra los totales de la primera línea.
SMALL_TITLE = ‘X’ el titulo se visualiza de igual tamaño que la columna cabecera
NO_TOTARR = quita las flecha en las líneas de totales y subtotales,
DETAILINIT = ‘X’ la pantalla muestra las columnas con sus valores iniciales
KEYHOT = ‘X’ todos los campos serán sensibles a hotspot. Se ejecutara el evento HOTSTPOT_CLIC.
EJEMPLO DE CONFIGURACION DEL LAYOUT
Creamos estructura del tipo LVC_S_LAYO
DATA: st_layout TYPE lvc_s_layo.
Asignamos las propiedades
CLEAR st_layout.
st_layout-grid_title = ‘Reporte de usuarios’.
st_layout-zebra = ‘X’.
st_layout-cwidth_opt = ‘X’.
Por ulitmo completamos el parámetro correspondiente en la llamada al método SET_TABLE_FOR_FIRST_DISPLAY
CALL METHOD obj_grilla->set_table_for_first_display
…EXPORTING
……is_layoput = st_layout
…CHANGING
……it_outtba = ti_usuarios
…….it_fieldcatalgo = ti_catalogo[ ]
…EXCEPTIONS
……OTHERS = 4.
También podemos colorear ciertas files de nuestro reporte en base a determinadas condiciones. Para ello tenemos que agregar el TYPE POOLS COL
TYPE-POOLS: slis, icon, col.
Este contiene la información para trabajar con colores en un control ALV GRID, si entramos dentro podemos ver los colores simbólicos. (Van del 0 al 7)
Agregamos un nuevo campo a la tabla interna de salida del ALV
DATA: BEGIN OF wa_usuarios,
………dni TYPE z_dni,
……..nombre_ape TYPE z_nombre_ape,
……..estado_usu TYPE z_estado_usu,
……..icono_estado_usu TYPE icon-id,
……...direccion TYPE z_dirección,
………fecha_nac TYPE z_fecha_nac,
………estado-civil TYPE z_estado_civil,
………color(4) TYPE c,
END OF wa_usuarios.
Luego asignamos un colo a una fila del reporte según una condición
IF st_usuarios-dni EQ ‘25674897’.
…CONCATENATE ‘C’ col_negative ‘10’ INTO st_usuarios-color.
ENDIF
MODIFY ti_usuarios FROM st_usuarios.
Por ultimo completamos el campo del layout INFO_FNAME para informarle cual es el campos de la tabla interna que determinará el color a utilizar.
CLEAR st_layout.
st_layout-grid_title = ‘Reporte de usuarios’.
st_layout-zebra = ‘X’.
st_layout-cwidth_opt = ‘X’.
st_layout-info_fname = ‘COLOR’.
 
 
 
Sobre el autor
Publicación académica de Josep Antoni Lopez Moyano, en su ámbito de estudios para el Máster ABAP POO.
Josep Antoni Lopez Moyano
Profesión: It Manager - España - Legajo: QP26P
✒️Autor de: 375 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP HCM Nivel Inicial
- Carrera Consultor Basis NetWeaver Nivel Avanzado
- Carrera Consultor Basis NetWeaver Nivel Inicial
- Máster Funcional ABAP
- Máster ABAP Orientado a Objetos
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial