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: Obtener ruta de fichero local

Para obtener la ruta de un fichero local utilizaremos la función F4_FILENAME, al ejecutarla nos mostrará un cuadro de dialogo donde podremos seleccionar un documento de nuestro ordenador y nos devolverla la ruta del fichero.
 

Función F4_FILENAME

DATA: lv_ruta TYPE ibipparms-path.

CALL FUNCTION 'F4_FILENAME'
  EXPORTING
    program_name  = syst-cprog
    dynpro_number = syst-dynnr
    field_name    = ''
  IMPORTING
    file_name     = lv_ruta.

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

ABAP: Obtener extensión de un fichero

Para obtener la extensión de un fichero utilizaremos la función TRINT_FILE_GET_EXTENSION a la que pasaremos el nombre del fichero de tipo CHAR y nos devolverá la extensión del fichero en otra variable de tipo CHAR.
 

Parámetros de entrada

  • Filename: Nombre del fichero (Tipo CHAR)
  • Uppercase: Lo informaremos como X si queremos que nos la devuelva en mayúsculas.

 

Parámetros de salida

  • Extension: Extensión del fichero (Tipo CHAR)

 

Función TRINT_FILE_GET_EXTENSION

DATA: lv_filename TYPE c LENGHT 255,
      lv_ext      TYPE c LENGHT 30.

lv_filename = ‘Listado de Usuarios.doc’.

CALL FUNCTION 'TRINT_FILE_GET_EXTENSION'
      EXPORTING
        filename  = lv_filename
        uppercase = 'X'
      IMPORTING
        extension = lv_ext. “Devolverá el valor ‘DOC’.

 
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