✒️ABAP La declaración de datos
ABAP La declaración de datos
La declaración de datos
1. Los tipos de datos ABAP
Vamos a necesitar crear tipos de datos, ya que los programas utilizan variables, constantes y otros objetos para almacenar los datos durante su ejecución. EI lenguaje de programación ABAP divide los tipos de datos en dos grupos:
- Tipos completos
- Tipos incompletos
La diferencia entre los dos grupos se debe a la longitud del dato. Los completos tienen una longitud fija establecida por el sistema estándar y los incompletos la longitud del dato no viene fijada por el sistema estándar y será el programador el que tiene la obligación de especificar la longitud del dato en el momento de la declaración de la variable.
Dentro de los tipos de datos completos estándar tenemos a los siguientes 8 tipos:
- D - Es el tipo de datos para fechas: el cual tiene el formato AAAAMMDD: con una longitud fija de 8 dígitos, donde AAAA representa el año, MM representa el mes y DD representa el día.
- T - Es el tipo de datos para la hora, el cual tiene el formato HHMMSS con una longitud fija de 6 dígitos, donde HH representa la hora, MM representa los minutos y SS representa los segundos.
- I - Es el tipo de datos para los números enteros, el cual tiene una longitud fija de 4 bytes.
- F - Es el tipo de datos para los números de punto flotante o decimales, el cual tiene una longitud fija de 8 bytes.
- DECFLOAT16 - Es el tipo de datos que se utiliza para los números decimales de punto flotantev el cual tiene una longitud fija de 8 bytes.
- DECFLOAT34 - Es el tipo de datos que se utiliza para los números decimales de punto flotante, el cual tiene una longitud fija de 16 bytes.
- STRING - Es el tipo de datos que se utiliza para las cadenas de caracteres, el cual tiene una longitud dinámica.
- XSTRING - Es el tipo de datos que se utiliza para las secuencias de bytes de longitud dinámica (cadena hexadecimal).
Dentro de los tipos de datos incompletos estándar tenemos a los siguientes 4 tipos:
- C - Es el tipo de datos que se utiliza para las cadenas de caracteres, para el que se debe especificar la longitud fija.
- N - Es el tipo de datos que se utiliza para las cadenas de caracteres numéricas, para el que se debe especificar la longitud fija.
- X - Es el tipo de datos que se utiliza para la secuencia de bytes (cadena hexadecimal), para el que se debe especificar la longitud fija.
Para declarar una variable en un programa ABAP vamos a utilizar dos palabras reservadas sumamente importantes dentro del mundo ABAP, tal como son DATA y TYPE. En caso de que deseemos asignar un valor a la variable, deberíamos utilizar el agregado VALUE.
Nota: Es importante saber que cuando declaramos variables de tipo c o caracter TYPE c debemos especificar la longitud de la cadena de caracteres. De lo contrario, el sistema asumirá que la longitud es de 1 caracter.
Por último, también podemos declarar variables que sean de igual tipo de datos que otras variables ya creadas en el sistema. Para esto utilizamos la sentencia LIKE.
Tabla SFLIGHT: La tabla base de datos SFLIGHT es una tabla estándar del sistema SAP que contiene 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 comúnmente utilizada con el mismo propósito, es la tabla SPFLI.
2. Las estructuras de datos
Estructura: Es un tipo de dato compuesto que está formado por un conjunto de campos relacionados, cuyos componentes pueden ser simples campos, otras estructuras o inclusive tablas.
Existen cuatro formas de declarar una estructura en un programa ABAP:
- La primera es utilizando la palabra clave DATA_ En el siguiente ejemplo declaramos una estructura de vuelos que tendrá los mismos campos que tiene la tabla base de datos de vuelos SFLIGHT.
- En la segunda forma también utilizamos la palabra clave DATA pero vamos a declarar una estructura de vuelos solo con ciertos campos. Para declarar cada uno de los campos de la estructura utilizamos tipos de datos ya existentes en SAP.
- También podemos declarar la estructura tal como hicimos en el ejemplo anterior, pero utilizando los tipos de datos completos o incompletos estándar de SAP.
- Finalmente la cuarta forma de declarar una estructura 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.
3. Las constantes
Constante: Es una variable que se declara dentro de un programa y cuyo valor permanecerá tal como lo indica su nombre constante a lo largo de la ejecución del programa.
Para su declaración se utiliza la palabra reservada CONSTANTS, debemos especificar el tipo de datos de la constante y también el valor que tendrá la constante a lo largo de la ejecución del programa.
Nota: La utilización de constantes ayuda a que el mantenimiento de los programas ABAP sea más sencillo, por lo tanto utilizar constantes en lugar de textos entre comillas simples es considerada una buena práctica de programación.
4. Los include de datos y las subrutinas
Existe un tipo de programa ABAP que nos ayuda mucho en esta tarea de hacer que los programas sean fáciles de comprender y por lo tanto fáciles de modificar o mantener. Estamos hablando de los Includes.
Existen dos tipos de INCLUDES. Ellos son.
- INCLUDE de datos: se utiliza para agrupar las declaraciones de datos.
- INCLUDE de subrutinas: se utiliza para agrupar las declaraciones de subrutinas, concepto que veremos en detalle más adelante.
5. Las variables del sistema
Tabla SYST: La tabla base de datos SYST almacena a las variables del sistema de un programa ABAP.
Analicemos a continuación las variables del sistema más comúnmente utilizadas:
SY-SUBRC: Es sin dudas la más importante de todas las variables del sistema. Se la utiliza para chequear posteriormente a la ejecución de una sentencia ABAP, si el resultado de la ejecución fue exitoso o no.
SY-DATUM: Esta variable del sistema contiene la fecha del sistema en el formato AAAAMMDD. Es una variable sumamente útil en nuestro trabajo del día a día como programadores ABAP.
DSY-UZEIT: Esta variable del sistema contiene la hora del sistema en el formato HHMMSS.
SY-TABIX: Esta variable del sistema contiene el índice de una tabla interna. Más adelante veremos en detalle todo lo relativo a tablas internas.
 
 
 
Sobre el autor
Publicación académica de Manel Gangolells Isanta, en su ámbito de estudios para la Carrera Consultor ABAP.
Manel Gangolells Isanta
Profesión: Técnico de Sistemas Informáticos - España - Legajo: MN13W
✒️Autor de: 33 Publicaciones Académicas
🎓Cursando Actualmente: Consultor ABAP Nivel Inicial
Certificación Académica de Manel Gangolells