
1. El formato de salida de los datos
ABAP ofrece una serie de sentencias especialmente diseñadas para generar reportes de manera sencilla.
La más popular de estas sentencias es WRITE.
La sentencia WRITE tiene un formato determinado que es el siguiente:
WRITE :/ <offset> (< long>)' < datos a visualizar >'.
:/ Salto de línea, es decir, que antes de imprimir en pantalla los datos se producirá un salto de línea.
<offset> representa la columna donde comienza la impresión.
<long> representa la longitud de la impresión
<datos a visualizar> Datos a visualizar.
Existen muchos comandos adicionales a WRITE que se utilizan para producir una salida por pantalla determinada. Algunos de ellos son:
LEFT-JUSTIFIED: Salida justificada a izquierda.
CENTERED: Salida centrada.
RIGHT-JUSTIFIED: Salida justificada a derecha.
NO-ZERO: Si el campo contiene ceros estos serán cambiados por blancos.
NO-GAPS: El blanco después del campo que se desea imprimir es omitido.
NO-SIGN: El signo no aparece en la salida.
DECIMALS n: n define el número de dígitos decimales.
ROUND n: Redondea el campo de salida para los tipos p
DD/MM/YYYY: Fecha con separadores
El ancho del espacio de impresión es de 70 caracteres.
Existen dos sentencias que son muy útiles para formatear la salida de los datos por pantalla: SKIP y ULINE.
SKIP: se utiliza para dejar una línea en blanco entre dos impresiones que se realiza en pantalla.
ULINE: se utiliza para imprimir en pantalla una línea horizontal.
Existen eventos dentro de un programa ABAP destinados a darle formato a la salida de un reporte ya sea por pantalla o por impresora.
TOP-OF-PAGE: se utiliza para cambiar la cabecera de una página. Este evento ocurre tan pronto como el sistema empieza a procesar una nueva página.
END-OF-SELECTION: se utiliza para realizar la impresión por pantalla de los datos, de modo de separar la impresión del procesamiento de los datos. Este evento se ejecuta luego del evento START-OF-SELECTION.
Podemos modificar la cantidad de líneas y columnas que se visualizan en la pantalla para ello se va a utilizar la sentencia NO STANDARD PAGE HEADING a la derecha de la sentencia REPORT.