✒️ABAP / El procesamiento de los datos Por Mauro Repetto

Selector Alummnos / Empresas

ABAP El procesamiento de los datos

ABAP El procesamiento de los datos

En ABAP, el procesamiento de cadenas de texto (tipo STRING o CHAR) es uno de los temas más habituales en la programación del día a día, especialmente al formatear datos para reportes, validar entradas de usuario o transformar archivos.

Actualmente coexistimos con dos enfoques: la sintaxis clásica (ampliamente presente en códigos legacy) y la sintaxis moderna con expresiones de caracteres (introducida a partir de ABAP 7.40+), la cual es más limpia y expresiva.

A continuación, muestro las operaciones fundamentales con cadenas, con ejemplos prácticos en ambas variantes cuando aplica:

1. Concatenación de Cadenas

Une dos o más variables de texto en una sola.

â— Clásico (CONCATENATE):
ABAP
DATA: lv_nombre TYPE string VALUE 'Juan',
lv_apellido TYPE string VALUE 'Pérez',
lv_resultado TYPE string.

" SEPARATED BY agrega un espacio u otro delimitador
CONCATENATE lv_nombre lv_apellido INTO lv_resultado SEPARATED BY space.
" Resultado: 'Juan Pérez'

â— Moderno (String Templates con |):
ABAP
DATA(lv_nombre) = 'Juan'.
DATA(lv_apellido) = 'Pérez'.

" Sintaxis mucho más directa y legible
DATA(lv_resultado) = |{ lv_nombre } { lv_apellido }|.

2. Subcadenas (Substring / Acceso por Offsets)

Extrae una sección específica de un texto según la posición inicial (offset) y la longitud.

â— Clásico (Offsets implícitos):
ABAP
DATA: lv_texto TYPE string VALUE 'SAP-ABAP-2026',
lv_sub TYPE string.

" Offset 4, longitud 4
lv_sub = lv_texto+4(4). " Resultado: 'ABAP'

â— Moderno (Funciones integradas):
ABAP
DATA(lv_texto) = 'SAP-ABAP-2026'.

" Usando substring
DATA(lv_sub) = substring( val = lv_texto off = 4 len = 4 ). " Resultado: 'ABAP'

3. Búsqueda de Subcadenas

Encuentra la posición de una palabra o patrón dentro de un texto.

â— Clásico (FIND):
ABAP
DATA: lv_pos TYPE i.
FIND 'ABAP' IN 'Curso de SAP ABAP' MATCH OFFSET lv_pos.
" lv_pos contendrá 13 (indexación base 0)

â— Moderno (find):
ABAP
DATA(lv_pos) = find( val = 'Curso de SAP ABAP' sub = 'ABAP' ).

4. Reemplazo de Caracteres

Sustituye apariciones de una cadena por otra.

â— Clásico (REPLACE):
ABAP
DATA: lv_texto TYPE string VALUE 'Hola Mundo'.
REPLACE ALL OCCURRENCES OF 'Mundo' IN lv_texto WITH 'ABAP'.
" lv_texto pasa a ser 'Hola ABAP'

â— Moderno (replace):
ABAP
DATA(lv_texto) = replace( val = 'Hola Mundo' sub = 'Mundo' with = 'ABAP' occ = 0 ).
" occ = 0 indica reemplazar todas las apariciones

5. Separar una Cadena (Split)

Divide un texto largo en una tabla interna utilizando un delimitador.

ABAP

DATA: lv_lista TYPE string VALUE 'Manzana,Pera,Uva',
lt_frutas TYPE TABLE OF string.

SPLIT lv_lista AT ',' INTO TABLE lt_frutas.
" lt_frutas contendrá 3 filas

6. Conversión de Mayúsculas / Minúsculas

Modifica el caso de las letras del texto.

â— Clásico (TRANSLATE):
ABAP
DATA: lv_texto TYPE string VALUE 'Texto De Prueba'.
TRANSLATE lv_texto TO UPPER CASE. " 'TEXTO DE PRUEBA'
TRANSLATE lv_texto TO LOWER CASE. " 'texto de prueba'

â— Moderno (to_upper / to_lower):
ABAP
DATA(lv_mayus) = to_upper( 'Texto De Prueba' ).
DATA(lv_minus) = to_lower( 'Texto De Prueba' ).

7. Eliminación de Espacios (Condensar / Trim)

Remueve espacios innecesarios al inicio, al final o reduce espacios duplicados en medio.

â— Clásico (CONDENSE):
ABAP
DATA: lv_texto TYPE string VALUE ' SAP ABAP '.
CONDENSE lv_texto. " Deja 'SAP ABAP' (elimina extremos y comprime internos)
CONDENSE lv_texto NO-GAPS. " Deja 'SAPABAP' (elimina absolutamente todos)

â— Moderno (condense / condense con from):
ABAP
DATA(lv_limpio) = condense( val = ' SAP ABAP ' ).

8. Longitud de una Cadena

Calcula la cantidad de caracteres que conforman el texto.

â— Clásico (STRLEN):
ABAP
DATA: lv_longitud TYPE i.
lv_longitud = strlen( 'ABAP' ).
" Devuelve 4

â— Moderno (strlen / numofchar):
ABAP
DATA(lv_len) = strlen( 'ABAP' ).

9. Desplazamiento de Caracteres (Shift)

Mueve los caracteres a la izquierda o a la derecha, recortando o rellenando.

ABAP

DATA: lv_codigo TYPE string VALUE '0000123456'.

" Elimina ceros a la izquierda
SHIFT lv_codigo LEFT DELETING LEADING '0'. " Resultado: '123456'

10. Expresiones Regulares (Regex)

Para validaciones complejas (ej. validar correos electrónicos o formatos de código) tanto FIND, REPLACE como las funciones de string modernas permiten el uso de expresiones regulares usando el parámetro REGEX.

ABAP

" Validar si un texto contiene solo números
IF matches( val = '12345' regex = '^d+$' ).
" El formato es correcto
ENDIF.

Resumen de Buenas Prácticas

â— Prioriza la sintaxis moderna (ABAP 7.40+): Es más fácil de leer, soporta concatenación dinámica directamente en llamadas a métodos o consultas SELECT, y evita declarar múltiples variables temporales.

â— Cuidado con tipos CHAR fijados: Si usas tipos CHAR de longitud fija (ej. c LENGTH 10), los espacios en blanco al final cuentan dentro del tamaño a menos que uses STRING o apliques funciones de condensación.


 

Escanear / Compartir

 

 


Sobre el autor

Publicación académica de Mauro Repetto, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Inicial.

SAP Junior

Mauro Repetto

Profesión: Pm It - Uruguay - Legajo: AZ19X

✒️Autor de: 6 Publicaciones Académicas

🎓Cursando Actualmente: Carrera Consultor ABAP Nivel Inicial

Certificación Académica de Mauro Repetto

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "El procesamiento de los datos" de la mano de nuestros alumnos.

SAP Junior

En ABAP, el procesamiento de cadenas de texto (tipo STRING o CHAR) es uno de los temas más habituales en la programación del día a día, especialmente al formatear datos para reportes, validar entradas de usuario o transformar archivos. Actualmente coexistimos con dos enfoques: la sintaxis clásica (ampliamente presente en códigos legacy) y la sintaxis moderna con expresiones de caracteres (introducida a partir de ABAP 7.40+), la cual es más limpia y expresiva. A continuación, muestro las operaciones fundamentales con cadenas, con ejemplos prácticos en ambas variantes cuando aplica: 1. Concatenación de Cadenas Une dos o más variables de texto en una sola. â— Clásico...

Acceder a esta publicación

Creado y Compartido por: Mauro Repetto

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


1. Inicialización de Variables Antes de utilizar una variable, es fundamental "limpiarla" o inicializarla para asegurar que no contenga datos "sucios" de ejecuciones previas o valores residuales en memoria. Sentencia: CLEAR. Funcionamiento: Se utiliza para blanquear el contenido de una o varias variables. Dependiendo del tipo de dato, el valor inicial será diferente (ej: ceros para números, espacios en blanco para caracteres),,. Validación: Para consultar si una variable está vacía o tiene su valor inicial, se utiliza la sentencia IS INITIAL (ej: IF v_fecha IS INITIAL.). 2. Asignación de Valores Existen dos formas principales de asignar un valor a una variable:...

Acceder a esta publicación

Creado y Compartido por: Gabriel José Luces González

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

El procesamiento de los datos 1| La inicialización de las variables Cuando en un programa ABAP trabajamos con variables, lo primero que vamos hacer es declarar las variables y lo segundo que vamos a tener que hacer consiste en inicializar o blanquear las variables que declaramos, es decir antes de utilizar las variables en nuestro programa debemos asegurarnos que su contenido este vacío, es decir que las variables estén limpias. Una variable podría quedar sucia o con determinado contenido en la memoria ABAP debido a una ejecución previa del programa y esto ocasionaría que el resultado de la ejecución del programa no sea el esperado, es decir se produzcan errores en la salida del programas. Para...

Acceder a esta publicación

Creado y Compartido por: Felipe De Jesus Arrona Rodriguez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master


El Procesamiento de los datos Inicialización y asignación de variables Se explicó la importancia de declarar e inicializar (limpiar) variables antes de usarlas en ABAP, utilizando la sentencia CLEAR. Se puede inicializar varias variables en una sola línea usando dos puntos en la sintaxis. El contenido tras la inicialización depende del tipo de variable. Para consultar si una variable está inicializada se usa la sentencia IS INITIAL, muy útil con tablas internas. Hay dos alternativas para asignar valores: asignación simple o usando la sentencia MOVE. Referencia de utilización de variables ABAP permite identificar en qué lugares del código...

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio Romero

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Cuando trabajemos con variables, lo primero que haremos es declarar variables y lo segundo que tendremos que hacer es inicializar o blanquear las variables que declaramos. Es decir que no haya nada en su contenido y que estén limpias. Una variable podría quedar sucia o con determinado contenido en la memoria ABAP debido a una ejecución previa del programa lo que puede producir errores en la salida del programa. Para la inicialización o el borrado del contenido de las variables utilizamos la sentencia CLEAR CLEAR v_fecha Y si se desea se puede inicializar varias variables con la sentencia CLEAR por cada una CLEAR v_fecha CLEAR v_hora CLEAR v_cantidad O bien se puede en una sola sentencia o línea...

Acceder a esta publicación

Creado y Compartido por: Mara Fadua Romero Hernandez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Junior

El procesamiento de los datos 1 | La inicialización de las variables Cuando en un programa ABAP trabajamos con variables, lo primero que vamos a hacer es declarar las variables y lo segundo que vamos a tener que hacer consiste en inicializar o blanquear las vanables que declaramos, es decir antes de utilizar las variables en nuestro programa debemos asegurarnos que su contenido este vacío, es decir que las variables estén limpias. Una variable podría quedar sucia o con determinado contenido en la memoria ABAP debido a una ejecución previa del programa y esto ocasionaría que el resultado de la ejecución del programa no sea el esperado, es decir se produzcan errores en la salida del programa. Para...

Acceder a esta publicación

Creado y Compartido por: Gustavo Jose Rondon Hernandez / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert



¿Qué es el procesamiento de datos? El procesamiento de datos es el conjunto de operaciones que permiten recolectar, organizar, transformar, analizar y presentar datos de manera que se conviertan en información comprensible y útil. Su objetivo es permitir a los usuarios obtener conclusiones, generar conocimiento o tomar decisiones basadas en hechos. Por ejemplo, cuando una empresa recolecta datos sobre las ventas diarias, estos por sí solos no tienen mucho valor hasta que son organizados y procesados para conocer tendencias, identificar productos más vendidos, o calcular ingresos mensuales. Todo este proceso implica actividades específicas de tratamiento, validación, transformación...

Acceder a esta publicación

Creado y Compartido por: David Ibarra / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

1. Inicialización de Variables ¿Por qué inicializar? Evita resultados erróneos por valores residuales en memoria (ej: ejecuciones previas). Usa CLEAR para "blanquear" variables: CLEAR: v_numero, v_texto, v_fecha. " Inicializa múltiples variables en una línea Valores post-inicialización por tipo: Numéricos: 0 Caracteres (C): '' (cadena vacía) Fechas (D): 00000000 Horas (T): 000000 Verificación con IS INITIAL: IF v_variable IS INITIAL....

Acceder a esta publicación

Creado y Compartido por: Oscar Aravena Muller / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


El procesamiento de los datos 1 La inicialización de las variables En ABAP, después de declarar una variable, es fundamental inicializarla antes de utilizarla para asegurarse de que no contenga valores residuales de ejecuciones anteriores. Esto evita errores en la salida del programa. La instrucción principal para esta tarea es CLEAR, que permite “blanquear” el contenido de una variable. Puede aplicarse individualmente o a varias variables en una sola línea utilizando los dos puntos (:). El contenido resultante de la inicialización depende del tipo de dato. Por ejemplo, los campos tipo fecha se vacían a “00000000” y los campos numéricos a cero. Además, se puede...

Acceder a esta publicación

Creado y Compartido por: Geovanny Martínez Campoverde

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

La inicialiazación de las variables Una variable podría quedar sucia o con determinado contenido en la memoria ABAP debido a una ejeución previa del programa y esto ocasionaría que el resultado de la ejecución del programa no sea el esperado, es decir se produczca errores en la salida del programa. Para la inicialización o el borrado del contenido de las variables utilizamos la sentencia CLEAR CLEAR v_fecha. Si deseamos inicializar varias variables podemos utilizar una sentencia CLEAR por cada una de las variables a inicializar CLEAR v_fecha. CLEAR v_hora. CLEAR v_cantidad. O podemos en una sola sentencia o línea de código incializar a todas las...

Acceder a esta publicación

Creado y Compartido por: Yeny Gisela Yanes Bautista

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 99.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

🔎Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!