✒️ABAP La declaración de datos
ABAP La declaración de datos
Tipos de datos
- Tipos completos: los tipos de datos tienen una longitud fija establecida por el sistema estándar
- Tipos incompletos: la longitud del dato no viene fijada por el sistema estándar y será el programador el que especifique la longitud del dato en el momento de la declaración de la variable.
Tipos de datos completos estandar
- 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 minutos y SS 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 - se utiliza para los números decimales de punto flotante, tiene una longitud fija de 8 bytes.
- DECFLOAT34 - también se utiliza para los números decimales de punto flotante, el cual tiene una longitud fija de 16 bytes.
- STRING - se utiliza para las cadenas de caracteres, el cual tiene una longitud dinámica.
- XSTRING - se utiliza para las secuencias de bytes de longitud dinámica (cadena hexadecimal).
Tipos de datos incompletos estándar
C – se utiliza para las cadenas de caracteres, para el que se debe especificar la longitud fija.
N – se utiliza para las cadenas de caracteres numéricas, para el que se debe especificar la longitud fija.
X – se utiliza para la secuencia de bytes (cadena hexadecimal), para el que se debe especificar la longitud fija.
P – se utiliza para los números empaquetados, para el que se debe especificar la longitud fija. En la definición de un número empaquetado, es posible que también se especifique la cantidad de puntos decimales.
En base a los 12 tipos de datos estándar completos e incompletos, que también se llaman tipos primitivos,
se pueden crear tipos de datos complejos, estructuras bidimensionales u objetos del diccionario de datos.
- Declarar una variable fecha: DATA: v_fecha TYPE d.
- Declarar una variable fecha con valor : DATA: v_fecha TYPE d VALUE '20240102'.
- Declarar una variable hora con valor : DATA: v_fecha TYPE t VALUE '14:00:00'.
- Declarar una variable de tipo entero con valor: DATA: v_quantity TYPE i VALUE '120'.
- Declarar una variable string con valor : DATA: v_text TYPE string VALUE 'ABAP es el lenguaje de SAP'.
- Declarar una variable c o caracter asignando longitud(de lo contrario tiene una longitud = 1) y un valor : DATA: v_lastname(40) TYPE c VALUE 'John Doe'.
- Declarar una variable de tipo N con su valor: DATA: v_tel(13) TYPE n VALUE '5492613253565'.
- Declarar una variable de tipo p y asignar un valor: DATA : v_pi TYPE p DECIMALS 11 VALUE '3.14159265359'.
Se puede asignar a una variable un tipo de datos ya existente en el diccionario de datos de SAP.
DATA: v_nro_cliente TYPE kunnr. "N° de cliente"
También se puede declarar variables que sean igual tipo de datos que otras variables ya creadas en el sistema, utilizando "LIKE"
DATA: v_carrid LIKE sflight_carrid "Denominacion breve de la compania aerea"
Las estructuras de datos
Son un tipo de dato compuesto que está formado por un conjunto de campos relacionados, cuyos componentes pueden ser campos, otras estructuras o tablas.
Existen cuatro formas de declarar una estructura en un programa ABAP:
- La primera es utilizando la palabra clave DATA. declaramos una estructura de vuelos que tendrá los mismos campos que tiene la tabla base de datos de vuelos SFLIGHT
DATA: wa_vuelos TYPE sflight.
- En la segunda vamos a declarar una estructura de vuelos solo con ciertos campos
DATA: BEGIN OF wa_vuelos2,
carrid TYPE s_carr_id "Denominacion de la compáñia aerea"
connid TYPE s_conn_id,
END OF wa_vuelos2.
- También podemos declarar la estructura utilizando los tipos de datos completos o incompletos estándar de SAP
DATA : BEGIN OF wa_vuelos3,
carrid(3) TYPE c,
connid(4) TYPE n,
END OF wa_vuelos3.
- 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
TYPES: BEGIN OF ty_vuelos,
carrid TYPE s_carr_id,
connid TYPE s_conn_id,
END OF ty_vuelos.
DATA: wa_vuelos4 TYPE ty_vuelos.
Las constantes
Es una variable que se declara dentro de un programa cuyo valor permanecerá constante durante la ejecución del programa.
- Declarar una constante de tipo de datos incompleto: CONSTANTS: c_x(1) TYPE c VALUE 'X'.
- Declarar una variable de tipo de datos completo CONSTANTS: c_nombre TYPE string VALUE 'Ezequiel'.
Los include de datos y de subrutinas
Include
Es un tipo de programa u objeto ABAP que se utiliza para modularizar los programas de manera que estos
resulten más legibles y mantenibles.
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.
Las variables del sistema
Estas variables se encuentran en la tabla base de datos SYST y contienen información que va desde la hora del sistema, si se ejecutó correctamente una sentencia ABAP o una actualización a una tabla base de datos. Su contenido no puede ser modificado en los programas, sino que cambia simplemente con la ejecución de los mismos.
Variables del sistema más comúnmente utilizadas:
- SY-SUBRC: Se la utiliza para chequear posteriormente a la ejecución de un 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.
- SY-UZEIT: contiene la hora del sistema en el formato HHMMSS.
-
 
 
 
Sobre el autor
Publicación académica de Octavio Ivan Pasciucco, en su ámbito de estudios para la Carrera Consultor ABAP.
Octavio Ivan Pasciucco
Profesión: Consultor Sap Btp - Argentina - Legajo: FX47X
✒️Autor de: 23 Publicaciones Académicas
🎓Cursando Actualmente: Consultor ABAP Nivel Avanzado
🎓Egresado del módulo:
Presentación:
Consultor sap btp
Certificación Académica de Octavio Pasciucco