Sunteți pe pagina 1din 11

Introducción a la

Programación
ABAP
Ing. Edwin Tobala
etobala@bizpartner.biz
Procesamiento de Cadenas

Sentencia SHIFT: Permite realizar desplazamientos. Ejemplo


REPORT ZSHIFT.
******* EJEMPLO SHIFT *******
DATA: T(10) VALUE 'ABCDEFGH',
cadena LIKE T.
cadena = T.
WRITE cadena.
SHIFT cadena.
WRITE / cadena.
cadena = T.
SHIFT cadena BY 3 PLACES LEFT.
WRITE / cadena.
cadena = T.
SHIFT cadena BY 3 PLACES RIGHT.
WRITE / cadena.
cadena = T.
SHIFT cadena BY 3 PLACES CIRCULAR.
WRITE / cadena.
Sentencia REPLACE : Reemplaza cadenas.

REPORT ZREPLACE .
***** EJEMPLO REPLACE ****
DATA: CADENA(8) value 'ABCDEFGH',
CAD1(4) VALUE 'WXYZ',
CAD3(4) VALUE 'DEFG',
CAD2(4) VALUE '1234'.

WRITE: 'INICIAL: ',CADENA.


REPLACE CAD1 WITH CAD2 INTO CADENA.
WRITE: / SY-SUBRC, CADENA.
REPLACE CAD3 WITH CAD2 INTO CADENA.
WRITE: / SY-SUBRC, CADENA.
Sentencia TRANSLATE : Se utiliza para convertir caracteres de mayúsculas a minúsculas y viceversa.

REPORT ZTRANSLATE.
*** EJEMPLO TRANSLATE ***
DATA: TEMPORAL(10) VALUE 'AbCdEfGAIJ',
CADENA LIKE TEMPORAL,
REGLA(20) VALUE 'A1b2C3D4E5f6G7H8I9j0'.

CADENA = TEMPORAL.
WRITE / CADENA.
TRANSLATE CADENA TO UPPER CASE.
WRITE / CADENA.
CADENA = TEMPORAL.
TRANSLATE CADENA USING REGLA.
WRITE / CADENA.
Sentencia OVERLAY: Utilizado para sobreescribir un campo alfanumérico con otro campo.
Sentencia SEARCH: Se utiliza para buscar una cadena de caracteres en un campo alfanumérico.

REPORT ZSEARCH.
********* EJEMPLO SEARCH *******************
DATA: TEMPORAL(30) VALUE 'ACADEMIA ABAP - BIZPARTNER',
STRING LIKE TEMPORAL.

STRING = TEMPORAL.
write '123456789012345678'.
write / STRING.

SKIP.
SEARCH STRING FOR 'f'.
WRITE: / 'F', SY-SUBRC, SY-FDPOS.

STRING = TEMPORAL.
SEARCH STRING FOR 'AP'.
WRITE: / 'AP ', SY-SUBRC, SY-FDPOS.
Sentencia STRLEN: Se utiliza para hallar la longitud de una cadena.

REPORT zstrlen.
*****EJEMPLO STRLEN ***********
DATA variable TYPE string.
DATA long TYPE i.

variable = 'BIZPARTNER SAC'.

long = strlen( VARIABLE ).

WRITE : 'La longitud de variable es ', long.


Sentencia CONDENSE : Se utiliza para borrar espacios en blancos en campos alfanuméricos.

REPORT ZCONDENSE.

******EJEMPLO CONDENSE *****************


DATA : BEGIN OF NAME,
TITULO(8) VALUE 'ACADEMIA',
PRIMER_NOMBRE(10) VALUE 'SAP',
SEGUNDO_NOMBRE(10) VALUE 'BIZPARTNER',
END OF NAME.

CONDENSE NAME NO-GAPS.


WRITE NAME.
Sentencia CONCATENATE: Esta sentencia se utiliza para concatenar/ unir cadena de caracteres.

REPORT zconcatenate.

*********EJEMPLO CONCATENATE *********

DATA : cad1(50) VALUE 'ACADEMIA ABAP',


cad2(50) VALUE ' BIZPARTNER - LA MOLINA'.

DATA cadena TYPE string.

CONCATENATE cad1 cad2 INTO cadena.


WRITE: / ' Resultado Final: ', cadena.
Sentencia SPLIT : Divide un campo alfanumérico en varios campos , por medio de un separador.

REPORT ZSPLIT.
*******EJEMPLO DE SPLIT ***********
DATA: PAISES(50) VALUE 'Perú, Chile, Bolivia, Brasil',
CAD1(30),
CAD2(30),
CAD3(30),
SEPARADOR(2) VALUE ','.
SPLIT PAISES AT SEPARADOR INTO CAD1 CAD2.
WRITE CAD1.
WRITE / CAD2.

S-ar putea să vă placă și