Sesión 04: ALV Object Model

21
Expositores: Expositores: Luis Pilco Zevallos. Luis Pilco Zevallos. Mauro D. Rojas Chavez. Mauro D. Rojas Chavez. ALV OBJECT MODEL ALV OBJECT MODEL

description

SAP Inside Track Lima 2009 ALV Object Model por Mauro Rojas y Luis Pilco

Transcript of Sesión 04: ALV Object Model

Page 1: Sesión 04: ALV Object Model

Expositores:Expositores:

Luis Pilco Zevallos.Luis Pilco Zevallos.Mauro D. Rojas Chavez.Mauro D. Rojas Chavez.

ALV OBJECT MODELALV OBJECT MODEL

Page 2: Sesión 04: ALV Object Model

¿ Qué es un ALV ? • ABAP List Viewer es una

herramienta genérica que puede ser utilizada para mostrar datos en formato tabular.

Al utilizar ALV es posible:

• Exportar a Excel.

• Adaptar la salida de acuerdo con determinados criterios, por ejemplo: ordenación, filtro, cálculo de totales, etc.

Page 3: Sesión 04: ALV Object Model

¿ Qué diferentes tipos de ALV existen ?

Utilizan diferentes módulo de funciones:• ALV List : REUSE_ALV_LIST_DISPLAY • ALV Jerarquico : REUSE_ALV_HIERSEQ_LIST_DISPLAY • ALV Grafico : REUSE_ALV_GRID_DISPLAY

Utilizan diferentes métodos de la clase:• ALV Grid : CL_GUI_ALV_GRID • ALV Tree : CL_GUI_ALV_TREE

Page 4: Sesión 04: ALV Object Model

Información mínima necesaria para su construcción:

1. Incluir en el programa el tipo SLIS que tiene definidas todas las estructuras de los parámetros de entrada y de salida de esta función.

2. Definir correctamente el catálogo de campos.3. Definir en el programa todas las subrutinas que implementarán

el comportamiento de éste ante la ejecución de determinados eventos o ante la interacción del usuario.

4. Pasarle los datos que deben ser mostrados en el report a la función utilizando tablas internas.

Page 5: Sesión 04: ALV Object Model

Antes del uso de ALV Object Modelwrite

write

write

write

write

write

write

write

Grid fullscreen

REUSE_ALV_GRID_DISPLAY

ALV Grid

CL_GUI_ALV_GRID

Hier-sequ.list

REUSE_ALV_HIERSEQULIST_DISPLAY

ALV Tree

CL_GUI_ALV_TREE

ALV List

REUSE_ALV_LIST_DISPLAY

DeveloperDeveloper

Page 6: Sesión 04: ALV Object Model

Estructura antes del nuevo modelo

DataDataa b cSelect * From

abc a b c

<name>

Field catalog o Structure

Call fucntion 'Reuse_alv_grid_display'

Tabla interna con datosTabla interna con datos Descripción de dataDescripción de data

a b cVisualizar datosVisualizar datos

Llamar SAP list viewerLlamar SAP list viewer

Page 7: Sesión 04: ALV Object Model

ABSTRACCION ENCAPSULAMIENTO

MODULARIDAD JERARQUIAM O D E L O

D E O B J E T O S

G.Booch

Page 8: Sesión 04: ALV Object Model

Que es ALV OBJECT MODEL ?

El nuevo Modelo de Objetos de Lista (SAP List

Viewer) es un objeto orientado a la encapsulación de la herramienta ALV que ya existe.

Page 9: Sesión 04: ALV Object Model

Hay tres clases principales basado en el Modelo de Objetos para generar un ALV:

ALV Object Model - classesALV Object Model - classes

cl_salv_tablecl_salv_tableTwo Dimensional tableTwo Dimensional table

cl_salv_hierseq_tablecl_salv_hierseq_tableHierarchical – Sequential listHierarchical – Sequential list

cl_salv_treecl_salv_treeTree StructureTree Structure

Page 10: Sesión 04: ALV Object Model

Información mínima necesaria para su construcción:

En cada una de las tres principales clases de ALV, usted debe llamar por lo menos los siguientes métodos para obtener su deseada ALV salida:

• Instanciar la clase principal ALV.• Definir la tabla interna que proporciona la estructura y el contenido de la

ALV.• Definir qué tipo de pantalla que desea utilizar para la salida de ALV.

Page 11: Sesión 04: ALV Object Model

El nuevo modelo de objetos SAP

write

write

write

write

write

write

write

write

write

cl_salv_table

cl_salv_hiersequ_table

cl_salv_tree

ALV List

REUSE_ALV_LIST_DISPLAY

Grid fullscreen

REUSE_ALV_GRID_DISPLAY

ALV Grid

CL_GUI_ALV_GRID

Hiersequ.list

REUSE_ALV_HIERSEQULIST_DISPLAY

ALV Tree

CL_GUI_ALV_TREE

DeveloperDeveloper

Page 12: Sesión 04: ALV Object Model

Estructura del nuevo modelo

DataDataa b cSelect * From

Call Method cl_salv_table=>factory……

ALV instance->display……

Crea el ALV llamando al método factory y entrega la tabla interna con datos.

Regresa la referencia del ALV.

Muestra el grid.

a b c

Page 13: Sesión 04: ALV Object Model

Diagrama UML salv_table

Page 14: Sesión 04: ALV Object Model

Diagrama UML salv_hierseq_table

Page 15: Sesión 04: ALV Object Model

Diagrama UML salv_tree

Page 16: Sesión 04: ALV Object Model

ABAP LIST VIEWER

Page 17: Sesión 04: ALV Object Model
Page 18: Sesión 04: ALV Object Model

SAP LIST VIEWER

Page 19: Sesión 04: ALV Object Model
Page 20: Sesión 04: ALV Object Model

DiferenciasSAP List Viewer:

• No se puede dar color de una línea o una celda, pero se puede de color una columna.

• No se puede tener un ALV editable usando el Modelo de objetos.

• No necesitamos saber “como lo hace” sino debemos conocer que herramientas (clases, métodos) podemos utilizar con un fin especifico. (Encapsulamiento)

ABAP List Viewer

• Es posible con las librerías adecuadas.

• Es posible la edición del ALV en ejecución.

• Su elaboración es parecido a una copia de cómo el SAP crea un ALV.

Page 21: Sesión 04: ALV Object Model