✒️ABAP La declaración de datos
ABAP La declaración de datos
1- TIPO DE DATOS: los mas usados son: c (texto), f (punto flotante), i (Entero), n(texto numérico), p(número empaquetado), x(Hexadecimal), d(fecha YYYMMDD), t (hora HHMMSS); también existe los tipo streame, longitud variable y XSTRING que se utiliza como un STRING hexadecimal para cadenas de caracteres muy grandes.
Para declarar una variable utilizaremos la palabra clave data y tape tal como vemos en el cuadro, con el agregado de value inicializamos con un valor determinado a una variable.
Nota: cuando declaramos variables de tipo caracter Tipe C debemos especificar la longitud de la cadena, de lo contrario el sistema asumirá que su longitud es un caracter. Tambien podemos declarar variables que sean de igual tipo que otras ya creadas en el sistema utilizando la sentencia LIKE, en el siguiente caso creamos la variable V_VARRID que es del mismo tipo de la tabla de campo CARRID de la tabla SFLIGTH de vuelos de SAP.
DATA: v_carrid LIKE sfligth-carrid. "Denominación breve de la compañía aérea
Tablas Utiles: La tabla base de datos SFLIGTH es una tabla estándar del sistema SAP que cotene información sobre vuelos y que generalmente es utilizada para realizar programas de prueba o demo en el sistema. Otra tabla base de datos similar, muy comunmente utilizada con el mismo propósito es la tabla SPFLI.
Audio Tips 1: cuando mencionamos que un tipo de dato por ejemplo las variables enteras que se declaran utilizando la palabra reservada i tienen una longitud de 4 nos estamos refiriendo a la cantidad de bytes que ocupa y no a la cantidad de digitos máximos que puede almacenar tomando el caso de los enteros una variable de este tipo puede almacenar números que van desde los -32332322 a los mas 32332322.
IMPORTANTE: Cuando declaramos variables de tipo caracter TYPE c debemos especificar la longitud de la cadena. De lo contrario el sistema asumirá que su longitud es 1 caracter.
2- Estructuras de Datos: es un conjunto de campos relacionados cuyo componentes pueden ser simples campos, otras estructuras, o inclusive tablas. Existen tres formas de definir una estructura la primera utilizando la palabra clave DATA. Ejemplo de mismos campos que la tabla de vuelos SFLIGTH
*Estructura de vuelos
DATA: wa_vuelos TYPE sflight.
En la 2° forma también utilizamos la palabra clave DATA pero vamos a crear una estructura de uelos solo con ciertos campos (Imagen 2.2 - Declaración de una estructura con ciertos campos particulares)
La tercera forma es utilizando TIPOS, que son formatos de estructuras que pueden ser utilizados por cualquier otra estructura sin necesidad de reescribir el código. Para esto se utiliza la palabra reservada TYPES. (Imagen 3.3)
3- Constantes
Nuevo Concepto: Es una variable que se declara dentro de un programa cuyo valor permanecerá tal como lo indica su nombre constante a lo largo del programa. Para su declaración se utiliza la palabra reservada CONSTANTS (ejemplo)
*Constantes
CONSTANTS: c_ca (2) TYPE c VALUE 'CA'.
c_cb (2) TYPE c VALUE 'CB'
IDEAS: la utilización de constantes ayuda a que el mantenimiento de las aplicaciones ABAP sea mas sencillo.
4- Include de Datos
Nuevo Concepto: INCLUDE: es un objeto ABAP que se utiliza para modularizar los programas de manera que estos resulten mas legibles y mantenibles.
Existen dos tipos de INCLUDES: INCLUDE DE DATOS (se utiliza para agrupar declaraciones de datos), INCLUDE de subrutinas (se utiliza para agrupar declaraciones de subrutinas, concepto que veremos en detalle mas adelante). Los include de datos se utiliza la palabra clave INCLUDE seguida del nombre del INCLUDE.
Al hacer doble clic sobre z_prueba_abap_datos veremos la siguiente ventana de diálogo donde se nos consulta si deseamos crear el objeto, a la cual responderemos que si.Luego veremos la ventana de diálogo que nos muestra el objeto que será creado. Aquí simplemente presionamos el botón Grabar. Finalmente habremos creado el Include Z_PRUEBA_ABAP_DATOS
Sabias que: la utilización de INCLUDES es considerada una buena práctica de programación.
5- Variables del Sistema: a parte de las variables que define el programador, existen otras que han sido definidas por el sistema y que son de gran utilidad dentro de los programas ABAP. Estas se encuentran en la tabla base de datos SYST y contienen información que se va desde la hora del sistema, a saber si se ejecuto correctamente una sentencia ABAP o una actualización a una base de datos. SU contenido no puede ser modificado en los programas sino que cambia simplemente con la ejecución de los mismos.
Tablas Utiles: Tabla SYST. La tabla base de datos SYST almacena a las variables del sistema de un programa ABAP. Las mas comunmente utilizadas son
SY-SUBRC código de retorno poterior a la ejecución de una sentencia ABAP. Si el resultado de la ejecución fué exitoso, entonces es 0, sino es distinto a cero.
SY-DATUM contiene la fecha de sistema.
SY-UZEIT: contiene la hora del sistema
Audio TIps 2: como vimos anteriormente la variable del sistema SY-UZEIT nos proporciona la hora actual del sistema al ejecutar un programa, si realizamos un debugg a un programa veremos que siempresel contenido es será el mismo a lo largo de todo el debugg, si se nos solicita realizar un programa y se nos pide que imprimamos en pantalla el tiempo que tarda el programa en ejecutarlo. Para resolver el requerimiento, sabemos que la hora de inicio de la ejecucion del programa la podemos obtener de la variable del sistema SY-UZEIT y para obtener la hora de fin del programa es decir justo antes de que finalice el mismo debemos actualizar el contenido de la variable del sistema SY-UZEIT. Esto lo hacemos ejecutando la sentencia GET-TIME la cual actualizará la variable de la hora actual del sistema.
SY-TABIX contiene el índice de una tabla interna
EJERCICIO:
Programa principal del ejemplo:
*&---------------------------------------------------------------------* *& Report Z_PRUEBA_ABAP_2_3 *& *&---------------------------------------------------------------------* *& *& *&---------------------------------------------------------------------* REPORT z_prueba_abap_2_3. * Include de datos INCLUDE z_prueba_abap_datos. 
 
 
Sobre el autor
Publicación académica de Claudio Marcelo Dario Haikel, en su ámbito de estudios para la Carrera Consultor ABAP.
Claudio Marcelo Dario Haikel
Profesión: Funcional Sap - Argentina - Legajo: HM94J
✒️Autor de: 58 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Claudio Haikel