ABAP: Desbloquear objetos en ordenes de transporte

Para liberar un objeto liberado en una orden de transporte lo haremos por la transacción SE03, dentro del menú Herramientas Transport Organizer > Órdenes/Tareas > Desbloquear objetos.

SE03 - Menu

En la siguiente ventana indicaremos la orden o la trarea de la que queremos liberar los objetos.

Importante: Se liberarán todos los objetos de la orden, deberemos asegurarnos que cuando terminemos de tratar estos objetos estén todos bloqueados para evitar arrastrar cambios no deseados en los transportes.

Se03 - Orden

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

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: Leer textos de SO10

Para leer textos estándar de SAP (Creados por la transacción SO10) utilizaremos la función READ_TEXT.
 

Parámetros de Entrada

  • ID: Id texto
  • Language: Clave de idioma
  • Name: Nombre
  • Object: Objeto de aplicación

 

Parámetros de Salida

  • Lines: Texto leido

 

Función

DATA: lv_tdid     TYPE tdid,
      lv_tdspras  TYPE spras,
      lv_tdname   TYPE tdobname,
      lv_tdobject TYPE tdobject,
      li_lines    TYPE STANDAR TABLE OF tline.

CALL FUNCTION 'READ_TEXT'
    EXPORTING
      id                      = lv_tdid
      language                = lv_tdspras
      name                    = lv_tdname
      object                  = lv_tdobject
    TABLES
      lines                   = li_lines
    EXCEPTIONS
      id                      = 1
      language                = 2
      name                    = 3
      not_found               = 4
      object                  = 5
      reference_check         = 6
      wrong_access_to_archive = 7
      OTHERS                  = 8.

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

ABAP: Guardar textos de SO10

Para guardar textos estándar de SAP (Creados por la transacción SO10) utilizaremos la función SAVE_TEXT.
 

Parámetros de Entrada

  • Header
    • TDID: Id de Texto
    • TDSPRAS: Clave de idioma
    • TDNAME: Nombre
    • TDOBJECT: Objeto de aplicación
  • Savemode_Direct: Grabar el texto inmediatamente
  • Lines: Tabla con texto a guardar

 

Función

DATA: lv_header TYPE thead,
      li_lines  TYPE STANDAR TABLE OF tline.

CALL FUNCTION 'SAVE_TEXT'
  EXPORTING
    header          = lv_header
    savemode_direct = 'X'
  TABLES
    lines           = li_lines
  EXCEPTIONS
    id              = 1
    language        = 2
    name            = 3
    object          = 4
    OTHERS          = 5.

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

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…)