You are on page 1of 45

ALV Grid Control

1-45

Leccin 1 Introduccin

El ALV Grid control (ABAP List Viewer) es una herramienta flexible para mostrar listas. La herramienta tiene operaciones comunes de las listas como funciones genricas y pueden ser redefinidas. Esto permite que el uso de la ALV sirva para una gran variedad de programas.

Imagen 1. La imagen muestra un ALV con la botonera estndar.

La ALV consta de una barra de herramientas (toolbar), un ttulo y la tabla de salida. Si el programador as lo desea, se puede ocultar el ttulo y toda o parte de la toolbar.

1.1 Implementacin
Como todos los controles wrap, la ALV ofrece mtodos globales de clase que pueden ser usados desde los programas.

ALV Grid Control

2-45

1.2 Integracin
Los controles son componentes software que pueden ser instanciados localmente. Para poder comunicarse con ese componente todos los controles wrap usan mtodos control Framework. En este contexto, las ALV son un caso especial. La ALV usa controles del men de SAP para integrarlas en sus funciones estndar. Ese men puede ser customizado para los requerimientos individuales de cada programa.

1.3 Rasgos
Esto es un vistazo a la funcionalidad que la ALV ofrece. Se puede... Mostrar listados no jerrquicos con un aspecto visual. Usar funciones tpicas como ordenar o filtrar automticamente si aadir ni una lnea de cdigo ms. Adaptar las funciones predefinidas y sus acciones Programar acciones habituales por el usuario como el presionar botn derecho o doble clic en una lnea de forma masiva o individual

1.4 Limitaciones
La ALV Grid control no puede mostrar bloques o listas jerrquicas. Las listas han de ser mostradas en lneas individuales. Permite poder ordenarlas al gusto del usuario e imprimirlas con ese formato.

ALV Grid Control

3-45

Leccin 2 Instancia de ALV Grid Control

2.1 Definicin
La instancia ha de referirse a la clase cl_gui_alv_grid. DATA: nonmbre_variable TYPE REF TO cl_gui_alv_grid. Una instancia de la ALV muestra toda la informacin en forma de lista en la pantalla. Se puede llamar a mtodos de esa instancia para redefinir propiedades del control.

2.2 Jerarqua de la clase.

2.3 Integracin
La Clase cl_gui_alv_grid contiene tambin mtodos de control especficos y mtodos para el control de la Framework.

ALV Grid Control

4-45

Leccin 3 Trabajar con la ALV Grid Control


Bsicos El siguiente grfico muestra los pasos requeridos para mostrar una lista en una ALV:

Como mnimo se tiene que proveer de los siguientes dos tipos de informacin para mostrar los datos. Una tabla interna con los datos a mostrar, llamada Output table Una descripcin de la estructura de esos datos que han sido declarados en la ALV, bien con el field catalog o bien con la correspondiente estructura del diccionario de datos. Generalmente, la tabla de salida contiene datos que previamente se han seleccionado de la base de datos. La referencia de la Output table que se le pasa a la ALV tiene que ser vlida mientras la ALV est operativa. sta puede ser local en el programa o referenciarse a una estructura global. El field catalog es una tabla que contiene informacin referente a los campos que se van a mostrar en la ALV. Por ejemplo, la ALV usa la tabla para identificar el tipo

ALV Grid Control

5-45

de campo. Se puede usar tambin para dar un formato especial para una columna como hacer que se muestren iconos o botones check.

3.1 Trabajar con los controles de la ALV.


Como Resultado de usar objetos ABAP, SAP gener controles programables consistentes para los siguientes casos: Crear un control e integrarlo dentro de la pantalla. Pasar mtodos de backend a frontend. Eventos escuchadores (Handling) y lanzadores (trigger) para controlar el fronted. Destruccin del control (control del tiempo de vida). Para controles bsicos (como el control del editor de texto, el visor HTML o el controlador del visor de imgenes), se puede aplicar el mismo modelo de programacin es aplicable a los susodichos procedimientos.

3.2 Eventos especiales Handling, Aspectos de la ALV Grid Control


La ALV Grid control usa los controles grid para mostrar la Output table. Por ello, podemos decir que la ALV Grid control es un wrap que usa los controles bsicos de wrap. La ALV Grid control difiere de los controles bsicos en los siguientes aspectos: Todos los eventos son registrados en el sistema cuando el control es instanciado. Si se quiere registrar todos los eventos como eventos de la aplicacin se debe usar el parmetro I_APPL_EVENTS y el mtodo disptacher CL_GUI_CFW=>DISPATCH en el mdulo PAI. Primeros pasos Esta seccin describe los fciles pasos que se deben seguir para mostrar una lista usando una ALV Grid control. 1. Crear una instancia para la ALV Grid control e integrarla en la pantalla 2. Seleccionar los datos que se van a mostrar y pasarlo con la descripcin de los campos que se han usado.

ALV Grid Control

6-45

3.3 Crear un ALV Grid control


1. Declarar las variables para la ALV Grid control y su container. Adems, declarar una tabla interna del tipo que se necesite para mostrar la informacin. DATA: grf_grid grf_ccontainer gt_sflight TYPE REF TO cl_gui_alv_grid, TYPE REF TO cl_gui_custom_container TYPE TABLE OF sflight. ).

2. Crear una pantalla estndar y marcar un rea para al contenedor ( Asignar a esa rea el nombre del container.

3. En el mdulo PBO de la misma screen, se debe instanciar el container control de la ALV Grid control. Usar el parmetro parent para hacer el link entre el container y la pantalla IF grf_ccontainer IS INITIAL. CREATE OBJECT grf_ccontainer EXPORTING
ALV Grid Control 7-45

CONTAINER_NAME = 'CCCONTAINER'. CREATE OBJECT GRF_GRID EXPORTING I_PARENT = grf_ccontainer. ENDIF. Normalmente, se usa el mtodo cl_gui_cfw=>flush para pasar los mtodos llamados en el frontend, pero desde que el Control Framework manda un flush automtico al final del PBO, esto ya no es necesario. Cuando se inicia el programa, aunque las dos instancias (el contenedor y la ALV) se generan estas no son visibles.

3.4 Mostrar una lista en la ALV Grid control


Una vez creada la ALV Grid e integrada en la pantalla usando un container, se le debe pasar los datos y la estructura a la ALV Grid. 1. Llenar la tabla interna con datos: SELECT * FROM sflight INTO TABLE gt_sflight. 2. Pasar la Output table y la estructura de la a la ALV. Esto se debe hacer una vez creado el contenedor y la ALV. CALL MTODO grf_grid->set_table_for_first_display EXPORTING I_ESTRUCTURA_NAME = 'SFLIGHT' CHANGING IT_OUTTAB = gt_sflight. En este caso, la estructura proviene del diccionario de datos. La ALV Grid coge la informacin de los campos de la tabla SFLIGHT y los muestra con sus caractersticas.

3.5 Programacin de aplicaciones especficas.


Los siguientes rasgos de la ALV Grid la hacen muy potente y apta para muchas aplicaciones. Las variantes permiten a los usuarios adaptar la salida a sus requerimientos. Se puede programar que opciones se les muestran y que variante se muestra al iniciarse.

ALV Grid Control

8-45

Definir y crear funciones propias por aplicacin, aadirlas a la botonera estndar o redefinir las funciones estndar para sus necesidades u ocultar aquellas que no se deseen. Se pueden programar funciones Drag & Drop. La ALV Grid permite por medio de la programacin usar funciones Drag & Drop para implementarlas en aplicaciones gracias a las ALV Grid y otros custom controles. El formato de la salida y el control de opciones vienen de tres estructuras: o o o Field catalog Layout Print Estructura

3.6 Mostrar variantes.


Con la ayuda de las variantes los usuarios pueden customizar la lista de salida para satisfacer sus requerimientos. Los parmetros que se usan dentro del mtodo set_table_for_first_display son: I_SAVE, IS_VARIANT y I_DEFAULT

Modo

Resultado

Valores IS_VARIANT = SPACE. I_SAVE = SPACE.

Cambiar la La ALV Grid muestra el icono de la variante variante ( ) pero no el men en la toolbar. Leer variantes

IS_VARIANT = <estructura La ALV Grid muestra el icono de variantes en variante> la toolbar. El men contiene slo funciones I_SAVE = SPACE. (o para seleccionar y cambiar la variante. IS_VARIANT es SPACE y I_SAVE No SPACE) La ALV Grid muestra los iconos de las variantes en el men de la toolbar. Se puede seleccionar las variantes existentes, se pueden cambiar y grabar. IS_VARIANT = <estructura variante> I_SAVE = <'X', 'U' o 'A'>

Leer y grabar variantes

3.7 Grabar variantes.


Objetivo La funcin estndar cambia las variantes que pueden ser accesibles para los usuarios pinchando en los botones de la toolbar. Esos iconos permiten al usuario ajustar el formato de la ALV a sus requerimientos durante la vida del programa. El desarrollador determina si los usuarios pueden guardar las variantes y definir si las opciones estn disponibles.
ALV Grid Control 9-45

Requisitos previos Con los parmetros por defecto, los usuarios pueden grabar variables como sus variables por defecto. Si existe ya una variable por defecto, sta es la que se lee cuando el mtodo set_table_for_first_display se instancia. Si no se quiere permitir que los usuarios creen variables por defecto, el parmetro I_DEFAULT = SPACE. Si el parmetro I_DEFAULT = SPACE se puede hacer que se cargue una variante usando el mdulo de funciones LVC_VARIANT_DEFAULT_GET. Pasos a seguir 1. Declarar la variable para determinar las opciones de grabar que estn disponibles para el usuario y una estructura para identificar la variante. DATA: X_SAVE GV_VARIANT TYPE c, " Parmetro I_SAVE TYPE DISVARIANT. " Parmetro IS_VARIANT 2. La estructura tipo DISVARIANT debe contener como mnimo el report ID. GV_REPID = SY-REPID. GV_VARIANT-REPORT = GV_REPID. 3. Determinar las opciones de grabado disponibles para el usuario X_SAVE = 'U'. " Las variantes slo pueden ser grabadas para su usuario 4. Pasar las variables en la llamada al mtodo

set_table_for_first_display: CALL MTODO GRID1->set_table_for_first_display EXPORTING I_ESTRUCTURA_NAME = 'SFLIGHT' IS_VARIANT I_SAVE CHANGING IT_OUTTAB = GV_VARIANT = X_SAVE = GT_SFLIGHT.

ALV Grid Control

10-45

Si se pasa slo el actual parmetro IS_VARIANT, los usuarios slo pueden leer variantes pero no grabar nuevas. Si se usa el parmetro I_SAVE se necesita pasar una variante con la estructura IS_VARIANT. Resultado La toolbar ahora incluye en el men la opcin de que los usuarios lean y graben variantes. Dependiendo del valor del parmetro I_SAVE se puede: Opciones para el parmetro I_SAVE I_SAVE = SPACE I_SAVE = 'U' I_SAVE = 'X' I_SAVE = 'A' Las variantes no pueden ser grabadas. Slo se pueden acceder a las variantes del usuario. Slo se pueden grabar variables globales. Tanto las variantes globales como las de usuario pueden ser grabadas.

3.8 Integracin de las funciones definidas


La ALV Grid tiene funciones estndar para la edicin de listas. Los usuarios pueden acceder a esas funciones con la toolbar o el men. Para integrar funciones propias se puede: Reemplazar las funciones existentes por funciones redefinidas. Aadir nuevas funciones a la toolbar o el men. Se puede tambin ocultar o deshabilitar funciones que no se necesiten.

3.9 Excepciones de salida.


Objetivo Las excepciones son grficos que indica que, un valor ha pasado de un rango en lnea de la lista. Por ejemplo, si usamos el modelo de un aeropuerto, se puede usar un semforo en rojo para indicar que un vuelo est lleno. Los colores diferentes ayudan al usuario a comprender rpidamente el estatus de la capacidad. Se puede utilizar tres estatus diferentes: Display Valor interno 3
ALV Grid Control

Significado (por Ejemplo) Baja ocupacin


11-45

2 1

Media/alta ocupacin (situacin crtica) Alta ocupacin (sin asientos libres)

Se puede lanzar una excepcin como un led. Los desarrolladores son los que deben determinar el rango de valores y el valor para dicha excepcin. Pasos a seguir 1. Definir el layout del tipo LVC_S_LAYO: DATA gs_layout TYPE LVC_S_LAYO. 2. Aadir una variable de tipo c a la Output table como se muestra en el ejemplo. DATA: BEGIN OF GT_OUTTAB OCCURS 0. INCLUDE ESTRUCTURA <DDIC-Struktur>. DATA: light TYPE C. "Muestra exceptions DATA: END OF GT_OUTTAB. 3. Asignar al campo EXCP_FNAME el nombre de la excepcin. 4. Si se desea mostrar la excepcin como un led debe asignar el campo EXCP_LED al layout. 5. Haga un loop y compruebe el valor de la excepcin, dependiendo de l asigne los valores 1, 2, 3 para mostrar los semforos. 6. Pasar el layout y la Output table usando el mtodo set_table_for_first_display. Para actualizar los datos en caso de que hayan cambiado, usar el mtodo refresh_table_display.

ALV Grid Control

12-45

Resultado La ALV Grid muestra una columna de excepcin como se muestra en el grfico.

3.10 Conversin Exit


Objetivos Se usan los conversin exist para definir un salto a una rutina de conversin de una columna de la Output table. La conversin es implementada usando WRITE con USING EDIT MASK Requisitos previos Para que la ALV Grid pueda hacer una conversin, ella debe saber la longitud interna y externa del campo, o lo que es lo mismo, la longitud antes y despus de la conversin como se ve en el ejemplo. DATA TIME TYPE T VALUE '154633'. WRITE (8) TIME USING EDIT MASK '__:__:__'. "Output: 15:46:33 En este ejemplo la longitud interna es de seis caracteres pero la salida es de ocho. Pasos a seguir
ALV Grid Control 13-45

1. Declarar la longitud interna y externa del campo de la ALV Grid. o Para campos con referencia al Data Dictionary la ALV Grid usa automticamente la longitud interna y externa. o Para campos no referenciados, se debe especificar usando los campos INTLEN para la longitud interna y DD_OUTLEN para la longitud externa en el field catalog. 2. Especificar la conversin usando el campo EDIT_MASK del field catalog. 3. Llamar al mtodo set_table_for_first_display pasndole el field catalog. Resultado Los valores de las columnas son convertidas antes de que se muestren.

ALV Grid Control

14-45

Leccin 4 Mtodos de la clase CL_GUI_ALV_GRID

4.01 Mtodos Bsicos


Mtodo CONSTRUCTOR set_table_for_first_display refresh_table_display Aplicacin Genera una instancia de la ALV Grid. Muestra una Output table en el container. Refresca los datos de la ALV.

4.02 Elementos de la ALV Grid


Mtodo get_current_cell set_current_cell_via_id get_scroll_info_via_id set_scroll_info_via_id get_selected_cells get_selected_columns get_selected_rows set_selected_rows Aplicacin Coge el ndice y propiedades de una celda. Posiciona el cursor en una celda especfica. Coge la posicin del scrool. Posiciona el scroll en una posicin. Coge la posicin y la informacin de una celda que haya sido seleccionada. Coge el nombre de las columnas seleccionadas. Coge el ndice de las filas seleccionadas. Selecciona filas.

4.03 Layout y Estructuras


Mtodo get_frontend_field_catalog set_frontend_field_catalog get_frontend_layout set_frontend_layout Set_3d_border Aplicacin Coge el actual field catalog de la pantalla. Pone un field catalog en la pantalla. Coge el layout de la pantalla. Pone un layout en la pantalla. Habilita (o no) el borde en 3D de la ALV Grid

4.04 Funciones genricas


Mtodo
ALV Grid Control

Aplicacin
15-45

get_filtered_entries get_filter_criteria set_filter_criteria get_sort_criteria set_sort_criteria get_variant set_user_command

Coge ndices de las filas que no han sido mostradas debido a un filtro Coge las propiedades del filtro activo Pone filtro en las columnas Coge la ordenacin actual Aplica una ordenacin Coge la variante actual Cambia la funcin para el user_command

4.05 CONSTRUCTOR
Este mtodo se llama automticamente si se crea un objeto de la clase CL_GUI_ALV_GRID. Definicin del mtodo CREATE OBJECT <nb_alv CL_GUI_ALV_GRID> EXPORTING i_shellstyle = <var. de tipo I> i_lifetime = <var. de tipo I> i_parent = <ref. var. CL_GUI_CONTAINER> i_appl_events = <var. de tipo CHAR01>. Parmetro I_appl_events Significado Si este parmetro est activo, la ALV Grid registra los eventos como eventos de aplicacin, si no est activo, todos los eventos se registran en el sistema.

4.06 GET_CURRENT_CELL
Se utiliza este mtodo para coger el valor y las propiedades de la celda en la que el cursor est posado. Si es una columna es seleccionada y no una celda, la ALV indica que la fila es 0 y devuelve slo la informacin especfica de la columna. La ALV Grid devuelve dos filas y columnas ndices: una que referencia en la Output table y otra referente a la posicin que muestra la ALV. Definicin del mtodo CALL MTODO <ref.var. CL_GUI_ALV_GRID>->get_current_cell
ALV Grid Control 16-45

IMPORTING E_ROW = <var. de tipo I> E_VALUE = <var. de tipo C> E_COL = <var. de tipo I> ES_ROW_ID = <estructura de tipo LVC_S_ROW> ES_COL_ID = <estructura de tipo LVC_S_COL>. Parmetro E_ROW E_VALUE E_COL ES_ROW_ID ES_COL_ID Significado Fila ndice de la celda seleccionada en la ALV Valor de la celda seleccionada ndice de la columna seleccionada en la ALV Estructura con la informacin de la fila ndice seleccionada de la Output table en la ALV Estructura con la informacin de la columna ndice seleccionada de la Output table en la ALV

4.07 GET_FRONTEND_FIELD CATALOG


Coge el field catalog actual. Este mtodo se usa si se desea modificar el field catalog para, por ejemplo ocultar o mostrar alguna de las columnas. Definicin del mtodo CALL MTODO <ref.var.CL_GUI_ALV_GRID>->get_frontend_field catalog IMPORTING ET_field catalog = <tabla interna de tipo LVC_T_FCAT>. Parmetro ET_field catalog Significado Estructura con la descripcin de la Output table

4.08 GET_FRONTEND_LAYOUT
Coge el actual layout. Definicin del mtodo CALL MTODO <ref.var.CL_GUI_ALV_GRID>->get_frontend_layout IMPORTING
ALV Grid Control 17-45

ES_LAYOUT = <estructura de tipo LVC_S_LAYO>. Parmetro ES_layout Significado Contiene campos para hacer totales, excepciones, colores, Drag & Drop e interactuar con otros elementos.

4.09 GET_SELECTED_CELLS
Coge las celdas seleccionadas. Devuelve el nombre de la columna y el ndice de la fila. La ALV Grid devuelve los ndices slo en caso de que sea una celda individual la que est seleccionada. En caso de ser una fila o columna entera lo que est seleccionado se devuelve un valor vaco. Requisitos previos Se debe activar el modo cell selection para permitir al usuario seleccionar celdas sueltas (y celdas mltiples usando la tecla Ctrl). Para conseguir esto, en la llamada al mtodo set_table_for_first_display se le debe pasar la layout. Definicin del mtodo CALL MTODO <ref.var.CL_GUI_ALV_GRID>->get_selected_cells IMPORTING ET_CELL = <tabla interna de tipo LVC_T_CELL>. Parmetro ET_CELL Significado Tabla con informacin de la celda seleccionada

4.10 GET_SELECTED_ROWS
Devuelve el ndice de las filas seleccionadas La primera fila es la 1. Si slo se ha seleccionado columnas la ALV Grid devuelve una tabla vaca. Si se han seleccionado filas mltiples la tabla normalmente viene ordenada por el ndice en orden ascendente y no por orden de seleccin.
ALV Grid Control 18-45

Requisitos previos Para permitir a los usuarios seleccionar filas mltiples, el campo sel_mode de la layout debe contener el valor 'A', 'C' o 'D' Definicin del mtodo CALL MTODO <ref.var.CL_GUI_ALV_GRID>->get_selected_rows IMPORTING ET_INDEX_ROWS = <tabla interna de tipo LVC_T_ROW>. Parmetro ET_INDEX_ROWS Significado Tabla con los ndices de las filas seleccionadas

4.11 GET_VARIANT
Devuelve la variante actual. Requisitos previos La variante actual ha debido ser grabada antes de llamar al mtodo. Para ello, en la llamada al mtodo set_table_for_first_display los parmetros I_SAVE y IS_VARIANT deben contener los valores correctos. Definicin del mtodo CALL MTODO <ref.var.CL_GUI_ALV_GRID>->get_variant IMPORTING ES_VARIANT = <estructura de tipo DISVARIANT>. Parmetro ES_VARIANT Significado Estructura con informacin de la variante actual.

4.12 REFRESH_TABLE_DISPLAY
El siguiente mtodo se usa para refrescar los datos de la ALV y poder mostrar los cambios efectuados. Definicin del mtodo
ALV Grid Control 19-45

CALL MTODO <ref.var.CL_GUI_ALV_GRID>->refresh_table_display EXPORTING IS_STABLE = <estructura de tipo LVC_S_STBL> I_SOFT_REFRESH = <variable de tipo CHAR01>. Parmetro IS_STABLE Significado Si se indica los valores de la fila y columna el scrool se posiciona sobre ellos. I_SOFT_REFRESH Este parmetro se usa en casos excepcionales. Si se activa este parmetro la ordenacin, filtros y dems cambios hechos por el usuario desaparecern. IT_FILTER Tabla con las caractersticas del filtro

4.13 SET_FRONTEND_FIELD CATALOG


Asigna un field catalog a la ALV. Despus de usar este mtodo se debe refrescar de la ALV usando, por ejemplo el mtodo refresh_table_display. Requisitos previos Se debe rellenar el field catalog con el mtodo get_fronted_field catalog o de forma semi-automtica antes de llamarla. Definicin del mtodo
CALL MTODO <ref.var.CL_GUI_ALV_GRID>->set_frontend_field catalog

EXPORTING IT_field catalog = <tabla interna de tipo LVC_T_FCAT>. Parmetro IT_field catalog Restricciones En este mtodo la ALV Grid no tiene acceso al Data Dictionary, por ello no es posible crear referencias del diccionario, por ejemplo para copiar literales de campos guardados en el diccionario como texto de columnas. Significado Descripcin de los atributos de las columnas de la Output table

ALV Grid Control

20-45

4.14 SET_FRONTEND_LAYOUT
Fija un layout para el ALV actual. Despus de usarse, se debe usar el mtodo refresh_table_display para que los cambios se reflejen. En la layout se determinan las propiedades de la ALV. Usando en el mtodo set_table_for_first_display resultados. Definicin del mtodo CALL MTODO <ref.var.CL_GUI_ALV_GRID>->set_frontend_layout EXPORTING IS_LAYOUT = <estructura de tipo LVC_S_LAYO>. Parmetro IS_LAYOUT Significado Estructura con propiedades de los campos como excepciones, Drag & Drop y otras interacciones con elementos. el parmetro IS_LAYOUT se obtiene idnticos

4.15 SET_SELECTED_CELLS
Marca como seleccionas celdas de la ALV. Cualquier otra seleccin que se hubiera hecho con anterioridad desaparece al ser llamado este mtodo. Definicin del mtodo CALL MTODO <ref.var.CL_GUI_ALV_GRID>->set_selected_cells EXPORTING IT_CELLS = <Tabla de tipo LVC_T_CELL>. Parmetro IT_CELLS Significado Tabla con las celdas que son seleccionadas. Las filas se rellenan con una estructura tipo LVC_S_COL, en la que se le indica la columna y la fila de la celda.

4.16 SET_SELECTED_COLUMNS
Marca como seleccionadas columnas de la ALV. Cualquier otra seleccin que se hubiera hecho con anterioridad desaparece al ser llamado este mtodo. Definicin del mtodo
ALV Grid Control 21-45

CALL MTODO <ref.var.CL_GUI_ALV_GRID>->set_selected_columns EXPORTING IT_COL_TABLE = <table de tipo LVC_T_COL>. Parmetro IT_COL_TABLE Significado Tabla con el nombre de las columnas que son seleccionadas.

4.17 SET_SELECTED_ROWS
Marca como seleccionadas filas de la ALV. La primera fila es la fila 1. Cualquier otra seleccin que se hubiera hecho con anterioridad desaparece al ser llamado este mtodo. Definicin del mtodo CALL MTODO <ref.var.CL_GUI_ALV_GRID>->set_selected_rows EXPORTING IT_INDEX_ROWS = <tabla interna de tipo LVC_T_ROW>. Parmetro Significado

IT_INDEX_ROWS Tabla con ndices de las filas seleccionadas

4.18 SET_SORT_CRITERIA
Fija el criterio de ordenacin por columnas. Para que surta efecto se ha de llamar despus al mtodo refresh_table_display. Definicin del mtodo CALL MTODO <ref.var.CL_GUI_ALV_GRID>->set_sort_criteria EXPORTING IT_SORT = <tabla interna de tipo LVC_T_SORT>. Parmetro IT_SORT Significado Se define una columna por registro.

4.19 SET_TABLE_FOR_FIRST_DISPLAY

ALV Grid Control

22-45

Muestra una Output table en la ALV. En la llamada se puede especificar cualquier referencia del Data Dictionary o field catalog. Antes de su ejecucin se pueden usar parmetros opcionales para leer por ejemplo variantes, criterios de ordenacin, filtros y definir propiedades del ALV. Si se desea refrescar los valores mostrados en la Output table, se usa el mtodo refresh_table_display. El mtodo set_table_for_first_display slo se debe volver a llamar en caso de que la estructura del Output table haya cambiado. Requisitos previos La Output table debe estar definida globalmente o ser un atributo pblico de la clase. Definicin del mtodo
CALL MTODO <ref.var.CL_GUI_ALV_GRID>->set_table_for_first_display

EXPORTING I_ESTRUCTURA_NAME = <string de tipo DD02L-TABNAME> IS_VARIANT = <estructura de tipo DISVARIANT> I_SAVE = <var. de tipo CHAR01> I_DEFAULT = <var. de tipo CHAR01> IS_LAYOUT = <estructura de tipo LVC_S_LAYO> IS_PRINT = <estructura de tipo LVC_S_PRNT> IT_SPECIAL_GROUPS = <tabla interna de tipo LVC_T_SGRP>
IT_TOOLBAR_EXCLUDING = <tabla interna de tipo UI_FUNCTIONS>

CHANGING IT_OUTTAB = <tabla interna> IT_field catalog = <tabla interna de tipo LVC_T_FCAT> IT_SORT = <tabla interna de tipo LVC_T_SORT> IT_FILTER = <tabla interna de tipo LVC_T_FILT> Parmetro I_ESTRUCTURA_NAME Significado Nombre del Data Dictionary para la Output table. Si se especifica este parmetro la field catalog se genera automticamente.

ALV Grid Control

23-45

IS_VARIANT

Determina la variante para mostrar la Output table. Si se usa este parmetro se debe rellenar por lo menos el campo REPORT.

I_SAVE

Determina las opciones disponibles para que el usuario guarde variantes. o o o o X: slo globales U: slo especfico del usuario A: opciones X U a la vez. : no se puede grabar.

I_DEFAULT

Determina si un usuario puede determinar variantes por defecto. o o X : Est permitido. : No est permitido. si

Si las variantes por defecto estn permitidas y

existe alguna definida, si no se indica lo contrario en el parmetro IS_VARIANT se muestra la variante por defecto de forma automtica. IS_LAYOUT IS_PRINT IT_SPECIAL_GROUPS Determina las propiedades de la ALV. Parmetro para imprimir en backend Si en la field catalog las columnas que se agrupan por el campo SP_GROUP se le deben de pasar la tabla con los textos de ese grupo. En la pantalla de variantes, es posible usar un list box para restringir columnas en la seleccin de esos grupos.
IT_TOOLBAR_EXCLUDING

Contiene el cdigo de los botones y funciones que se quieren excluir en la toolbar. Los cdigos de las funciones son atributos constantes y empiezan por MC_FC_.

IT_OUTTAB IT_field catalog IT_SORT IT_FILTER

Output table con datos a mostrar Determina la estructura de la Output table y el formato de los datos que van a ser mostrados Tabla con las propiedades de ordenacin inicial. Tabla con las propiedades del filtro que se aplica inicialmente.

ALV Grid Control

24-45

Leccin 5 Eventos de la clase CL_GUI_ALV_GRID

La seccin trabajando con la ALV Grid control describe puntos especiales que se deben considerar para trabajar con los eventos de la clase.

5.01 Textos de salida definidos por usuario


Evento print_end_of_list print_top_of_list print_end_of_page print_top_of_page subtotal_text Aplicacin Define el texto que aparecer al final de la lista. Define el texto que imprimir en la cabecera. Define el texto que se imprimir en el pie de cada pgina. Define el texto que aparecer en la cabecera de cada pgina Define un texto para los subtotales.

5.02 Controles del ratn (Acciones en la ALV)


Evento double_click hotspot_click Aplicacin Pinchar dos veces en una celda Pinchar una vez en una celda declarada hots_pot.

5.03 DOUBLE_CLICK
Se activa el evento con el doble-click encima de una celda Evento E_ROW TYPE REF TO LVC_S_ROW Significado Estructura con el ndice de la fila

E_COLUMN TYPE REF TO LVC_S_COL Estructura con el ndice de la columna

5.04 HOTSPOT_CLICK
Se activa cuando en una celda hotspot (aparece una mano en el puntero del ratn al pasar sobre ella) se hace click.

ALV Grid Control

25-45

Requisitos previos Para habilitar a los usuarios una columna con hotspot, hay que hacer lo siguiente: Campo hotspot del field catalog para columnas solas Campo keyhot del layout para todos los key fields del Output table Parmetro E_ROW_ID TYPE REF TO LVC_S_ROW E_COLUMN_ID TYPE REF TO LVC_S_COL Significado Estructura con ndice de fila Estructura con el nombre de la columna

5.05 PRINT_END_OF_LIST
Evento que imprime un texto al final del listado.

5.06 PRINT_END_OF_PAGE
Evento que imprime un texto al final de cada pgina (Pie de pgina). Requisitos previos Para que exista pie de pgina se ha de reservar lneas de la pgina para ello usando el campo reservelns de la estructura lvc_s_prnt que se le pasa al mtodo set_table_for_first_display.

5.07 PRINT_TOP_OF_LIST
Evento que imprime un texto en la cabecera. Evento que se ejecuta slo una vez y es antes del print_top_of_page. El campo usado es el gris_title del layout.

5.08 PRINT_TOP_OF_PAGE
Evento que imprime un texto en la cabecera de cada pgina de la impresin.

5.09 SUBTOTAL_TEXT

ALV Grid Control

26-45

Evento que muestra un texto para los subtotales de columnas. Parmetro ES_SUBTOTTXT_INFO Type LVC_S_STXT EP_SUBTOT_LINE Type Ref To DATA Variable de referencia para insertar un subtotal en la grid. Las columnas para las que la suma no fue calculada se quedan con el valor inicial. E_EVENT_DATA Type Ref To CL_ALV_EVENT_DATA Ejemplo Mostrar una tabla con la estructura SFLIGHT subtotales. 1. Definir e implementar un evento handler para el evento subtotal_text. Registrar el evento con SET HANDLER 2. Llamar a la subrutina con este mtodo y pasar los parmetros 3. Los parmetros ep_subtot_line y e_event_data contienen referencia a variables tipo DATA, por eso se deben usar field symbols. FORM Mtodo_subtotal_text USING es_subtottxt_info TYPE lvc_s_stxt ep_subtot_line e_event_data DATA ls_sflight LIKE sflight. FIELD-SYMBOLS: <fs1> STRUCTURE sflight DEFAULT ls_sflight, <fs2>. IF es_subtottxt_info-criteria = 'PLANETYPE'. ASSIGN ep_subtot_line->* TO <fs1>. ASSIGN e_event_data->m_data->* TO <fs2>. CONCATENATE es_subtottxt_info-keyword ': ' TYPE REF TO data TYPE REF TO cl_alv_event_data. en una ALV, y que aparezcan los El atributo M_DATA de este objeto hace referencia al texto del subtotal. Estructura con informacin del criterio para hacer el subtotal. Significado

ALV Grid Control

27-45

<fs1>-planetype INTO <fs2>. ENDIF. ENDFORM. " MTODO_SUBTOTAL_TEXT

5.10 TOOLBAR
Evento que la ALV provoca cada vez que el control toolbar tiene que ser regenerado. Para aadir funciones propias, se debe instanciar el mtodo set_toolbar_interactive y escribir un mtodo handler. Se puede ocultar la toolbar en su totalidad rellenado el campo no_toolbar del layout. Parmetro E_OBJECT Type Ref To CL_ALV_EVENT_T OOLBAR_SET E_INTERACTIVE Type CHAR01 Si la bandera est activa, se provoca el mtodo usando set_toolbar_interactive. Sino, el evento es provocado por ALV Grid. El objeto contiene slo un atributo con la tabla de funciones de la toolbar. Significado

ALV Grid Control

28-45

Leccin 6 Field Catalog

6.01 Definicin
El Field Catalog es una tabla del tipo LVC_T_FCAT que contiene informacin de los campos que van a ser mostrados. La ALV usa la tabla para, por ejemplo, saber el tipo de campo a mostrar. Se usan los campos del field catalog para determinar el formato y las propiedades de las columnas de la lista que se va a mostrar en la ALV. En casos excepcionales, no es necesario pasar el field catalog (en la generacin del field catalog automtica).

6.02 Estructura
El field catalog contiene ms de 60 campos, algunos de ellos slo son usados de forma interna.

6.03 Integracin
Generalmente, se recomienda rellenar los campos del field catalog antes de mostrar la ALV por primera vez y utilizar despus el mtodo set_table_for_first_display. Para ajustar el field catalog generado por el ALV para un requerimiento especial antes de mostrarlo se usa el mdulo de funciones VC_field catalog_MERGE. Los mtodos get_fronted_field catalog y set_fronted_field catalog se usan para cambiar el field catalog despus de haber sido mostrado.

ALV Grid Control

29-45

6.04 Generar el field catalog


Bsicamente se necesita un field catalog por cada listado que se muestra usando un ALV Grid. Se puede generar de las siguientes formas: Automticamente usando una estructura del Data Dictionary. Manualmente en un programa ABAP. Semi-automticamente combinando las dos opciones anteriores.

6.05 Generar el field catalog automticamente


Objetivos Si la estructura del Output table corresponde a una estructura almacenada en el Data Dictionary (DDic) la ALV Grid puede usar esta informacin y generar automticamente el field catalog. En este caso todos los campos de esa estructura del Data Dictionary son mostrados en la ALV. Pasos a seguir Pasar la estructura al ALV Grid. 1. Referenciar la estructura con LIKE o INCLUDE STRUCTURE . Si se usa INCLUDE STRUCTURE se puede generar parte automticamente y otra manual aadiendo el resto de campos. 2. Pasar la estructura al mtodo set_table_for_first_display con el parmetro I_STRUCTURE_NAME. Si no se desea aadir ms campo a la estructura o si se desea ocultar campos especficos, no se necesitar pasar el field catalog.

ALV Grid Control

30-45

6.06 Generar el field catalog de forma manual


Objetivos Se puede dar el caso de que los datos a mostrar no aparecen ni parcialmente en las estructuras del Data Dictionary. Entonces se deben rellenar los campos del field catalog. Pasos a seguir El field catalog est definido en el Data Dictionary como una tabla del tipo LVC_T_FCAT. Cada fila del field catalog corresponde a un campo del Output table. Dependiendo de cuantos campos estn en el Data Dictionary se deben rellenar por lo menos los siguientes campos: Con referencia al Data Dictionary Campo FIELDNAME REF_TABNAME Descripcin Nombre del campo en la tabla interna. Nombre de la estructura del DDIC. si el nombre del campo de la tabla interna es distinto al del DDIC). Sin referencia al Data Dictionary Campo FIELDNAME INTTYPE OUTPUTLEN COLTEXT SELTEXT Descripcin Nombre del campo en la tabla interna. Tipo ABAP del campo de la tabla. Ancho de la columna Cabecera de la columna Descripcin de la columna para la seleccin de variantes.

REF_FIELDNAME Nombre del campo de la estructura del DDIC (solo es necesario

ALV Grid Control

31-45

6.07 Generar el field catalog Semi-Automticamente.


Objetivos Cuando se genera el field catalog semi-automticamente, se combina la informacin del Data Dictionary con informacin propia. Se puede: Modificar o Aadir descripciones de nuevos campos por ejemplo, el mtodo es bueno para, por ejemplo los siguientes casos: o Mostrar una tabla del Data Dictionary pero sin sacar todos los campos (usando el campo NO_OUT). o Mostrar filas adicionales que contienen iconos u otra informacin.

Pasos a seguir Para generar el field catalog de forma semi-automticamente: 1. Declarar una tabla interna de tipo LVC_T_FCAT. 2. Llamar al mdulo de funciones LVC_field catalog_MERGE y pasarle la estructura del Data Dictionary de la estructura del Output table y tabla interna que hace de field catalog. La funcin genera el field catalog. 3. Leer las filas que se deseen cambiar y adaptarlas a los requerimientos especficos. Si la Output table contiene ms campos que estn en el Data Dictionary se pueden aadir usando una fila nueva por cada campo en el field catalog.

ALV Grid Control

32-45

Para mostrar el Output table hay que llamar al mtodo set_table_for_first_display pasndole el field catalog.

6.08 Campos del field catalog


Unidades de moneda y medida Campo CFIELDNAME CURRENCY QFIELDNAME QUANTITY Descripcin Nombre del Campo de la moneda moneda Campo con el nombre de la unidad de medida de referencia. Unidad de medida

Formato de la columna Campo COL_POS DO_SUM EMPHASIZE HOTSPOT KEY NO_OUT NO_SUM OUTPUTLEN Texto Campo COLDDICTXT COLTEXT REPTEXT SCRTEXT_L SCRTEXT_M SCRTEXT_S SELDDICTXT SELTEXT TIPDDICTXT
ALV Grid Control

Descripcin Posicin de una columna Clculo del total Color de la columna Aparece una mano y hace que reaccione con un solo clic Columna clave No se muestra la columna. No se permite un sumatorio. Anchura de la columna en caracteres.

Descripcin Definicin del Data Dictionary. Etiqueta de la columna para las funciones. Texto de la cabecera correspondiente al Data Dictionary. Texto largo del elemento del Data Dictionary. Texto mediano del elemento del Data Dictionary. Texto corto del elemento del Data Dictionary. Texto definido en referencia al Data Dictionary. Etiqueta de la columna. Texto de referencia del Data Dictionary.
33-45

Parmetros para los campos sin referencia al Data Dictionary Campo DD_OUTLEN INTLEN INTTYPE Descripcin Anchura en caracteres del campo. Longitud interna en bytes Tipo ABAP (C,D,N,...)

Formato de la columna (Contenido) Campo DECIMALS_O DECMLFIELD EDIT_MASK EXPONENT NO_SIGN NO_ZERO ROUND ROUNDFIELD SYMBOL Otros campos Campo REPREP SP_GROUP TXT_FIELD Descripcin Valores para el criterio de seleccin. Grupo de teclas. Nombre de la tabla interna. Descripcin Nmero de decimales. Campo con especificacin de decimales. Mscara para la salida de datos (conversin) Exponente para la representacin con coma flotante Mostrar sin signo Suprimir los ceros. Redondear valores Campo con especificacin para el redondeo de valores Mostrar como un smbolo

Referencia de la Output table Campo FIELDNAME Descripcin Nombre del campo de la tabla interna.

ALV Grid Control

34-45

Referencia al Campo REF_FIELD REF_TABLE

Data Dictionary Descripcin Referencia al nombre del campo de la tabla interna Referencia al nombre de la tabla interna.

Referencia al Output table Campo FIELDNAME Descripcin Se le asigna el nombre de la Output table. Todas las opciones que se generan en esta fila se refieren a la columna de la Output table. Referencia del Data Dictionary Campo REF_FIELD Descripcin Se debe rellenar este campo si La Output table descrita en el campo catalog corresponde con un campo del Data D.Dictionary y el nombre en la Output table no es idntico al que aparece en el Data D.Dictionary. Si el campo se llama igual es suficiente para especificar la estructura del Data Dictionary la tabla en el campo. REF_TABLE Se debe rellenar este campo slo si el campo tiene una correspondencia directa en el Data Dictionary. La ALV puede usarlo para copiar los textos de la cabecera.

6.09 Mostrar valores con unidades de moneada/medida


Ciertos valores de salida necesitan referenciarse a unidades (como el kilmetro) o monedas (como la Libra). Para mostrar esos valores con el formato correcto para los decimales las comas y dems, se le debe asignar un campo de moneda o unidad. Hay tres formas de hacer esto con el field catalog: Asignar el campo que contiene el valor a otro campo que contenga la unidad/moneda Definir especficamente una moneda o unidad a una columna entera.

ALV Grid Control

35-45

Darle un formato manualmente una a una.

6.10 Referencia al campo unidad de medida/moneda


Se usan los campos CFIELDNAME y QFIELDNAME para indicar las unidades de moneda y cantidad (correlativamente). Si se hace un sumatorio de las columnas, los totales vendran separados por unidades/moneda. El field catalog adems dispone del campo TECH que, evita que las unidades se vean como una columna y con esto se evita que los usuarios interactuaran con ella.

6.11 Clculo de totales y mostrar valores


Se respeta la representacin especfica de los valores dependiendo de la unidad/moneda en cada celda. En los sumatorios se separa por unidades. El valor inicial es el 0 (Se puede evitar que aparezca un 0 en la columna usando el campo NO_ZERO del field catalog). Cuando se calculan los totales, la ALV usa el valor 0 y las unidades especficas (aunque se hayan ocultado los 0s).

6.12 Unidades par una columna entera


Para los casos en los que usan la misma unidad de cantidad o moneda para toda la columna, el field catalog contiene campos CURRENCY y QUANTITY. Se puede usar esos campos para determinar la unidad de los campos valor rellenndolos con valores como KM o USD. Requisitos Previos Para el campo valor se debe considerar los siguientes puntos: El campo es de tipo P. Es un campo de la Output table que tiene una unidad asociada.

ALV Grid Control

36-45

6.13 Campos relevantes en el field catalog


CFIELDNAME Nombre del Campo que contiene la Moneda (unidad). La ALV asocia el campo especificado en FIELDNAME al campo de moneda CFIELDNAME. CURRENCY Contiene el nombre de la moneda (DEM, USD). La ALV muestra QFIELDNAME los valores de la columna especificada en FIELDNAME. Nombre del campo que contiene la unidad de medida. ). La ALV asocia el campo especificado en FIELDNAME al campo de moneda QFIELDNAME. QUANTITY Contiene el nombre de la medida (KG). La ALV muestra los valores de la columna especificada en FIELDNAME.

6.14 Opciones de salida de las columnas


CHECKBOX El checkbox no puede ser modificado por el usuario. El parmetro COL_POS sel_mode de la layout permite al usuario seleccionar mltiples lneas de la ALV. Fija la posicin relativa de las columnas, slo es significativo si la posicin de del campo no es la misma que la que tiene en la field catalog. El usuario puede modificar posteriormente el orden de las mismas. DO_SUM Si se marca este toolbar. NO_OUT Si se marca este campo se puede ocultar una columna. Esta columna sigue estando disponible por el usuario y podra volverse a dejar visible. NO_SUM OUTPUTLEN Si se marca este campo se impide que se haga un sumatorio de una columna. Determina el ancho de un campo. Si el campo hace referencia al Data Dictironary, este campo se rellena automticamente usando el valor indicado por el dominio.
ALV Grid Control 37-45

campo, se calcula el total de la columna

(igual que si se hubiera presionado al botn de total de la

Si el campo no hace referencia al Data D.Dictionary se le debe especificar cul es el ancho de la columna. TECH Si se marca este campo el campo relevante no se muestra y no se puede ver de forma interactiva. El campo slo es conocido por field catalog.

6.15 Formato del contenido en las columnas


Campos como DECIMALS_O, EDIT_MASK, EXPONENT, NO_SIGN y ROUND son los equivalentes a lo que se usara con el comando WRITE (USING EDIT MASK, EXPONENT, NO-SIGN y ROUND). DECIMALS_O Slo Afecta en caso de que el campo CURRENCY tiene algn valor. El valor de este campo determina el nmero de dgitos que se puede mostrar despus de la coma. DECMFIELD EDIT_MASK EXPONENT LZERO Define los decimales que se pueden mostrar. Se utiliza para las conversiones de datos como las exit de CONVERSION_EXIT_ALPHA_OUTPUT. Determina un exponente fijo para un campo. El campo ha de ser de tipo F. Slo Afecta en caso de datos tipo NUMC. Por defecto no se muestran todos los 0s, Si se marca este campo los 0s son mostrados. NO_SIGN NO_ZERO ROUND Slo Afecta en caso de campos valor. Si se marca este campo los valores se muestran absolutos (sin signos). Si se marca este campo los 0s no se muestran y se muestra una celda vaca. Muestran valores de tipo P escalonados por potencias de 10. Para valores positivos ROUND mueve la coma a la izquierda, sino la mueve hacia la derecha.
ROUNDFIELD

Define la escala de salida. Se puede usar un campo adicional en la Output table para determinar cul es el campo que indica la escala para cada fila.

ALV Grid Control

38-45

SYMBOL

Si se marca este campo, en la columna se muestran los datos como smbolos. Es posible que estos smbolos no se representen correctamente en una impresin.

6.16 Textos
Se utilizan estos campos para determinar los textos que se usan en la ALV Grid: Como cabecera de columnas Como tool tip (texto informativo que aparece remarcado cuando se posiciona el ratn sobre un objeto) Como columna de seleccin. Slo Afecta en caso campos con referencia al Data Dictionary. Los valores 'L', 'M', 'S' o 'R' se usan para determinar que campo COLTEXT entre SCRTEXT_L, SCRTEXT_M, SCRTEXT_S o REPTEXT es usado para el texto de la cabecera. Si el campo no tiene referencia con el Data Dictionary el contenido de este campo es el que se muestra en la cabecera de la columna. REPTEXT Slo Afecta en caso de campos con referencia al Data Dictionary. Para estos campos, la ALV Grid copia la descripcin para la cabecera del elemento de datos en este campo. SCRTEXT_L Slo Afecta en caso de campos con referencia al Data Dictionary. Para estos campos, la ALV Grid copia la descripcin larga para la cabecera del elemento de datos en este campo. SCRTEXT_M Slo Afecta en caso de campos con referencia al Data Dictionary. Para estos campos, la ALV Grid copia la descripcin mediana para la cabecera del elemento de datos en este campo. SCRTEXT_S Slo Afecta en caso de campos con referencia al Data Dictionary. Para estos campos, la ALV Grid copia la descripcin corta para la cabecera del elemento de datos en este campo. SELDDICTXT Slo Afecta en caso de campos con referencia al Data Dictionary. Los valores 'L', 'M', 'S' o 'R' se usan para determinar que campo entre SCRTEXT_L, SCRTEXT_M,
ALV Grid Control 39-45

COLDDICTXT

SCRTEXT_S o REPTEXT es usado para el texto de la seleccin. SELTEXT Si el campo no tiene referencia con el Data Dictionary el contenido de este campo es el que se muestra en la seleccin de la columna. TIPDDICTXT Slo Afecta en caso de campos con referencia al Data Dictionary. Los valores 'L', 'M', 'S' o 'R' se usan para determinar que campo entre SCRTEXT_L, SCRTEXT_M, SCRTEXT_S o REPTEXT es usado para el tool tip.

6.17 Parmetros Dictionary.


DD_OUTLEN

de

campos

con

referencia

del

Data

Este campo indica el ancho que ocupar al ser mostrado en la pantalla. Slo afecta a los campos sin referencia del Data Dictionary o si se va ha modificar el campo por medio de una exit. No tiene porqu coincidir este campo con el OUTPUTLEN.

INTLEN

Especifica la longitud interna del campo. Slo afecta si no se tiene referencia al Data Dictionary o si se va ha modificar el campo por medio de una exit.

INTTYPE

Slo se rellena si no se tiene referencia del Data Dictionary.

ALV Grid Control

40-45

6.18 Otros campos


SP_GROUP Agrupa campos. En el dialog box para definir una variante se puede usar para limitar la lista u ocultar columnas de un grupo. TXT_FIELD Define la referencia a un campo que se use como descripcin del actual campo. Si un subtotal es calculado, la ALV Grid muestra la descripcin en el campo asignado. Ejemplo: La Output table tiene una columna para el cdigo del material y una columna para la descripcin de ese cdigo (por ejemplo toallas). Si se hace un clculo por subtotales y se ha rellenado el campo TXT_FIELD para los cdigos, en el total aparecer claridad. tambin la descripcin otorgando as mayor

ALV Grid Control

41-45

Leccin 7 El layout
7.1 Definicin
El layout es de tipo LVC_S_LAYO. Consta de campos para asignacin grfica de propiedades de la ALV como mostrar excepciones, calcular totales y deshabilitar ciertas opciones.

7.2 Estructura
Colores Campo ZEBRA Breve descripcin Genera el ALV con un aspecto cebrado (lneas de distintos colores alternados). Propiedades del Grid Control Campo GRID_TITLE NO_HEADERS NO_ROWMARK NO_TOOLBAR SEL_MODE SMALLTITLE Breve descripcin Texto de la title bar. Oculta las cabeceras Oculta las marcas de las filas Oculta la toolbar Modo de seleccin Tamao del ttulo

Interaccin Campo DETAILINIT DETAILTITL SGL_CLK_HD Breve descripcin Muestra valores iniciales en la pantalla de detalle. Title bar de la pantalla de detalle Un solo clic en la columna cabecera

ALV Grid Control

42-45

Excepciones Campo EXCP_CONDS EXCP_FNAME EXCP_LED EXCP_ROLLN Breve descripcin Herencia de exceptions Campo con el cdigo de la excepcin Excepcin como LEDs Data element para la documentacin de la excepcin

Opciones de totales Campo NUMC_TOTAL NO_TOTLINE TOTALS_BEF Integracin Generalmente, se rellenan los campos antes de la llamada al mtodo set_table_for_first_display. Los mtodos get_frontend_layout y set_frontend_layout permiten modificar los resultados en el layout despus de haberse lanzado el mtodo set_table_for_first_display. Breve descripcin Permite hacer totales para los campos NUMC No muestra la lnea de totales Mostrar totales antes de un registro.

7.3 Propiedades del Grid Control


Opciones generales para mostrar Campo SMALLTITLE Descripcin Si se marca este campo, el tamao del ttulo corresponde con el del resto de columnas. Valores: X, SPACE. Customizing Campo GRID_TITLE NO_HEADERS NO_HGRIDLN Descripcin del rango El ttulo que est entre el gris y la toolbar debe tener una longitud de 70 caracteres como mucho. Si se marca este campo, las columnas de la cabecera no se muestran. Valores: SPACE, 'X' Si se marca este campo, las columnas son mostradas sin lneas horizontales. Valores: SPACE, 'X'
ALV Grid Control 43-45

NO_MERGING NO_ROWMARK

Si se marca este campo, las celdas no son unidas cuando las columnas se ordenan. Valores: SPACE, 'X' Si se marca este campo, el botn de la izquierda que permite seleccionar una lnea desaparece (SEL_MODE = 'D') y (SEL_MODE = 'A'). Valores: SPACE, 'X'

NO_TOOLBAR NO_VGRIDLN SEL_MODE Excepciones Campo EXCP_CONDS

Si se marca este campo, no se muestra la toolbar. Valores: SPACE, 'X' Si se marca este campo, las columnas se muestran sin lnea vertical. Valores: SPACE, 'X' Fija el mtodo de seleccin. Valores: SPACE, 'A', 'B', 'C', 'D'

Descripcin Si se marca este campo, muestra una excepcin en la fila de (sub)totales. Los colores de las excepciones son, dependiendo de las mismas '1': rojo, '2': amarillo, '3' verde. Valores: SPACE, 'X'.

EXCP_FNAME EXCP_LED

Campo de la Output table para mostrar la excepcin. La excepcin no es mostrada como un semforo sino como un LED. Valores: SPACE, 'X'

Colores Campo ZEBRA Descripcin Si se marca este campo, el listado muestra, jugando con dos colores una lnea de cada color. Valores: SPACE, 'X' Opciones de totales Campo NO_TOTLINE NUMC_TOTAL TOTALS_BEF Descripcin Si se marca este campo, se pueden hacer subtotales pero no totales. Valores: SPACE, 'X' Si se marca este Si se marca este Valores: SPACE, 'X' campo, los campos de tipo NUMC pueden campo, la ALV muestra los totales en la usarse para hacer totales. Valores: SPACE, 'X' primera fila y los subtotales antes de cada nuevo valor.

ALV Grid Control

44-45

Interaction Control Campo DETAILINIT Descripcin Si se marca este SPACE, 'X' DETAILTITL Ttulo de la title bar para la pantalla de detalle. campo, la pantalla de detalle se habilita tambin para los campos con valores iniciales. Valores:

Estructura de impresin Contiene campos para la configuracin de la impresin Estructura Campo RESERVELNS Descripcin Nmero de lneas reservadas para el evento print_end_of_page Si no se indica nmero, el texto especificado como pie de pgina es sobrescrito por la lista. GRPCHGEDIT Habilita las opciones del usuario. Si se marca este campo el usuario en la preview puede modificar cosas como las ordenaciones, salto de pginas... de forma grfica. Valores: SPACE, 'X'. PRNTLSTINF Si se marca este campo, la informacin de la ordenacin subtotales y filtros definidos como elementos estadsticos son impresos. Valores: SPACE, 'X' Integracin La lista que se muestra en la ALV Grid es impresa en la ABAP List Viewer. El modo de print preview deja que el usuario interactu y dichos cambios slo afectan a la impresin. Se puede deshabilitar con el campo PRINT).

ALV Grid Control

45-45