✒️ABAP POO El Layout del ALV GRID CONTROL
ABAP POO El Layout del ALV GRID CONTROL
Configuración del Layout del ALV Grid Control.
La estructura lvc_s_layo contiene campos para establecer propiedades gráficas, mostrar excepciones, calcular totales y habilitar opciones de interacción específicas.
Complete los campos correspondientes de la estructura lvc_s_layo e insértelo como parámetro en el CALL METHOD go_grid-> set_table_for_first_display. Vea el ejemplo en Establecer el título de la cuadrícula.
Si desea cambiar la apariencia después de la salida de la lista, use los métodos get_frontend_layout y set_frontend_layout.
Ejemplos de campos en la estructura lvc_s_layo:
GRID_TITLE Estableciendo el título de la cuadrícula
SEL_MODE. Modo de selección, determina cómo se pueden seleccionar las filas. Puede tener los siguientes valores:
Varias columnas, varias filas con botones de selección.
B Selección simple, cuadro de lista, fila / columna única
C Varias filas sin botones
D Varias filas con botones y seleccionar todo ICONO
Configurar y obtener filas (columnas) seleccionadas y leer el contenido de la línea
Puede leer qué filas de la cuadrícula se han seleccionado y seleccionar filas dinámicas de la cuadrícula utilizando los métodos get_selected_rows y set_selected_rows. Existen métodos similares para las columnas.
Tenga en cuenta que la tabla de la cuadrícula siempre tiene las filas en la misma secuencia que se muestra en la cuadrícula, por lo que puede usar el índice de las filas seleccionadas para leer la información en las filas de la tabla. En los ejemplos siguientes, la tabla de la cuadrícula se llama gi_sflight.
Declaración de datos:
DATOS:
* Tabla interna para índices de filas seleccionadas
gi_index_rows TYPE lvc_t_row,
* Información sobre 1 fila
g_selected_row COMO lvc_s_row.
Ejemplo 1: leer el índice de las filas seleccionadas y usarlo para leer la tabla de la cuadrícula
MÉTODO DE LLAMADA go_grid-> get_selected_rows
IMPORTADOR
et_index_rows = gi_index_rows.
DESCRIBIR TABLA gi_index_rows LINES l_lines.
SI l_lines = 0.
FUNCIÓN DE LLAMADA 'POPUP_TO_DISPLAY_TEXT'
EXPORTADOR
textline1 = 'Debe elegir una línea válida'.
SALIDA.
TERMINARA SI.
BUCLE EN gi_index_rows EN g_selected_row.
LEER TABLA gi_sflight INDEX g_selected_row-index INTO g_wa_sflight.
TERMINARA SI.
ENDLOOP.
Ejemplo 2: Establecer filas seleccionadas.
DESCRIBIR TABLA gi_index_rows LINES l_lines.
SI l_lines> 0.
MÉTODO DE LLAMADA go_grid-> set_selected_rows
exportador
it_index_rows = gi_index_rows.
TERMINARA SI.
Hacer un campo de excepción (= semáforos)
Se puede definir una columna en la cuadrícula para mostrar los semáforos. Este campo es de tipo Char 1 y canb contiene los siguientes valores:
1 rojo
2 amarillo
3 verdes
El nombre del campo del semáforo se proporciona en el gs_layout-excp_fname utilizado por methodset_table_for_first_display.
Ejemplo
TIPOS: COMIENZO DE st_sflight.
INCLUYE ESTRUCTURA zsflight.
TIPOS: semáforo TIPO c.
'TIPOS: FINAL DE st_sflight.
TIPOS: tt_sflight TIPO TABLA ESTÁNDAR DE st_sflight.
DATOS: gi_sflight TYPE tt_sflight.
* Establecer el campo de excepción de la tabla
BUCLE EN gi_sflight EN g_wa_sflight.
SI g_wa_sflight-paymentsum <100000.
g_wa_sflight-traffic_light = '1'.
ELSEIF g_wa_sflight-paymentsum => 100000 Y
g_wa_sflight-paymentsum <1000000.
g_wa_sflight-traffic_light = '2'.
DEMÁS.
g_wa_sflight-traffic_light = '3'.
TERMINARA SI.
MODIFICAR gi_sflight DESDE g_wa_sflight.
ENDLOOP.
* Nombre del campo de excepción (campo de semáforo)
gs_layout-excp_fname = 'TRAFFIC_LIGHT'.
* Configuración de cuadrícula para la primera pantalla
MÉTODO DE LLAMADA go_grid-> set_table_for_first_display
EXPORTANDO i_structure_name = 'SFLIGHT'
is_layout = gs_layout
CAMBIANDO it_outtab = gi_sflight.
Colorea una línea
Los pasos para colorear una línea en la cuadrícula son muy similares a los de hacer un semáforo.
* Para colorear una línea, la estructura de la tabla debe incluir un campo Char 4 para las propiedades de color
TIPOS: COMIENZO DE st_sflight.
INCLUYE ESTRUCTURA zsflight.
* Campo para color de línea
tipos: line_color (4) tipo c.
TIPOS: FINAL DE st_sflight.
TIPOS: tt_sflight TIPO TABLA ESTÁNDAR DE st_sflight.
DATOS: gi_sflight TYPE tt_sflight.
* Recorra la tabla para establecer las propiedades de color de cada línea. El campo de propiedades de color es
* Char 4 y los caracteres se establecen de la siguiente manera:
* Char 1 = C = Esta es una propiedad de color
* Char 2 = 6 = Código de color (1-7)
* Char 3 = Intensificado el / de = 1 = encendido
* Char 4 = Visualización inversa = 0 = de
BUCLE EN gi_sflight EN g_wa_sflight.
SI g_wa_sflight-paymentsum <100000.
g_wa_sflight-line_color = 'C610'.
TERMINARA SI.
MODIFICAR gi_sflight DESDE g_wa_sflight.
ENDLOOP.
* Nombre del campo de color
gs_layout-info_fname = 'LINE_COLOR'.
* Configuración de cuadrícula para la primera pantalla
MÉTODO DE LLAMADA go_grid-> set_table_for_first_display
EXPORTANDO i_structure_name = 'SFLIGHT'
is_layout = gs_layout
CAMBIANDO it_outtab = gi_sflight.
Actualizar la visualización de la cuadrícula
Utilice el método de cuadrícula REFRESH_TABLE_DISPLAY
Ejemplo:
MÉTODO DE LLAMADA go_grid-> refresh_table_display.
 
 
 
Sobre el autor
Publicación académica de Enrique Horacio Lugo Lander, en su ámbito de estudios para el Máster ABAP POO.
Enrique Horacio Lugo Lander
Profesión: Tsu en Informática - Argentina - Legajo: GB93C
✒️Autor de: 30 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Enrique Lugo