✒️ABAP El ALV jerárquico y el agrupamiento
ABAP El ALV jerárquico y el agrupamiento
AGRUPAMIENTO EN UN ALV
Se declara una tabla del tipo SLIST_T_SORTINFO_ALV y una esctructura del tipo SLIS_SORTINFO_ALV. ej.
ti_sort type SLIST_T_SORTINFO_ALV,
st_sort type SLIS_SORTINFO_ALV,
Luego se carga la tabla ti_sort con los registros en el orden en el que deseamos agrupar. ej.
clear st_sort.
st_sort-spos = 1.
st_sort-fieldname = 'ESTADO_CIVIL'.
append st_sort to ti_sort.
Luego completar el parámetro exporting it_sort con nuestra tabla interna ti_sort. ej.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = v_repid
i_callback_pf_status_set = 'PF_STATUS'
i_callback_user_command = 'USER_COMMAND'
it_fieldcat = ti_catalogo[]
i_callback_top_of_page = 'TOP_OF_PAGE'
is_layout = st_layout
it_sort = ti_sort
TABLES
t_outtab = ti_usuarios.
Y ejecutamos.
ALV JERARQUICO
Se utilizan cuando se muestran en un reporte datos de cabecera y de posición. En las declaraciones de las tablas internas de cabecera y de posiciones debe existir como mínimo un campo en común.
Se debe declarar una estructura del tipo SLIS_KEYINFO_ALV que será ST_KEYINFO. ej.
st_keyinfo type slis_keyinfo_alv.
Luego se carga las tablas internas de cabecera y detalle con un juego de datos para la compañía aérea.
Luego se crea el catálogo del alv para ambas tablas internas, sumando los campos de amba tablas en la tabla del catálogo ti_catalogo.
Ahora se completa la estructura ST_KEYINFO. En los campos HEAER01 e IEM01 va a ir el campo de la tabla de cabecera que hace de vínculo con la tabla de detalles. ej
clear st_keyinfo.
st_keyinfo-header01 = 'CARRID'.
st_keyinfo-item01 = 'CARRID'.
Por último ejecutamos la funcion REUSE_ALV_HIERSEQ_LIST_DISPLAY.
CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
EXPORTING
i_callback_program = sy-repid
i_callback_pf_status_set = 'PF_STATUS'
it_fieldcat = ti_catalogo[]
i_tabname_header = 'TI_CABECERA'
i_tabname_item = 'TI_DETALLE'
is_keyinfo = st_keyinfo
TABLES
t_outtab_header = ti_cabecera
t_outtab_item = ti_etalle
EXCEPTIONS
program_error = 1
OTHERS = 2.
En un alv jerárquicos no se puede utilizar el evento top of page. Tampoco se puede utilizar el botón de exportación a excel bido a las diferencias entre el formato de la cabecera y el formato de cada registro.
 
 
 
Sobre el autor
Publicación académica de Alberth Julian Bolanos Bravo, en su ámbito de estudios para la Carrera Consultor ABAP.
Alberth Julian Bolanos Bravo
Profesión: Analista de Sistemas Web - Colombia - Legajo: FC65L
✒️Autor de: 46 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Alberth Bolanos