ABAP: Buscar textos en programas

En ocasiones necesitaremos buscar una sentencia y no sabemos donde se encuentra, para ello podremos utilizar el programa RPR_ABAP_SOURCE_SCAN.

En el campo String buscado informaremos el texto que se quiere buscar, si lo ejecutamos sin ningún otro filtro la ejecución tardará horas, para reducir el tiempo de ejecución podremos filtrar por paquete, grupo de programas, programas creados por grupos de usuarios, etc.

Al finalizar nos devolverá una lista donde nos indicará programa, función, … y número de línea.
 
RPR_ABAP_SOURCE_SCAN
 

Para ver mas tutoriales de SAP, pulse en el siguiente enlace: Listado de tutoriales

ABAP: Pasar de STRING a XSTRING

Para pasar de STRING a XSTRING utilizaremos la función SCMS_STRING_TO_XSTRING, a la que pasaremos una variable de tipo STRING y nos devolverá el resultado en un XSTRING.
 

Función SCMS_STRING_TO_XSTRING

DATA: lv_string   TYPE string
      lv_xstring  TYPE xstring,

CALL FUNCTION 'SCMS_STRING_TO_XSTRING'
    EXPORTING
      text     = lv_string   
    IMPORTING
      buffer   = lv_xstring
    EXCEPTIONS
      failed   = 1
      OTHERS   = 2.

 
Para ver mas funciones de SAP pulse en el siguiente enlace: Listado de funciones

ABAP: Codificar/Decodificar a BASE64

Para codificar o decodificar a BASE64 utilizaremos las funciones ‘SCMS_BASE64_ENCODE_STR‘ o ‘SCMS_BASE64_DECODE_STR‘ respectivamente.
  

Función SCMS_BASE64_ENCODE_STR

Para codificar a BASE64 deberemos pasarle el contenido en una variable de tipo XSTRING y nos devolverá el contenido codificado en una variable de tipo STRING.

DATA: lv_base64_encode  TYPE string,
      lv_xstring        TYPE xstring.

CALL FUNCTION 'SCMS_BASE64_ENCODE_STR'
  EXPORTING
    input  = lv_xstring
  IMPORTING
    output = lv_base64_encode.

  

Función SCMS_BASE64_DECODE_STR

Para decodificar BASE64 le pasaremos el contenido BASE64 en una variable de tipo STRING y nos devolverá el resultado decodificado en una variable de tipo XSTRING (que luego podemos convertir a lo que necesitemos).

DATA: lv_base64_encode TYPE string,
      lv_base64_decode TYPE xstring.

CALL FUNCTION 'SCMS_BASE64_DECODE_STR'
  EXPORTING
    input  = lv_base64_encode
  IMPORTING
    output = lv_base64_decode
  EXCEPTIONS
    failed = 1
    OTHERS = 2.

Leer más

ABAP: Convertir texto a mayúsculas o minúsculas

Para convertir un texto a mayúsculas o minúsculas utilizaremos la sentencia TRANSLATE a la que pasaremos una variable de tipo STRING e indicaremos TO UPPER CASE para convertirlo a mayúsculas o TO LOWER CASE para convertirlo a minúsculas.

 

Ejemplo

Data: lv_texto TYPE string.
lv_texto = ‘Hola Mundo’.

TRANSALTE lv_texto TO UPPER CASE. “Resultado: HOLA MUNDO
TRANSLATE lv_texto TO LOWER CASE. “Resultado: hola mundo

 

Para ver mas tutoriales de SAP, pulse en el siguiente enlace: Listado de tutoriales

ABAP: Manejo de cadena de caracteres

En la siguiente guía veremos cómo operar con cadenas de caracteres (Entendemos por cadena de caracteres los siguientes tipos d, n, c, t y string)

 

Reemplazar

Para reemplazar un carácter o cadena de caracteres utilizaremos REPLACE.
Buscará el string1 (tardes) con el string2 (noches) en el string 3(Buenas tardes) y el resultado será Buenas noches.

DATA: string1 TYPE string VALUE 'tardes',
      string2 TYPE string VALUE 'noches',
      string3 TYPE string VALUE 'Buenas tardes'.

REPLACE string1 WITH string2 INTO string3.

 

Pasar a Mayúsculas/Minúsculas

Para pasar de mayúsculas a minúsculas o viceversa, utilizaremos TRANSALTE, indicando TO UPPER CASE para pasar a mayúsculas o TO LOWER CASE para pasar a minúsculas.

TRANSLATE string1 TO UPPER CASE.

TRANSLATE string1 TO LOWER CASE.

Leer más