🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️SAP BASIS Los jobs de background

SAP BASIS Los jobs de background

SAP BASIS Los jobs de background

Jobs de Background

¿Que es el procesamiento en background o de fondo?

El procesamiento en background deberia esencialmente separar tareas periodicas y que insumen mucho tiempo de aquellas de interaccion de usuarios. Tareas que requieren mucho tiempo y ocuparian un work process en dialogo pueden ser secuencialmente procesadas en background sin afectar la performance de dialogo.

Un requisito importante para conseguir este objetivo es un dimensionamiento apropiado del sistema, ya que, demasiados procesos de background podria terminar compitiendo por recursos compartidos con procesos de dialogo (memoria principal, CPU).

Los programas que deban ejecutarse regularmente y consuman mucho tiempo son planificado como jobs de background en el sistema SAP. El administrador planifica los jobs de background y monitorea la correcta ejecucion de los mismos.

1. Fundamentos:

Las siguientes preguntas responderemos en esta leccion:

¿Por que necesitamos procesamiento en background?

¿Que es un job de background?

¿Que podemos realizar en background?

¿Que condiciones de inicio existen?

¿Como son planificados y monitoreados los jobs?

¿Que estados puede tener un job?

Work processes de dialogo deberian estar disponibles para responder a las solicitudes de los usuarios rapidamente. Los recursos de dialogo deberian por lo tanto no ser utilizados para ejecuciones prolongadas ya que puedan provocar cuellos de botella en el tiempo de respuesta de dialogo.

El parametro rdisp/max_wprun_time existe por este motivo justamente. Limita el maximo tiempo de ejecucion de un paso de dialogo en un work process de dialogo.

Transaccion RZ11:

La TXRZ11 es utilizada para la visualizacion de parametros del sistema y la modificacion de los que el sistema permita editar sin reinicio de la instancia.

Esto deberia asegurar que los procesos de dialogo no sean bloqueados por programas que requieren demasiado tiempo de ejecucion, interfiriendo la operacion online. Luego de que el maximo tiempo se ha superado, el programa es terminado.

La manera en que el parametro rdisp/max_wprun_time funciona esta descripto en la nota de SAP 25528.

Podemos utilizar los procesos de background para tareas que consuman mucho tiempo. Tambien se conocen estos como procesos de batch.

Normalmente, los procesos de background no se utilizan solamente para ejecuciones largas, sino que tambien para tareas repetitivas. Ejemplos de estas son los backups diarios de base de datos o los cierres financieron contables.

Un job de background consiste de uno o mas pasos (steps). Un paso puede ser:

- Un programa ABAP

- Un comando externo

- Un programa externo

Cada job se procesa sin interrupcion por un unico backgroun work process. Los jobs de background pueden ser planificados con diferentes prioridades:

- Clase A (Prioridad alta)

- Clase B (Prioridad media)

- Clase C (Prioridad normal)

Si un job es planificado para ser ejecutado en un servidor particular o un grupo de servidores, este tendra preferencia con respecto a otros jobs de la misma clase. Esta preferencia solamente aplica si multiples jobs con la misma prioridad solicitan el procesamiento en background al mismo tiempo, por ejemplo, porque se planificaron para que se ejecuten a la misma hora.

Deberiamos asegurarnos que la mayor parte de los jobs de background sean planificados con prioridad normal, clase C, sin especificacion de servidor de ejecucion.

Esto deberia aplicar para el 90% o mas de todas las tareas de background.

Un paso dentro de un job puede ejecutar una de estas tres acciones:

- Un programa ABAP puede planificarse como un paso de un job. Si el programa ABAP tiene una o mas pantallas de seleccion, tendremos que crear las entradas previamente en una variante. Una variante hace posible ejecutar un programa ABAP en background aunque el programa requiera valores de entrada.

Los valores almacenados en la variante son luego utilizados durante la ejecucion del programa. Si un programa ABAP tiene una pantalla de salida como resultado, esto es dirigido a una lista de spool.

Podriamos tambien especificar un recipiente de email para esta lista de spool durante la definicion del job.

Debemos especificar una impresora para la creacion de la lista de spool, aunque no necesariamente tenga que ser impreso en un dispositivo de salida como resultado del procesamiento en background. Esto por ejemplo podria hacerse posteriormente.

- Un comando externo es un llamado a un script predefinido, un comando, o un programa a nivel del sistema operativo. Con comandos externos, podemos enmascarar llamadas al sistema operativo y guardarlos en el sistema SAP bajo un nombre. Podemos usar tambien el concepto de autorizacion de SAP para proteger la ejecucion de un comando externo. Esto permite que podamos determinar que usuarios estan permitidos a ejecutar que comando externos (sobre que servidores y/o sistemas operativos)

- Un programa externo es un comando del sistema operativo. El concepto de autorizacion de SAP solamente especifica si un usuario puede llamar un programa externo o no. Una asignacion mas detallada de autorizaciones, por ejemplo a nivel de los nombres de programa, no es provista con la ejecucion de programas externos. Utilicemos comandos externos para esto.

Un job puede ser iniciado:

- Mediante planificacion en una fecha y hora particular (esto incluye el inicio inmediato, si no hay background work processes libres disponibles al momento en que debe iniciar el job segun la planificion).

- Mediante la ocurrencia de un evento particular definido en el sistema SAP. Esto incluye jobs que se iniciaran luego de la finalizacion de otros jobs o en los cambios de modo de operacion o jobs con inicio inmediato si existen background work processes libres al momento.

2. Planificacion y Monitoreo:

Podemos utilizar la TX SM36 para definir nuevos jobs. Puedes tambien llamar el Asistente de Job, TX SM36WIZ o desde la TX SM36 tambien.

TX SM36 y SM36WIZ: son utilizadas para la creacion de Jobs tanto estandar como propios, permitiendo definir mas de un paso de ejecucion en cada uno.

Las especificaciones que requiere la definicion de un job son:

- Especificaciones generales tales como nombre de job, prioridad del job (por defecto: C) y opcionalmente un servidor de ejecucion o grupo.

- Definicion de uno o mas pasos

- Definicion de una condicion de inicio (de tiempo o controlada por evento)

El asistente de Job nos ayuda en la creacion del job guiandonos de manera facil a traves del proceso de creacion.

El metodo de creacion de un job de background (clasico o mediante el Asistente de Job) no tiene incidencia en el resultado. Algunas funciones (especificar el usuario SAP en la definicion del paso de job, modificacion del orden de ejecucion de los pasos) no estan disponibles para el Asistente de Job.

TX SM37: permite monitorear los jobs. Podemos seleccionar los jobs utilizando diversos criterios en la pantalla inicial de esta transaccion. Algunas opciones serian visualizar los jobs que contienen un paso determinado, que tienen un estado particular o que reaccionan a un evento definido.

Luego de que seleccionamos Execute, una vista de job aparece que es creada por el Visor de Listas SAP (SAP List Viewer: ALV). Seleccionando del menu Settings podemos determinar las columnas que se mostraran y el orden, entre otras cosas. Podemos tambien configurar si sera diseño (Layout) estandar para el usuario actual o todos los usuarios.

Para el analisis de jobs, una columna que no se visualiza por defecto y es importante, es la columna de servidor de ejecucion. Muchas veces algun problema en la ejecucion de un job puede estar relacionado al servidor de aplicacion donde se ejecuta.

Podemos tambien navegar a otras vistas especificas del job desde la visualizacion de job.

Listas de Spool contiene las listas de salida de los programas de ABAP (si es que existen).

Detalle del job contiene, entre otras cosas, informacion sobre la definicion del job, duracion del procesamiento del job y la fecha y hora de inicio del job.

Todos los mensajes de salida por un programa de background son almacenados en el log del job. Podemos visualizar el log para obtener informacion sobre un programa que finalizo con error o para realizar una investigacion detallada sobre la ejecucion de un job de background.

Un job puede tener los siguientes estados:

- Planificado (Scheduled): Los pasos que requieren la creacion del job han sido definidos ya, de todas formas la condicion de inicio aun necesita ser definida.

- Liberado (Released): El job ha sido completamente definido, incluyendo la condicion de inicio. Un job no puede ser liberado sin una condicion de inicio. Solamente un administrador o un usuario con las autorizacones necesarias para el procesamiento de background puede liberar un job. Esto asegura que usuarios sin autorizacion no pueden ejecutar jobs sin aprobacion.

- Listo (Ready): La condicion de inicio de un job liberado se ha cumplido. Sin embargo el job se encuentra en la cola de espera por un work process de background libre.

- Activo (Active): El job esta siendo ejecutado y no puede ser borrado ni modificado. Si un job activo no se ejecuta normalmente, por ejemplo, demora mucho mas del tiempo normal, podemos analizar el job en modo de depuracion. Luego podemos finalizar el job definitivamente o liberarlo nuevamente. Para esto, en la TX SM37, seleccionamos Job --> Capture: active job.

Para capturar un job de background, debemos iniciar sesion en el servidor SAP donde el job esta corriendo.

- Finalizado (Finished): todos los pasos del job fueron ejecutados sin problemas.

- Cancelado (Canceled): El job finaliza anormalmente, esto puede suceder de dos maneras:

1. El administrador deliberadamente termina el job en la Tx SM37 mediante la seleccion de Job --> Cancel active job.

2. Un paso del job termino con error.

Podemos modificar un job mientras este tenga los estados Planificando o Liberado. Si la ejecucion de un job ya ha comenzado, podemos monitorear el procesamiento en el log del job. Si el job tiene programas ABAP que crean listas de salida, estas se almacenan en las listas de spool.

Podemos crear un nuevo job copiando otro existente. Desde el menu selecciona Job --> Copy.


 

 

 


Sobre el autor

Publicación académica de Guillermo Andres Reyes Navarro, en su ámbito de estudios para la Carrera Consultor Basis NetWeaver.

SAP Senior

Guillermo Andres Reyes Navarro

Profesión: Ingeniero de Sistemas - Colombia - Legajo: LU47E

✒️Autor de: 51 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Certificación Académica de Guillermo Reyes

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Los jobs de background" de la mano de nuestros alumnos.

SAP Master

BACKGROUND se utiliza para nombrar todos aquellos procesos o rutinas que se realizan en segundo plano o de fondo. Los procesos de background, los usamos para programasr tareas repetitivas y procesos largos Un Jobs de background es una tarea que se realiza en uno más pasos que pueden ser un programa abap, un comando externo o un programa externo. Clase A prioridad alta Clase B prioridad Media Clase C prioridad Normal Sap recomienda prgramar todos los job de clase c sin especificación de servidor de ejecución. Tipos de propiedades de Jobs: Tipo A destino de ejecución Tipo A sin destino Tipo B con destino de ejecución Tipo B sin destino de ejecución Tipo C con destino de ejecución Tipo...

Acceder a esta publicación

Creado y Compartido por: Wilson Perez Lizarazo

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Procesamiento de Fondo: separa tareas periódicas que consumen mucho tiempo, de las que tienen interacción de usuarios. Tareas largas que ocuparían un work process de diálogo, peuden procesarse en background y no afectar la performance de diálogo. Para ello se debe dimensionar bien al sistema, ya que muchos procesos de background podrían terminar compitendo por recursos compartidos con procesos de diálogo. El parámetro rdisp/max_wprun_time existe para limitar el máximo tiempo de ejecución de un proceso de diálogo en un work process de diálogo. La transacción RZ11 se usa para visualizar parámetros del sistema sin reinicio de la instancia. Un job de...

Acceder a esta publicación

Creado y Compartido por: Daniel Alejandro Monteros Segura

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Que es el procesamiento de background de fondo? El procesamiento de background debería separar tareas periódicas y que insumen mucho tiempo de aquellas de interacción de usuarios Demasiados procesos de background podría terminar compitiendo por recursos compartidos con procesos de diálogo. Los programas que son ejecutados regularmente y consumen mucho tiempo son planificados como jobs de background La transacción RZ11 es utilizada para la visualización de parámetros del sistema y la modificación de los que el sistema permita editar sin reinicio de la instancia Los procesos background que consumen mucho tiempo se conocen como procesos batch Los procesos de background no solo se utilizan...

Acceder a esta publicación

Creado y Compartido por: Esteban García Mier Y Terán

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

UNIDAD 7 Lección 5 Jobs de Baackground ¿Que es el procesamiento en background o de fondo? Para separar tareas periodicas y que toman mucho tiempo de aquellas de interacción de usuario. Es muy importante tener bien dimensionado el sistema ya que muchos procesos background podrian terminar compitiendo por recursos compartidos con procesos de dialogo. El administrador planficia los jobs y monitorea la correcta ejecución de los mismos. 1. Fundamentos El parametro rdisp/max_wprun_time --> limita al maximo tiempo de ejecución de un paso de diálogo en un WP de diálogo (ver nota 25528). RZ11 - Visualización de parámetros del sistema y la modificación de los que el sistema permita...

Acceder a esta publicación

Creado y Compartido por: Azucena Ballesteros

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Que es el procesamiento en background o de fondo? El procesamiento en background deberia esencialmente separar tareas periódicas y que insumen mucho tiempo de aquellas de interacción de usuarios. Tareas que requieran mucho tiempo y opcuparían un Work Process en dialogo pueden ser secuencialmente procesadas en background sin afectar el performance de dialogo. Un requisito importante para conseguir este objetivo es un dimensionamiento apropiado del sistema, ya que, demasiados procesos de background podría terminar compitiendo por recursos compartidos con procesos de diálogo. Fundamentos: Las siguientes presuntas responderemos en esta lección: Por qué necesitamos procesamiento en background?...

Acceder a esta publicación

Creado y Compartido por: Miguel Angel Mazariegos

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Que es el procesamiento en Background o de fondo? El procesamiento en backgroud debería esencialmente separar tareas periodicas y que insumen mucho tiempo de aquelas de interacción de usuarios. Tareas que requieran mucho tiempo y ocuparía un work process en dialogo pueden ser secuencialmente procesadas en background sin afectar la performance de dialogo. Fundamentos. Work Processe de dialogo deberían estar disponibles para responder a las solicitudes de los usuarios rápidamente, los regursos de dialogo deberían por lo tanto no ser utilizados para ejecuciones prolongadas ya que pueden provocar cuellos de botella en el tiempo de respuesta de dialogo. El parámetro rdisp/max_wprun_time eciste...

Acceder a esta publicación

Creado y Compartido por: Hernan Vasquez Cueto

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Debemos asegurarnos cuando estemos configurando los Jobs, que la mayor parte de los Jobs de background sean configurados con prioridad C (normal).

Acceder a esta publicación

Creado y Compartido por: Andres Castrillon

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

1. Fundamentos ¿Por qué necesitamos procesamiento en background? Para reducir la carga en procesos de diálogo, para planificar tareas regulares en el sistema ¿Qué es un job de background? son procesos no interactivos que se ejecutan detrás de las operaciones interactivas normales. Se ejecutan en paralelo y no molestan a los procesos interactivos (primer plano) y operaciones . ¿Qué podemos realizar en background? en especial tareas que consumen mucho tiempo asi como los backups. Puede ejecutar una de estas 3 acciones 1) Un programa ABAP 2) Un comando externo o 3) Un programa externo ¿Qué condiciones de inicio existen? En un momento determinado (mediante la...

Acceder a esta publicación

Creado y Compartido por: Yarua Victoria Porras Mendoza

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Que es el procesamiento en backgraund o de fondo El procesamiento en backgraund debería escencialmente separar tareas periódicas y que insumen mucho tiempo de aquellas de iteración de usuarios.Tareas que requieren mucho tiempo y ocuparían un work process en dialogo pueden ser secuencialmente procesadas en backgraund in afectar el performance de dialogo. El parámetro rdisp/max_wprun_time existe para limitar el máiximo tiempo de ejecución de un paso de dialogo en un work process de dialogo. Podemos utilizar los procesos de backgraund para tareas que consuman mucho tiempo también se conocen como procesos de batch Normalmente los procesos de backgraund no se utilizan solamente para ejecuciones...

Acceder a esta publicación

Creado y Compartido por: Camilo Andres Cubides Mojica

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Jobs de Background ¿Que es el procesamiento en background o de fondo? El procesamiento en background deberia esencialmente separar tareas periodicas y que insumen mucho tiempo de aquellas de interaccion de usuarios. Tareas que requieren mucho tiempo y ocuparian un work process en dialogo pueden ser secuencialmente procesadas en background sin afectar la performance de dialogo. Un requisito importante para conseguir este objetivo es un dimensionamiento apropiado del sistema, ya que, demasiados procesos de background podria terminar compitiendo por recursos compartidos con procesos de dialogo (memoria principal, CPU). Los programas que deban ejecutarse regularmente y consuman mucho tiempo son planificado como jobs de background en el sistema...

Acceder a esta publicación

Creado y Compartido por: Meyer Macabeo

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!