✒️ABAP El procesamiento de los datos
ABAP El procesamiento de los datos
1-ASIGNACION DE VALORES
Existen dos formas basicas para asignar un valo a una variable. La primera consiste en la asignacion simple.
v_cantidad2 = v_cantidad 1. "Asigno v_cantidad 1 a v_cantidad2
La segunda forma es mediante la variable MOVE.
MOVE v_cantidad1 TO v_cantidad2. "Asigno v_cantidad1 a v_cantidad2
2-INICIALIZACIÖN DE VARIABLES:
Para la inicialización o borrado del contenido de las variables utilizamos la sentencia CLEAR.
Una sentencia importante a la hora de consultar el contenido de las variables q declaramos en nuestro programa es IS INITAL.
IF v_campo IS INITIAL.
WRITE 'La variable esta vacia'.
ENDIF.
*Es muy util cuando se trabaja con tablas internas*
OPERACIONES CON CARACTERES
Existen algunas funciones que se utilizan para tratar caracteres que son muy utiles en el trabajo diario de un programador.
CONCATENATE: se utiliza paa concatenar varios campos alfanumericos en uno solo.
CONCATENATE v_campo1 v_campo2 v_campo3 INTO v_campo SEPARATED BY ' . ' .
*Esta sentencia es muy util cuando se trabaja con fechas ya que las fechas en SAP son del formato AAAAMMDD y cuando se muestran en un listado se deben convertir a DD.MM.AAAA
TRANSALTE: Esta sentencia sirve para convertir mayúsculas a minusculas o viceversa, o sistituciones de caracteres.
TRANSALTE v_texto TO UPPER CASE. "Para convertir el texto del campo a mayusculas"
REPLACE: reemplaza cierta parte de una cadena de caracteres por otra cadena de caracteres o caracter.
REPLACE 'Hola' WITH 'Casa' INTO v_texto. "Es util para cuando se trabaja con importes"
SPLIT: Divide a un campo alfanumerico en varios campos por un separador.
SPLIT v_texto_largo AT ' , ' INTO v_campo1 v_campo2 v_campo3 v_campo4.
*En la sentencia anterior utiliza el campo ',' para divir el contenido del camop V_TEXTO_LARGO en las variables V_CAMPO1, V_CAMPO2, V_CAMPO3 y V_CAMPO4 que son de tipo caracter (TYPE c).
Si todos los campos destinos son los suficiente grandes para almacenar las partes del campo V_TEXTO_LARGO, SY-SUBRC valdra 0, caso contrario valdra 4.
SEARCH: Se utiliza para bucar una cadena de caracter dentro de un campo alfanumerico.
SEARCH V_ALFABETO FOR 'ABC'.
*La sentencia anterior busca en el campo V_ALFABETO la secuencia de caracter ABC. Como la secuencia exista, devolvera SY-SUBRC igual a 0. Caso contrario, si no existiera, seria distinto igual a 4.
CONDENSE: Se utiliza para borrar espacios en blanco en campos alfanumericos. Borra cualquier secuencia de espacios en blanco, dejando solo uno que exista entre palabras existente en el campo. Los espacios en blanco por la izquierda tambien desaparecen.
CONDENSE wa_doctor.
*La salida en pantalla de la sentencia anterior sería 'Dr. Rafael Castro'. Con el agregado de la cláusula NO-GAPS al final de la sentencia, se eliminarán todos los espacios en blanco, es decir que tambien se eliminan los espacios existentes entre las palabras. Util para reportes.
El reporte standar RSRSCAN1 no muestra en pantalla la cantidad de ocurrencias de sentencias , palabras, etc en uno o mas programas abap
OPERACIONES ARITMETICAS:
En cuanto a las operaciones aritmeticas basicas (suma, resta, division, multiplicacion), se pueden implementar de dos maneras obteniendo el mismo resultado.
1. v_campo1 = v_campo2 v_campo3.
2. COMPUTE v_campo1 = v_campo2 v_campo3.
Siendo el resultado el mismo en ambas formas. Tambien se utilizan las siguientes sentencias para operar aritmeticamente con datos:
ADD 1 TO v_numero. "Suma 1 a la variable V_NUMERO
SUBTRACT 1 FROM v_numero. "Resta 1 a la variable V_NUMERO
MULTIPLY v_numero BY 2. "Multiplica por 2 a la variable V_NUMERO
DIVIDE v_numero BY 2. "Dividie por 2 a la variable V_NUMERO.
 
 
 
Sobre el autor
Publicación académica de Matias Ciutat, en su ámbito de estudios para la Carrera Consultor ABAP.
Matias Ciutat
Profesión: Consultor Sap Pm - Software Engineering Team Lead - Argentina - Legajo: PW24J
✒️Autor de: 35 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Matias Ciutat