🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP El ALV jerárquico y el agrupamiento

ABAP El ALV jerárquico y el agrupamiento

ABAP El ALV jerárquico y el agrupamiento

1. Agrupamiento en un ALV

Podemos agrupar los registros que mostramos en un ALV. Para ello, declaramos una tabla del tipo SLIS_T_SORTINFO_ALV y una estructura del tipo SLIS_SORTINFO_ALV.

Luego antes de llamar la función ALV, vamos a cargar la tabla TI_SORT con los registros en el orden en el que deseamos agrupar.

* Tabla y estructura para ordenamiento
ti_sort TYPE slis_t_sortinfo_alv,
st_sort TYPE slis_sortinfo_alv ,

Luego antes de llamar a la función del ALV, vamos a cargar la tabla TI_SORT con los registros en el orden en el que deseamos agrupar.

CLEAR st_sort.
st_sort-spos = 1. " Orden del agrupamiento
st_sort-fieldname = 'ESTADO_CIVIL'. " Nombre del campo que agrupa
APPEND st_sort TO ti_sort.

Ahora debemos completar el parámetro exporting IT_SORT con nuestra tabla interna TI_SORT.
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.

2. ALV Jerarquico

Como Digamos anteriormente, los ALV Jerárquico se utilizan cuando tenemos que mostrar un reporte, datos de cabecera y de posición. En la declaración de las tablas internas de cabecera y posiciones, debe haber como mínimo un campo en común.

En el caso que mostramos a continuación, el campo común es el CARRID, que es la compañía aérea.

* Tabla interna de la cabecera
DATA: BEGIN OF ti_cabecera OCCURS 0,
carrid LIKE scarr-carrid,
carrname LIKE scarr-carrname,
END OF ti_cabecera.

* Tabla interna de posiciones
DATA: BEGIN OF ti_detalle OCCURS 0,
carrid LIKE sflight-carrid,
connid LIKE sflight-connid,
fldate LIKE sflight-fldate,
price LIKE sflight-price,
currency LIKE sflight-currency,
planetype LIKE sflight-planetype,
END OF ti_detalle.

Debemos declarar una estructura de tipo SLIS_KEYINFO_ALV, que será ST_KEYINFO y contendrá el campo clave que unirá las dos tablas internas

* Campo Clave
st_keyinfo TYPE slis_keyinfo_alv.

Ahora vamos a cargar las tablas internas de cabecera y detalle con un juego de datos para la compañía aérea ARG. En el programa de ejemplo de la lección, también cargamos un juego de datos para la compañía aérea LAN.

* CABECERA 1
ti_cabecera-carrid = 'ARG'.
ti_cabecera-carrname = 'Aerolineas Argentinas'.
APPEND ti_cabecera.

* DETALLE 1
ti_detalle-carrid = 'ARG'.
ti_detalle-connid = '1010'.
ti_detalle-fldate = '20091111'.
ti_detalle-price = '380'.
ti_detalle-currency = 'USD'.
ti_detalle-planetype = 'A310'.
APPEND ti_detalle.

* DETALLE 2
ti_detalle-carrid = 'ARG'.
ti_detalle-connid = '1020'.
ti_detalle-fldate = '20091011'.
ti_detalle-price = '300'.
ti_detalle-currency = 'USD'.
ti_detalle-planetype = 'A330'.
APPEND ti_detalle.

* CABECERA 2
ti_cabecera-carrid = 'LAN'.
ti_cabecera-carrname = 'Lan Chile'.
APPEND ti_cabecera.

* DETALLE 1
ti_detalle-carrid = 'LAN'.
ti_detalle-connid = '1030'.
ti_detalle-fldate = '20091005'.
ti_detalle-price = '500'.
ti_detalle-currency = 'USD'.
ti_detalle-planetype = 'A330'.
APPEND ti_detalle.

* DETALLE 2
ti_detalle-carrid = 'LAN'.
ti_detalle-connid = '1040'.
ti_detalle-fldate = '20091007'.
ti_detalle-price = '600'.
ti_detalle-currency = 'USD'.
ti_detalle-planetype = 'A330'.
APPEND ti_detalle.

Luego creamos el catálogo del ALV para ambas tablas internas, sumando los campos de ambas tablas en la tabla del catálogo TI_CATALOGO.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name = sy-repid
i_internal_tabname = 'TI_CABECERA'
i_client_never_display = 'X'
i_inclname = sy-repid
CHANGING
ct_fieldcat = ti_catalogo[]
EXCEPTIONS
inconsistent_interface = 1
program_error = 2
OTHERS = 3.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name = sy-repid
i_internal_tabname = 'TI_DETALLE'
i_client_never_display = 'X'
i_inclname = sy-repid
CHANGING
ct_fieldcat = ti_catalogo[]
EXCEPTIONS
inconsistent_interface = 1
program_error = 2
OTHERS = 3.

Ahora tenemos que completar la estructura ST_KEYINFO. En los campos HEADER01 e ITEM01 va a ir campo de la tabla de cabecera que hace de vínculo con la tabla detalles.

CLEAR st_keyinfo.
st_keyinfo-header01 = 'CARRID'.
st_keyinfo-item01 = 'CARRID'.

Por último ejecutamos la función 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_detalle
EXCEPTIONS
program_error = 1
OTHERS = 2.

IF sy-subrc NE 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.

En el ALV jerárquico no es posible utilizar el evento TOP_OF PAGE por lo que no será posible generar una cabecera con título y logo como en el ALV GRILLA, tampoco es posible exportarlo a Excel debido al formato que contiene de cabecera y detalle.


 

 

 


Sobre el autor

Publicación académica de Edward Henry Rosario Piezal, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Master

Edward Henry Rosario Piezal

Profesión: Ingeniero en Sistema - Republica Dominicana - Legajo: FM99R

✒️Autor de: 68 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Certificación Académica de Edward Rosario

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "El ALV jerárquico y el agrupamiento" de la mano de nuestros alumnos.

SAP Senior

ALV Jerárquico y Agrupamiento. SLIS_T_SORTINFO_ALV: Tabla estándar de SAP que se utiliza para crear tablas internas para agrupamiento de reportes ALV. SLIS_SORTINFO_ALV: Estructura estándar de SAP que se utiliza para crear estructuras para agrupamiento de reportes ALV. IT_SORT: Parámetro exporting de la funciones standars que se utilizan para la creación de reportes ALV, que permite el agrupamiento de los campos de la tabla de salida del reporte. ALV Jerárquico. SLIS_KEYINFO_ALV:Estructura estándar de SAP que se utiliza para los reporteros ALV jerárquicos. REUSE_ALV_HIERSEQ_LIST_DISPLAY: Función estándar de SAP que se utiliza para la creación de reportes...

Acceder a esta publicación

Creado y Compartido por: Rafael Razo

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

Resumen Lección: ALV Jerárquico y Agrupamiento Agrupamiento de un ALV Podemos agrupar los registros que mostramos en un ALV. Para ello, declaramos una tabla del tipo SLIS_T_SORTINFO_ALV y una estructura del tipo SLIS_SORTINFO_ALV. ALV Jerárquico Como dijimos anteriormente, los ALV Jerárquicos se utilizan cuando tenemos que mostrar en un reporte, datos de cabecera y de posición. En las declaraciones de las tablas internas de cabecera y posiciones, debe haber como mínimo un campo en común.

Acceder a esta publicación

Creado y Compartido por: Alexander José Tovar Rodríguez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Lección: ALV jerárquico y agrupamiento 1. AGRUPAMIENTO EN UN ALV Los registros que se agrupan en un ALV es cuando se declara una tabla del tipo slis_t_sortinfo_alv y una estructura slis_sortinfo_alv Posteriormente se carga la tabla ti_sort con los registros en el orden en el que se desea agrupar 2. ALV JERÁRQUICO Los ALV jerárquicos son usados cuando se tiene que mostrar en un reporte, datos de cabecera y de posición. En las declaraciones de las tablas internas de cabecera y posición debe haber al menos un campo en común. TIPS: En un reporte ALV de tipo jerárquico no podrá utilizarse el evento top of page, por lo cual no se podrá generar una cabecera con títulos y...

Acceder a esta publicación

Creado y Compartido por: Javier Mirabal

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

ALV JERÁRQUICO Y AGRUPAMIENTO. SLIS_T_SORTINFO_ALV: Tabla estándar de SAP que se utiliza para crear tablas internas para el agrupamiento de reportes ALV. IT_SORT: Parámetro exporting de la función estándar que se utiliza para la creación de reportes ALV, que permiten el agrupamiento de los campos de la tabla de salida del reporte. SLIS_KEYINFO_ALV; Estructura estándar de SAP que se utiliza para los reportes ALV jerárquicos. En los reportes de este tipo no es posible generar cabeceras con títulos y títulos, tampoco es posible utilizar el botón de exportación a excel debido a la diferencia de formatos entre los datos de cabecera y el detalle.

Acceder a esta publicación

Creado y Compartido por: Juan Santamaria Borja

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


El ALV (List Viewer) jerárquico es una variante del ALV tradicional que permite mostrar datos en una estructura jerárquica, similar a un árbol, en lugar de una simple lista plana. Esto es especialmente útil cuando tienes datos que están relacionados en una jerarquía, como categorías y subcategorías, cuentas y subcuentas, etc. En SAP ABAP, puedes crear reportes ALV jerárquicos para presentar datos de manera más estructurada y fácil de entender. Características del ALV Jerárquico: Estructura de Árbol: El ALV jerárquico presenta los datos en una estructura de árbol, donde los elementos principales pueden tener elementos...

Acceder a esta publicación

Creado y Compartido por: Darling Geraldino

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

-ALV JERÁRQUICO Y AGRUPAMIENTO. Podemos agrupar los registros de un ALV declarando una tabla SLIS_T_SORTINFO_ALV y una estructura SLIS_SORTINFO_ALV Antes de llamar a la función ALV se carga la TI con los registros e indicando el órden st_sort-spos = 1. "Órden del agrupamiento st_sort-fieldname = 'ESTADO_CIVIL' Completar el parámetro con tabla interna exporting IT_SORT = TI_SORT Al ejecutar el reporte se verá la agrupación por Estado Civil -ALV JERÁRQUICO Se utilizan cuando en un reporte hay datos de cabecera y muchos de posiciones, debe existir al menos uno en común. Se declara una estructura del sig tipo: st_keyinfo TYPE SLIS_KEYINFO_ALV. Se crea el catálogo ALV para...

Acceder a esta publicación

Creado y Compartido por: Armando Mayo Marquez / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

1- Agrupamiento en una ALV Podemos agrupar los registros que mostramos en un ALV declarando una tabla del tipo SLIST_T_SORTINFO_ALV y una estrutura del tipo SLIS_SORTINFO_ALV Completar el parámetro exporting IT_SORT con nuestra tabla interna TI_SORT 2- ALV jerárquico Audio Tips 1: en un ALV jerárquico no es posible utilizar el evento TOP SPAGE por lo que no será posible establecer una cabecera con títulos y logos tal como lo vemos hecho en los ALV de tipo Grilla. Otra limitación que presentan los ALV jerárquicos es que en ellos no se puede utilizar el boton de exportación de datos a excel debido a las diferencias que existen engre el formato de la cabecera y el formato de cada registro....

Acceder a esta publicación

Creado y Compartido por: Claudio Marcelo Dario Haikel

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Unidad 5 - Leccion 8 - ALV Jerárquico y Agrupamiento En los ALV Jerárquicos, No es posible utilizar el evento top of page, no se puede generar una cabecera con titulos y logos con el alv de grilla. No se puede utilizar el boton de exportar datos a excel.

Acceder a esta publicación

Creado y Compartido por: Matias Ciutat

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

ALV Jerárquico y Agrupamiento 1. Agrupamiento en un ALV - Declarar tabla del tipo SLIS_T_SORTINFO_ALV (Tabla de SAP usada para crear tablas internas para agrupamiento de reportes ALV). - Declarar estructura de tipo SLIS_SORTINFO_ALV (Estructura estándar SAP para crear estructuras para agrupamiento de reportes ALV) - Antes de llamar a función del ALV, se carga la tabla con registros en el orden en el que se requiere agrupar. - Completar parámetro IT_SORT de función con tabla interna creada para agrupamiento. 2. ALV Jerárquico - ALV jerárquicos se usan cuando se quiere mostrar en reporte datos de cabecera y de posición - En declaraciones de tablas internas de cabecera y posición...

Acceder a esta publicación

Creado y Compartido por: Darwin Enrique Terraza Berdugo / Disponibilidad Laboral: PartTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Leccion 8/9: ALV JERÁRQUICO Y AGRUPAMIENTO 1. Agrupamiento de un ALV Para agrupar registros que se muestran en un ALV se declara una tabla del tipo SLIS_T_SORTINFO_ALV y una estructura de tipo SLIS_SORTINFO_ALV Luego cargar la tabla TI_SORT con los registros en el orden que los deseamos agrupar. Debemos completar el parametro exportinf IT_SORT con la tabla interna TI_SORT. Finalmente, se ejecuta el reporte. 2. ALV JERÁRQUICO. Recalcar que estos ALV se utilizan cuando se tiene que mostrar en un reporte datos de cabecera y de posicion. Debemos declarar una estructura del tipo SLIS_KEYINFO_ALV, que será ST_KEYINFO y contendra el campo claque que une a las dos tablas internas. ahora vamos a cargar las tablas...

Acceder a esta publicación

Creado y Compartido por: Ruben Santiago Cuenca Balanza / Disponibilidad Laboral: FullTime + Carta Presentación

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!