
Tipos de datos
Para declarar variables se utiliza la palabra clave DATA y TYPE.
Ejemplo:
DATA: v_texto(4) TYPE c VALUE ‘Hola’
Para las estructuras:
BEGIN OF wa_usuario,
Nombre (15) TYPE c VALUE ‘Ricardo’,
Tel(8) TYPE n VALUE ‘78947362’,
END OF wa_usuario
Cuando asignamos el TYPE c para cadenas, se debe especificar el largo, ya que si no tomara el por defecto 1.
También se pueden declarar variables del mismo tipo que otra variable, ejemplo:
DATA: v_carrid LIKE sflight-carrid.
Estructuras de datos
Es un conjunto de campos relacionados, los cuales pueden ser solo campos, otras estructuras o tablas.
Hay 3 formas de definir una estructura.
1: estructura que tiene los mismos campos de la tabla sflight
|
#estructura de vuelos
DATA: wa_vuelos TYPE sflight
*wa_vuelos -> estructura
*sflight -> tabla de BD
|
2: estructura que tiene solo algunos campos de la tabla sflight
|
DATA: BEGIN OF wa_vuelos2
Carrid TYPE s_carr_id,
Connid TYPE s_conn_id,
Fldate TYPE s_date,
Price TYPE s_price,
Currency TYPE s_currcode,
Planetype TYPE s_planetye,
END OF wa_vuelos2.
*wa_vuelos2 -> nombre de la estructura
**s_carr_id -> elemento de datos de la tabla
|
3: utilizando la palabra reservada TYPES, el cual permite que la estructura sea ocupada por cualquier otra estructura sin necesidad de reescribir código.
|
TYPES: BEGIN OF st_vuelos,
Carrid TYPE s_carr_id,
Connid TYPE s_conn_id,
Price TYPE s_price,
END OF st_vuelos.
#Reutilizando estructura anterior.
DATA: wa_vuelos3 TYPE st_vuelos.
|
CONSTANTES
Es una variable que se declara dentro del programa, y su valor permanecerá a lo largo del programa.
|
CONSTANTS: c_ca(2) TYPE c VALUE ‘CA’,
c_cb(2) TYPE c VALUE ‘CB’.
|
INCLUDES
Objeto que se utiliza para modularizar programas de manera que resulten mas legibles y mantenibles.
Hay 2 tipos de includes:
1. Include de datos: agrupar declaraciones de datos
2. Include de subrutinas: agrupan subrutinas
Include de datos:
|
REPORT z_prueba_abap
INCLUDE z_prueba_abap_datos
|
VARIABLES DE SISTEMA
Además de las variables que crea el programado, existen también variables de sistema y son de gran utilidad.
La tabla donde están es SYST.
SY-SUBRC: código de retorno posterior a la ejecución de una sentencia abap. si el resultado no da error o es exitoso el resultado será 0.
SY-DATAUM: contiene la fecha del sistema.
SY-UZEIT: contiene la hora del sistema
SY-TABIX: contiene el índice de una tabla interna.