✒️ABAP La declaración de datos
ABAP La declaración de datos
TIPO DE DATOS ABAP
- C: TEXTO-> 1-32000
- F: PUNTO FLOTANTE-> 8 bytes
- I: ENTERO-> 4 bytes
- N: TEXTO NUMÉRICO->1-32000
- P: NUMERO EMPAQUETADO->1-16
- X: HEXADECIMAL->1-29870
- D: FECHA YYYYMMDD->8
- T: HORA HHMMSS->6
- STRING: cadenas de longitud variable
- XSTRING: string hexadecimal para cadenas de caracteres muy grandes.
Se declaran utilizando DATA y TYPE. ej. DATA: kt(8) TYPE c VALUE 'hola', kj TYPE i.
Cuando se declaran variables de tipo C se debe especificar la longitud, de lo contrario lo tomará por defecto longitud 1.
Con LIKE podemos crear variables que posean la misma longitud y tipo que otra variable de la tabla base de datos. ej. DATA: v_carrid LIKE sflight-carrid. Aqui la variable v_carrid será igual al campo carrid de la tabla base de datos sflight.
Con LIKE también podemos crear estructuras y tablas internas iguales a otras estructuras o tablas internas respectivamente, creadas ya en el sistema.
ESTRUCTURAS DE DATOS
Estructura: conjunto de campos relacionados cuyos componentes pueden ser campos, otras estructuras o inclusive tablas.
DATA: BEGIN OF e_aerolinea, carrid LIKE scarr-carrid, "Código de aerolinea carname TYPE s_carrname, "Nombre de aerolínea url(255) TYPE c, END OF e_aerolinea.
El ejemplo declara una estructura de tres campos (carrid, carname y url) juntos. Para declarar una estructura utilizamos la sentencia data, luego abrimos la estructura con la cláusula begin of nombre_de_la_estructura. Una vez declarados los campos cerramos la sentencia con la claúsula end of nombre_de_la_estructura.
Se pueden definir de las siguientes formas:
- DATA: wa_vuelos TYPE sflight. -> se crea una estructura de vuelos que tiene los mismos campos que la tabla de vuelos sflight.
- DATA: BEGIN OF wa_vuelos2,
carrid TYPE s_carr_id,
connid TYPE s_conn_id,
fldate TYPE D,
END OF wa_vuelos2. ->aquí se crea una estructura de vuelo con ciertos campos. - TYPES: BEGIN OF st_vuelos,
carrid TYPE s_carr_id,
connid TYPE s_conn_id,
fldate TYPE D,
END OF st_vuelos. DATA: wa_vuelos3 TYPE st_vuelos. -> pueden ser utilizados por cualquier otra estructura.
CONSTANTS: c_vuelo(5) TYPE c VALUE 'Vuelo', c_fecha TYPE d VALUE '20121231'.
En este caso vemos que la declaración de constantes y variables es igual, la diferencia radica en la cláusula value. Así dotamos de contenido a nuestra constante durante toda la ejecución del programa. No intentéis asignar nunca un valor a una constante durante la ejecución del programa (hacedlo sólo en la declaración de la constante) ya que ABAP no lo va a aceptar.
INCLUDE DE DATOS
Objeto ABAP utilizado para modularizar los programas para que sean mas legibles y mantenibles.
Existen dos tipos:
- INCLUDE de datos: agrupa declaraciones de datos
- INCLUDE de subrutinas: agrupa declaraciones de subrutinas.
Ejemplo creación de un include:
REPORT z_prueba_abap.
INCLUDE z_prueba_abap_datos.
Al hacer doble click sobre z_prueba_abap_datos se muestra una ventana donde se nos pregunta si deseamos crear el objeto, damos que si y luego nos muestra en otra ventana el objeto que se creará, damos grabar.
VARIABLES DEL SISTEMA
Variables ya definidas dentro del sistema que se encuentran en la tabla base de datos SYST, son de gran utilidad y su contenido no puede ser modificado en los programas, cambia con la ejecución e los mismos.
Campo sy-subrc
Guarda siempre el valor de la fecha actual en formato AAAAMMDD (año mes día). Junto a ella también se puede mencionar la variable sy-uzeit que contiene el valor de la hora actual. Es útil en la programación de reports cuando queremos mostrar claramente fecha y hora de ejecución de un informe.
Incorpora el número de registro de una tabla interna en el cual nos encontramos cuando estamos en un bucle loop...endloop. Es útil si, por ejemplo, sólo queremos mostrar un determinado número de registros de una tabla interna.
 
 
 
Sobre el autor
Publicación académica de Alberth Julian Bolanos Bravo, en su ámbito de estudios para la Carrera Consultor ABAP.
Alberth Julian Bolanos Bravo
Profesión: Analista de Sistemas Web - Colombia - Legajo: FC65L
✒️Autor de: 46 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Alberth Bolanos