
EL CATALOGO DE CAMPOS DEL ALV GRID CONTROL – LECCION 3-2
CATALOGO DE CAMPO, es una tabla interna en donde se almacenan los campos que se visualizaran en la salida de un reporte ALV
Las columnas que mostramos en un reporte son especificas por el programador
La tabla interna del catalogo es del tipo estándar LVC_T_FCAT. Cada una de las líneas que componen a esta tabla es del tipo LVC_S_FCAT y está compuesta por los campos que determinan las propiedades que se pueden configurar de cada una se las columnas que se mostraran en el reporte ALV GRID y que vemos a continuación
En el ejercicio que realizamos en la lección anterior, todas las definiciones de los campos y propiedades de los mismos que se mostraron en el reporte ALV fueron tomados de la tabla ZTABLA_USUARIOS mediante la asignación del parámetro I_STRUCTURE_NAME = ‘ZTABLA_USUARIO’ en la llamada al método SET_TABLE_FOR_FIRST_DISPLAY
NOTA, también es posible configurar las propiedades de cada uno de los campos de la estructura LVC_S_FCAT de modo de que dichas configuraciones se apliquen en la salida de nuestro ALV
A continuación exolicaremos el significado de las principales propiedades de la estructura LVC_S_FCAT
- TABNAME, contiene el nombre de la tabla interna
- FIELDNAME, contiene el nombre del campo de la tabla interna del ALV
- REF_TABLE, tabla de referencia del diccionario de datos ABAP
- REF_FIELD, camo perteneciente a la tabla de referencia del diccionario de datos ABAP
- CHECKBOK, muestra un checkbox
- COL_POS, contiene la posición de la columna
- DO_SUM, totales para la columna (si/no)
- HOTSPOT, columna sensible al hotspot (si/no)
- OUTPUTLEN, determina el ancho de una columna
- EMPHASIZE, destacael contenido de una columna. Para destacar con el color estándar se debe asignar con ‘X’
- KEY, la columna es clave (si/no)
- LOWERCASE, mayúscula o minúscula (si/no)
- NO_OUT, no se muestra la columna (si/no). La columna esta oculta en la lista (pantalla o impresora), pero aparece en el campo de selección de cuadros de dialogo de las funciones estándar (clasificación y filtro)
- SCRTEXT_S, descripción corta del campo
- SCRTEXT_M, descripción mediana del campo
- SCRTEXT_L, descripción larga del campo
- JUST, alineación del contenido de la columna
NOTA, el campo JUST del catalogo solo es relevante si los compos son de tipo CHAR o NUMC
Las justificaciones que podemos utilizar son
‘R’ justificado a la derecha
‘L’ justificado a la izquierda
‘C’ centrado
- NO_ZERO, no muestra el valor ‘0’ (si/no)
- NO_SIGN, muestra el signo (si/no)
AGREGAR O CAMBIAR LAS PROPIEDADES DE LAS COLUMNAS DEL CATALOGO
A continuación, se toma como ejemplo el reporte ALV que se realizo en la lección anterior, veamos como haríamos para agregar columnas o cambiar las propiedades de las columnas ya existentes en el reporte
Lo primero que se hace es definir las tablas internas y la estructura que utilizan para trabajar con el catalogo tal como se ver a continuación
Como el campo que vamos a agragar será un icono, entoces también agregamos la declaración TYPE-POOLS icon.
Luego vamos a crear la subrutina ARMAR_CATALOGO que será la encargada de definir las propiedades de cada una de las columnas
Dentro de la subrutina ARMAR_CATALOGO definimos las propiedades de cada una de las columnas del listado.
Vamos a agregar la nueva columna que mostrara un icono que será de color verde cuando el usuario se encuentre ‘Activo’ y de color rojo cuando este ‘incativo’
Por ultimo cambiamos los parámetros que pasamos al método SET_TABLE_FOR_FIRST_DISPLAY por los que vemos a continuación
Y la salida por pantalla del reporte ALV será la siguiente