✒️ABAP POO Introducción al ALV Grid Control
ABAP POO Introducción al ALV Grid Control
bueno, aproveché e hice como ejercicio lo que indica la lección, pero con una tabla Z propia.
También agregué el tema de borrar algunos botones de la barra de herramienta y dejé comentado por si deseo ocultar toda la barra de herramientas.
Resultó muy sencillo hacerlo siguiendo el paso a paso.
SPAN {
font-family: "Courier New";
color: #000000;
background: #FFFFFF;
}
.L0S31 {
font-style: italic;
color: #808080;
}
.L0S32 {
color: #3399FF;
}
.L0S33 {
color: #4DA619;
}
.L0S52 {
color: #0000FF;
}
.L0S55 {
color: #800080;
}
.L0S70 {
color: #808080;
}
*&---------------------------------------------------------------------*
*& Report ZPRUEBA_ALV
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRUEBA_ALV.
Data:
it_Data Type STANDARD TABLE OF ZTFI001,
wa_Data Type ZTFI001,
ok_code Type sy-ucomm.
Data: " PAra la grilla
it_Botones Type UI_FUNCTIONS, " botones a excluir
wa_botones Type UI_FUNC,
lv_layout Type LVC_S_LAYO, " Layout
oGrilla Type REF TO CL_GUI_ALV_GRID,
oContenedor Type REF TO CL_GUI_CUSTOM_CONTAINER.
START-OF-SELECTION.
Perform Seleccion_datos.
END-OF-SELECTION.
CALL SCREEN 0900.
*&---------------------------------------------------------------------*
*& Module CREAR_OBJ_0900 OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE CREAR_OBJ_0900 OUTPUT.
if oContenedor is initial.
" Creo el contenedor y lo vinculo a la Dynpro
Create Object oContenedor
EXPORTING
Container_name = 'CONTENEDOR'. " Relaciona con contenedor de Dynpro.
" Creo grilla y la vinculo al Contenedor
Create Object oGrilla
EXPORTING
i_parent = oContenedor. " Relaciona con objeto Contenedor
" Indico algunos botones a excluir - Se ven en constantes (atributos) en CL_GUI_ALV_GRID
Clear it_botones.
wa_botones = cl_gui_alv_grid=>MC_FC_SUM. " suma
append wa_botones to it_botones.
wa_botones = cl_gui_alv_grid=>MC_FC_SUBTOT. " subtotales
append wa_botones to it_botones.
wa_botones = cl_gui_alv_grid=>MC_FC_FILTER. " filtros
append wa_botones to it_botones.
" Si se quiere ocultar la barra de herramientas.
"lv_layout-no_toolbar = 'X'.
" Asigno tabla interna a Grilla.
CALL METHOD oGrilla->set_table_for_first_display
EXPORTING
i_structure_name = 'ZTFI001' " nombre de la tabla, para tomar datos de la estrucutura
IT_TOOLBAR_EXCLUDING = it_botones
IS_LAYOUT = lv_layout
CHANGING
it_outtab = it_data " Tabla interna con los datos
EXCEPTIONS
OTHERS = 4. " NRo. de Error.
Else. " Ya existen los objetos
" Muestro grilla
Call METHOD oGrilla->refresh_table_display
EXPORTING
i_soft_refresh = 'X'
EXCEPTIONS
finished = 1
OTHERS = 2.
Endif. " oContenedor
ENDMODULE. " CREAR_OBJ_0900 OUTPUT
*&---------------------------------------------------------------------*
*& Form SELECCION_DATOS
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM SELECCION_DATOS .
Select *
into table it_Data
from ZTFI001.
ENDFORM. " SELECCION_DATOS
*&---------------------------------------------------------------------*
*& Module SALIR_0900 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE SALIR_0900 INPUT.
oGrilla->free( ).
oContenedor->free( ).
LEAVE PROGRAM.
ENDMODULE. " SALIR_0900 INPUT
 
 
 
Agradecimiento:
Ha agradecido este aporte: Juan Carro
Sobre el autor
Publicación académica de Alfredo C?sar, en su ámbito de estudios para el Máster ABAP POO.
Alfredo C?sar
Profesión: Analista de Sistemas - Argentina - Legajo: RQ48L
✒️Autor de: 33 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Alfredo C?sar