PROMO JULIO en CVOSOFT United States Of America: 💎Calidad, 🔥Bonificaciones, 🥶Precios Congelados y MÁS!

 X 

✒️ABAP Los cortes de control utilizando tablas internas

ABAP Los cortes de control utilizando tablas internas

ABAP Los cortes de control utilizando tablas internas

1 | Qué es un corte de control?

Es una forma de estructurar el contenido que se escribirá a la salida que consiste de agrupar los contenidos en secciones y formatear la salida usando eventos para el inicio y el final de cada sección. Lo usamos para sumarizar datos y mostrar totales.

2 | El paso a paso para implementar un corte de control

Para implementar un corte de control (conocidos en inglés como "control break") tenemos que tener en mente 4 cosas:

  • El orden de los registros
  • Las variables que usaremos para sumar los totales
  • La estructura auxiliar
  • Los eventos "AT NEW" y "AT END OF.

Y para explicar todo esto usaremos el siguiente ejemplo:

Tenemos a la empresa Argentina Omega que tiene varios locales en lugares diferentes. Esta empresa se plantea hacer un resumen en el que se muestra el ingreso generado por compras de clientes específicos, los ingresos totales de los distritos dentro de una región y los ingresos de cada región.

Con esto, ya tenemos la jerarquía con la que podemos generar nuestras secciones. Ya que tenemos regiones (que tienen un nombre), las cuales contienen distritos (que también tienen un nombre); distritos que contienen clientes (las cuales usan una ID numérica) y los clientes tienen un importe (un número entero). Habiendo notado esto, ya podemos diseñar la salida del programa.

El orden de los registros

Para que los eventos que vamos a crear funcionen bien tenemos que asegurarnos ordenar nuestra tabla interna, esto se logrará con la siguiente sentencia:

SORT ti_clientes BY region distrito nrocliente

Esto ordenará las tablas priorizando el ordenado alfabético de las regiones por su nombre; de forma secundaria ordenará por distrito y de forma terciaria ordenará por el número de cliente.

Esto ordenará de la tabla de forma de que todo quede enlistado en grupos en todas las columnas que sea posible.

Las variables que usaremos para sumar los totales

Vamos a iterar a través de cada registro de la tabla usando un LOOP AT, por lo tanto necesitamos declara variables independientes a todo esto para acumular los importes para generar los totales. Los clientes solo pueden tener un importe así que no hace falta crearles un total, así que crearemos v_total_distrito y v_total_region.

La estructura auxiliar

Lo intuitivo sería que luego de usar el SORT en la tabla interna, trabajemos con la misma. Sin embargo, por una particularidad de ABAP hacer esto puede causar problemas, por lo tanto, lo que hacemos es crear una segunda estructura de la tabla interna, iteramos con la primera estructura y al comienzo de cada iteración de LOOP AT usamos el CLEAR con la estructura secundaria y luego le cargamos los contenidos del registro en el que se está iterando la tabla interna. Es decir, de la tabla interna "ti_clientes" generaríamos las estructuras "wa_clientes" y "wa_clientes_aux" y justo después del LOOP AT correríamos las sentencias:

CLEAR wa_clientes_aux.
wa_clientes_aux = wa_clientes.

2.1 | Los eventos "AT NEW" y "AT END OF"

Estas son las sentencias más importantes de todo este procedimiento. Son eventos cuya condición de ejecución es la similitud entre el registro actualmente seleccionado por el LOOP AT y los registros que le rodea.

Más en específico, AT NEW compara el registro actual con el registro anterior y verifica si hay una igualdad entre los dos campos de una columna a especificar. Caso negativo se ejecutan las instrucciones dentro del evento.

Mientras tanto, el AT END OF hace casi lo mismo, la diferencia es que este compara el registro actual con el registro que tiene adelante. Si hay una diferencia entre ambos campos se ejecutan las instrucciones dentro del evento.

Ambas usan la siguiente sintaxis:

foo bar.
(INSTRUCCIONES)
ENDAT.

Donde foo es AT END o AT NEW y bar es la columna en la que se hará la comparación.

Estos eventos son importantes porque nos permiten detectar cuando acabamos cada sección del resumen, permitiéndonos imprimir los totales y las cabeceras en el momento adecuado independientemente de la cantidad de registros que hayan en la tabla interna o de los contenidos de los campos ya establecidos.


 

 

 


Sobre el autor

Publicación académica de Mauricio Javier Solis Ibañez, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP SemiSenior

Mauricio Javier Solis Ibañez

Profesión: Técnico Electrónico - Argentina - Legajo: CF20Z

✒️Autor de: 28 Publicaciones Académicas

🎓Egresado del módulo:

Disponibilidad Laboral: FullTime

Certificación Académica de Mauricio Solis

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Los cortes de control utilizando tablas internas" de la mano de nuestros alumnos.

SAP Master


LECCION 2. UNIDAD 3. CORTES DE CONTROL UTILIZANDO TABLAS INTERNAS. Abap cortes de control utilizando tablas internas: cuando se trabaja realizando reportes, se puede presentar la necesidad de ordenar la tabla interna de salida del reporte, de una determinada forma en donde se agrupen los datos a mostrar en la pantalla. Para realizar cortes de control se utilizan las sentencias que se relacionan a continuación: AT NEW: esta sentencia comparara el actual valor del campo con el valor anterior, en caso de ser distintos entonces se procesara el código dentro del AT NEW. AT END: esta sentencia comparara el actual valor del campo con el valor siguiente, es decir el que se encuentra en la proxima vuelta de la tabla interna. En caso de...

Acceder a esta publicación

Creado y Compartido por: Jose Dario Angel Vanegas

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

SAP Expert


En ABAP, los cortes de control utilizando tablas internas son una técnica útil para organizar y resumir datos de manera jerárquica o agrupada. Los cortes de control permiten realizar cálculos o análisis específicos en grupos de datos y mostrar los resultados de manera estructurada. Esta técnica es comúnmente utilizada para generar informes o listados que presentan datos de manera organizada y resumida.Final del formulario Los cortes de control utilizando tablas internas en ABAP son una técnica poderosa para organizar y resumir datos de manera eficiente. Esta técnica permite generar informes y análisis más legibles y comprensibles, especialmente cuando se manejan...

Acceder a esta publicación

Creado y Compartido por: Darling Geraldino

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

SAP Master

CORTES DE CONTROL UTILIZANDO TABLAS INTERNAS Estructura un reporte, de modo de poder sumarizar datos y mostrarlos por distintos campos del reporte, proceso. Cargar las tablas internas con distintos registros Ordenar las tablas Recorrer las tablas para visualizar el listado Para realizar el corte de control por cliente utilizamos las siguientes sentencias: AT NEW <campo>. Compara el actual numero del cliente con el anterior, si son distintos el codigo se procesa dentro del AT NEW AT END <campo>. Compara el actual numero del cliente con el siguiente, si son distintos se procesa el codigo dentro del AT END NOTA: Para sumarizar campos dentro del LOOP a la tabla interna del reporte utilizamos la sentencia ADD o...

Acceder a esta publicación

Creado y Compartido por: Ixhel Magai Lopez Valencia / Disponibilidad Laboral: PartTime + Carta Presentación

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

SAP Senior

1. CORTES DE CONTROL UTILIZANDO TABLAS INTERNAS EN REPORTES Un corte de control es una forma de estructurar un reporte de salida de modo que se puede sumar y mostrar datos totales por los distintos campos del reporte Condición Escencial: Primero deben ordenarse los campos por los cuales se hara el corte de control. Es indispensable, crear una estructura auxiliar para almacenar los datos del registro de la tabla interna del reporte ya que abap completa con (*) los campos que se encuentren a la derecha de los campos donde se hizo el corte y se perderá la información almacenada At new y At end

Acceder a esta publicación

Creado y Compartido por: Javier Mirabal

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

SAP Expert


Cortes de control en tablas internas Son agrupaciones en el procesamiento de las tablas internas, donde es necesario definir el orden para la generación de la salida esperada, para ello podemos utilizar las siguientes sintaxis: AT FIRST/ENDAT - Que realice el primer corte AT LAST/ENDAT - Que realice el corte al final del corte AT NEW/ENDAT - Que realice el corte cada vez que inicie un valor (valor que necesitemos diferenciar) AT END/ENDAT - Que realice el corte al final de un valor (valor que necesitemos diferenciar) al realizar el recorrido se debe asignar a una area de trabajo temporal, para evitar que se reemplace la información con asteriscos o bien utilizando FIELD-SYMBOLS.

Acceder a esta publicación

Creado y Compartido por: Marvin Raul Lopez Morales / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Senior

Lección 2/9: Cortes de Control utilizando tablas internas La técnica de corte de control es utilizada cuando se presenta la necesidad de ordenar la tabla interna de salida del reporte, de una determinada manera donde se agrupen los datos a mostrar en la pantalla. Una condición esencial que presentan los cortes de control es que la tabla de salida del reporte debe ordenarse por los campos por los cuales se va a realizar el corte. Es indispensable utilizar una estructura auxiliar para almacenar los datos del registro de la tabla interna del reporte ya que ABAP completará con asteriscos los campos que se encuentren a la derecha del campo por el cual realizamos el corte y se perderá la información almacenada...

Acceder a esta publicación

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

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

SAP Senior

CORTES DE CONTROL UTILIZANDO TABLAS INTERNAS Corte de control: es una forma de estructurar un reporte de salida de modo de poder sumarisar datos y mostrar totales por distintos campos del reporte. Una condicion esencial que presentan los cortes de control es que la tabla de salida del reporte debe ordenarse por los campos por los cuales se va a realizar el corte de control. Es indispensable utilizar una estructura auxiliar para almacenar los datos del registro de la tabla interna del reporte, ya que ABAP completara con asteriscos los campos que se encuentren a la derecha a la derecha del campo por el cual realizamos el corte y se perdera la informacion almacenada en ello. Principalmente vamos a utilizar las sentencias ADD NEW y ADD END. La...

Acceder a esta publicación

Creado y Compartido por: Miguel Ochoa

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

SAP SemiSenior

Resumen Lección: Cortes de control utilizando tablas internas Un corte de control es una forma de estructurar un reporte de salida de modo de poder sumarizar datos y mostrar totales por distintos campos del reporte, una condición esencial que presentan los cortes de control es que la tabla de salida del reporte debe ordenarse por los campos por los cuales se va a realizar el cortes de control. Es indispensable utilizar una estructura auxiliar para almacenar los datos del registro de la tabla interna del reporte, ya que, ABAP completara con astericos los campos que se encuentren a la derecha del campos por el cual realizamos el corte y se perderá la información almacenada en ellos. Principalmente vamos a utilizar las...

Acceder a esta publicación

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

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

SAP Senior

Cortes de control utilizando tablas internas. Los cortes de control es una forma de estructurar un reporte de salida en el que acumular datos de distintos campos. Condición. La tabla de salida debe ordenarse por los campos que se va a realizar el corte de control. Se debe utilizar una estructura auxiliar para almacenar los datos del registro de la tabla interna ya que ABAP completará con asteriscos los campos que se encuentren a la derecha por el cual se esta realizando el corte de control. Sentencias usadas en los cortes de control. AT NEW. esta compara el valor actual del campo con el anterior, si son distintos se procesa el código que se encuentra dentro del AT NEW. AT END. esta compara el valor actual del campo con...

Acceder a esta publicación

Creado y Compartido por: Carlos Rodriguez Escudero / Disponibilidad Laboral: FullTime

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

SAP SemiSenior

Unidad 3. Lección 2: Cortes de Control utilizando tablas internas. Uno corte de control es una forma de estructura, un reporte de salida que sumariza datos y mostrar totales por distintos campos del reporte. Una condición especial que presentan los cortes de control es que la tabla de salida del reporte debe ordenarse por los campos por los cuales se va a realizar el corte de control. Es indispensable utilizar una estructura auxiliar para almacenar los datos del registro de la tabla interna del reporte, ya que ABAP completará con asteriscos los campos que se encuentren a la derecha del campo por el cual realizamos el corte de control y se perderá la información almacenada en ello. Principalmente se emplean...

Acceder a esta publicación

Creado y Compartido por: Kelly Rocio Nino Ramirez

 


 

👌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!