
Conceptos del procesamiento de fondo
El procesamiento de fondo en SAP, también conocido como procesamiento batch o procesamiento en segundo plano, permite ejecutar programas o procesos sin la interacción del usuario. Esto significa que se puede iniciar un proceso y continuar trabajando en el sistema mientras el programa sigue ejecutándose.
Características clave:
Ejecución sin interacción: Los usuarios pueden lanzar procesos de fondo y seguir utilizando el sistema sin esperar la finalización del proceso.
Mejora del rendimiento: Al ejecutar procesos de fondo, se reduce la carga en las transacciones online, lo que mejora el rendimiento general del sistema.
Uso de recursos: Se recomienda ejecutar estos procesos durante las horas de menor actividad, como durante la noche, para optimizar el uso de recursos y minimizar el impacto en los usuarios que trabajan en tiempo real.
Tiempo de respuesta: Se considera que un buen tiempo de respuesta para un sistema online es de menos de dos segundos. Si un proceso tardará más, es mejor ejecutarlo en segundo plano.
Decisiones empresariales: La empresa debe decidir qué procesos pueden esperar a ejecutarse en segundo plano y cuáles requieren ejecución inmediata.
Los jobs
Un job en SAP es un conjunto de uno o más programas o transacciones que se ejecutan en segundo plano. Estos jobs son planificados y ejecutados para automatizar tareas, como mantenimiento del sistema, recolección de estadísticas o procesos críticos de negocio. Se pueden definir, planificar y monitorear utilizando la transacción estándar SM36.
Creación de un Job con SM36
Al crear un job en SAP, hay tres áreas principales que deben configurarse:
Información general:
Nombre del Job: Debemos asignar un nombre descriptivo al job que refleje su propósito. Este nombre no es único, es decir, varios jobs pueden llamarse igual, pero SAP asigna internamente un número de identificación único a cada job.
Clase de Job: La clase de job define la prioridad de ejecución. Las clases disponibles son:
Clase A: Alta prioridad. Para procesos críticos que afectan el funcionamiento del sistema.
Clase B: Prioridad media. Se utiliza para trabajos periódicos relacionados con el mantenimiento del sistema.
Clase C: Prioridad normal. Es la clase que se asigna normalmente a los jobs de los usuarios.
Hora de inicio o evento de ejecución: Esta sección permite definir cuándo se debe ejecutar el job. Existen varias opciones:
Ejecución inmediata: El job se ejecuta tan pronto como se complete su definición.
Ejecución por fecha/hora: Se programa el job para ejecutarse en una fecha y hora específicas. También se puede configurar el job como periódico, es decir, que se ejecute repetidamente en intervalos regulares. Esta opción se suele utilizar para la planificación de jobs de mantenimiento o recolección de estadísticas.
Encadenado a otro job: Un job puede configurarse para ejecutarse cuando otro job haya finalizado, y se puede definir si debe ejecutarse sólo cuando el primer job termine correctamente.
Ejecución por evento: El job se inicia cuando se produce un evento específico en el sistema SAP. Un evento es una señal que puede ser generada automáticamente por SAP o manualmente por el usuario.
Pasos: Un job puede estar compuesto por uno o más pasos. Cada paso define qué programa o transacción se ejecutará. Los pasos pueden incluir:
Programas ABAP: Estos pueden ser programas estándar de SAP o programas personalizados creados por los usuarios. Además, se pueden asociar variantes que incluyan parámetros de selección predefinidos.
Comandos externos: Son comandos que se ejecutan directamente en el sistema operativo del servidor donde se procesa el job.
Programas externos: Se refiere a programas que se ejecutan en sistemas ajenos a SAP, lo que permite la integración con otros sistemas de gestión.
Es importante destacar que los pasos de un job se ejecutan secuencialmente. Si uno de los pasos falla, el job se cancela y los pasos restantes no se ejecutan.
Monitoreo de Jobs con SM37
La transacción SM37 se utiliza para visualizar y monitorizar los jobs procesados o en proceso dentro del sistema SAP. Desde esta transacción, se pueden consultar datos importantes sobre cada job, como:
ID del job: Identificación única asignada por SAP.
Usuario que ejecutó el job.
Estado del job: Indica si el job está previsto, liberado, preparado, activo, terminado o cancelado.
Fecha y hora de inicio.
Duración del job.
Retraso en el inicio o ejecución del job.
Estados de un Job
Los jobs en SAP pueden pasar por diferentes estados durante su ciclo de vida:
Previsto: Estado inicial en el que se encuentra el job después de haber sido definido, pero sin haberse planificado aún su ejecución.
Liberado: El job está completamente definido y listo para ejecutarse. Permanecerá en este estado hasta que se cumpla la condición de su inicio (fecha/hora o evento).
Preparado: El job ha alcanzado su momento de inicio, pero está esperando a que haya recursos disponibles en el sistema para comenzar su ejecución. Este estado no es común, a menos que el sistema esté saturado.
Activo: El job está en ejecución en este momento. Se puede monitorear el progreso del job mientras está en este estado.
Terminado: El job ha finalizado su ejecución con éxito.
Cancelado: El job ha fallado durante su ejecución. Esto puede deberse a errores en los programas involucrados o a problemas de acceso a la base de datos.
Operaciones sobre Jobs en SM37
En la transacción SM37, se pueden realizar diversas operaciones sobre los jobs, tanto activos como finalizados. Algunas de las operaciones más comunes incluyen:
Verificar status: A veces, un job puede parecer activo, pero en realidad no lo está. Con esta opción se fuerza a SAP a verificar su estado real.
Cancelar job activo: Si un job está en ejecución, se puede detener y pasarlo al estado de cancelado.
Borrar job: Una vez que un job ha finalizado (ya sea en estado terminado o cancelado), se puede eliminar de la lista de jobs.
Liberado a previsto: Si un job ha sido liberado, pero aún no ha comenzado su ejecución, se puede revertir a su estado previsto para realizar modificaciones.
Copiar job: Permite duplicar un job para ejecutarlo más de una vez.
Modificar job: Mientras un job no haya comenzado su ejecución, es posible modificar sus parámetros o configuración.
Repetir previsión: Similar a la opción de copiar, pero permite definir nuevas condiciones de inicio para el job.
Traslado a otro servidor: Se puede cambiar el servidor en el que se ejecutará el job, siempre que el job aún no esté activo.
Capturar job activo: Permite abrir el debugger de ABAP para inspeccionar el estado del programa que está ejecutando el job en ese momento.
Ver detalles del job: Muestra información detallada sobre el job, como el servidor en el que se está ejecutando, el número de cola BTC, entre otros datos técnicos.
Monitoreo de Servidores con SM51
La transacción SM51 se utiliza para visualizar los servidores de aplicaciones SAP que están en ejecución en el sistema. Permite seleccionar un servidor en particular y monitorear los procesos que están siendo ejecutados en él, lo cual es útil para analizar el rendimiento de los jobs y otros procesos en segundo plano