PDF de programación - ALV Grid Control

Imágen de pdf ALV Grid Control

ALV Grid Controlgráfica de visualizaciones

Publicado el 21 de Noviembre del 2018
932 visualizaciones desde el 21 de Noviembre del 2018
375,5 KB
45 paginas
Creado hace 14a (21/09/2009)
ALV Grid Control



1-45





L e c c i ó n 1

I n t r o d u c c i ó n

El ALV Grid control (ABAP List Viewer) es una herramienta flexible para mostrar

listas. La herramienta tiene operaciones comunes de las listas como funciones

genéricas 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 estándar.



La ALV consta de una barra de herramientas (toolbar), un título y la tabla de salida.

Si el programador así lo desea, se puede ocultar el título y toda o parte de la



toolbar.


1.1 Implementación


Como todos los controles “wrap”, la ALV ofrece métodos globales de clase que

pueden ser usados desde los programas.



ALV Grid Control



2-45



1.2 Integración


Los controles son componentes software que pueden ser instanciados localmente.

Para poder comunicarse con ese componente todos los controles wrap usan

métodos control Framework. En este contexto, las ALV son un caso especial.

La ALV usa controles del menú de SAP para integrarlas en sus funciones estándar.

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 jerárquicos con un aspecto visual.
Usar funciones típicas como ordenar o filtrar automáticamente si añadir ni

una línea de código más.

Adaptar las funciones predefinidas y sus acciones
Programar acciones habituales por el usuario como el presionar botón

derecho o doble clic en una línea de forma masiva o individual


1.4 Limitaciones


La ALV Grid control no puede mostrar bloques o listas jerárquicas. Las listas han

de ser mostradas en líneas individuales. Permite poder ordenarlas al gusto del

usuario e imprimirlas con ese formato.



ALV Grid Control



3-45





L e c c i ó n 2

I n s t a n c i a d e A L V G r i d C o n t r o l



2.1 Definición


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 información en forma de lista en la

pantalla.



Se puede llamar a métodos de esa instancia para redefinir propiedades del control.


2.2 Jerarquía de la clase.



2.3 Integración



La Clase cl_gui_alv_grid contiene también métodos de control específicos y

métodos para el control de la Framework.



ALV Grid Control



4-45





Básicos

L e c c i ó n 3

T r a b a j a r c o n l a A L V G r i d C o n t r o l

El siguiente gráfico muestra los pasos requeridos para mostrar una lista en una

ALV:



Como mínimo se tiene que proveer de los siguientes dos tipos de información para

mostrar los datos.

Una tabla interna con los datos a mostrar, llamada Output table
Una descripción 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 válida

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 información 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 también 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 métodos de backend a frontend.
Eventos escuchadores (Handling) y lanzadores (trigger) para controlar el

fronted.

Destrucción del control (control del tiempo de vida).

Para controles básicos (como el control del editor de texto, el visor HTML o el

controlador del visor de imágenes), se puede aplicar el mismo modelo de

programación 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 básicos de

wrap. La ALV Grid control difiere de los controles básicos 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

aplicación se debe usar el parámetro I_APPL_EVENTS y el método

disptacher CL_GUI_CFW=>DISPATCH en el módulo PAI.



Primeros pasos

Esta sección describe los fáciles 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 descripción 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. Además,
declarar una tabla interna del tipo que se necesite para mostrar la

información.

DATA: grf_grid



TYPE REF TO cl_gui_alv_grid,

grf_ccontainer

TYPE REF TO cl_gui_custom_container

gt_sflight



TYPE TABLE OF sflight.

2. Crear una pantalla estándar y marcar un área para al contenedor (

).

Asignar a esa área el nombre del container.



3. En el módulo PBO de la misma screen, se debe instanciar el container
control de la ALV Grid control. Usar el parámetro 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 método cl_gui_cfw=>flush para pasar los métodos

llamados en el frontend, pero desde que el Control Framework manda un flush

automático 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 MÉTODO 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 información de los campos de la tabla SFLIGHT y los

muestra con sus características.


3.5 Programación de aplicaciones específicas.


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 aplicación, añadirlas a la botonera
estándar o redefinir las funciones estándar para sus necesidades u ocultar

aquellas que no se deseen.

Se pueden programar funciones Drag & Drop. La ALV Grid permite por
medio de la programación 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 Field catalog
o Layout
o 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 parámetros que se usan dentro del método

set_table_for_first_display son: I_SAVE, IS_VARIANT y I_DEFAULT



Modo

Resultado

Valores

Cambiar la
variante

La ALV Grid muestra el icono de la variante
(

) pero no el menú en la toolbar.

Leer
variantes

La ALV Grid muestra el icono de variantes en
la toolbar. El menú contiene sólo funciones
para seleccionar y cambiar la variante.

Leer y
grabar
variantes

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 = SPACE.
I_SAVE = SPACE.
IS_VARIANT = <estructura
variante>
I_SAVE = SPACE. (o
IS_VARIANT es SPACE y
I_SAVE No SPACE)

IS_VARIANT = <estructura
variante>
I_SAVE = <'X', 'U' o 'A'>


3.7 Grabar variantes.


Objetivo

La función estándar cambia las variantes que pueden ser accesibles para los

usuarios pinchando en los botones de la toolbar. Esos iconos permiten al usuario

ajustar
  • Links de descarga
http://lwp-l.com/pdf14280

Comentarios de: ALV Grid Control (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad