ABAP: Crear JOB con un report

Para crear un JOB con un report utilizaremos las siguientes funciones JOB_OPEN (Abrir JOB), JOB_CLOSE (Cerrar JOB) y JOB_DELETE (Borra log del JOB en SM37 – Opcional), que utilizaremos de la siguiente forma.
 

JOB_OPEN

Creación del JOB donde indicaremos el nombre del JOB y devolverá el ID de JOB creado.

  • JOBNAME: Nombre del JOB
  • JOBCOUNT: ID del job
JOB_CLOSE

Cierra el JOB indicando el nombre e ID generado por JOB_OPEN, con el parámetro de entrada STRIMMED indicamos cuando empieza el JOB, en este caso utilizamos STGARTIMEIMMEDIATE para que se ejecute inmediatamente.

  • JOBCOUNT: ID del job (Generado por la función JOB_OPEN)
  • JOBNAME: Nombre del job (El mismo indicado en JOB_OPEN)
JOB_DELETE

Borrará el log del JOB de la SM37, este paso es opcional.

  • JOBCOUNT: ID del job (Generado por la función JOB_OPEN)
  • JOBNAME: Nombre del job (El mismo indicado en JOB_OPEN)

(más…)

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.

(más…)