✒️SAP Los servicios de actualización
SAP Los servicios de actualización
Los servicios de actualización
Es el encargado de gestionar las modificaciones solicitadas por los usuarios en la base de datos. Estas se pueden generar a través de procesos de trabajo. Los procesos de trabajo son los encargados de atender las solicitudes de los usuarios que utilizan el sistema o propios de este.
SAP utiliza un sistema de despacho llamado dispatcher para realizar el procesamiento de solicitudes e ir asignando las mismas a procesos de trabajo. Existen 7 tipos de procesos de trabajo:
- Diálogo: cumplir con todas las solicitudes de ejecución de pasos de diálogo activados por un usuario o ejecutar un programa de diálogo
- Update: ejecutan solicitudes de actualización o cambio de base de datos asincrónicos controlados po una declaración COMMIT WORK en un proceso de trabajo de diálogo
- Enqueue: administra la tabla de bloqueos en memoria compartida o si las transacciones tiene que sincronizarse ejecuta las operaciones de bloqueo
- Background: ejecutan aquellos programas que se ejecutan sin la integración del usuario o trabajos en segundo plano dependientes del tiempo o controlados por eventos
- Message: enrutan los mensajes entre los servidores de aplicaciones SAP
- Gateway: responsables de la transferencia de mensajes entre sistemas SAP
- Spool: pasan los datos secuenciales a impresoras o formato de impresión a impresora, archivo o base de datos
Con la transacción SM50 visualizamos los procesos de trabajo que están ejecutando en este momento en el servidor. De cada proceso de trabajo visualizamos distinta información pero la más relevante es: el tipo de proceso de trabajo, el status, el programa que se ejecuta, el mandante, el usuario SAP, acción y la tabla de base de datos que modifica.
Las actualización asincrónica y sincrónica
La actualización en la base de datos de un sistema SAP puede ser de dos tipos:
- Asincrónica: generalmente la actualización en la base de datos es asincrónica, el sistema gestiona el requerimiento de actualización del usuario en un proceso aparte. EL usuario se desentiende totalmente del proceso de actualización ya no espera para poder seguir trabajando. Esto genera una mejora del rendimiento. Las actualizaciones asincrónicas pertenecientes a un proceso de trabajo de un usuario son lanzadas en paralelo.
- Sincrónica: es menos frecuente. Se diferencia en que el requerimiento de actualización en la base de datos se genera en el mismo proceso de trabajo que gestiona el resto de peticiones del usuario. De esta forma el proceso de dialogo o batch debe esperar que se realicen antes de seguir procesando las peticiones del usuario. El rendimiento será peor que en las asincrónicas. Las actualizaciones sincrónicas pertenecientes a un proceso de trabajo asociado a un usuario con lanzadas en el mismo proceso obligando a esperar que termine para continuar.
Los usuarios no pueden decidir si los cambios en la base de datos se realizan de forma sincrónica o asincrónica dependen de la programación de la aplicación ene curso. Si se trata de actualizaciones de alguna aplicación hecha a medida o sea z será tarea del analista de la aplicación decidir qué tipo de actualización realizar.
Los procesos de actualización V1 y V2
La actualización asincrónica presenta ademas una ventaja adicional; implementa las LUW. LUW son bloques auto consistentes de datos, de tal forma que su actualización en la base de datos es llevada a cabo completamente. Si ocurriese algún problema en la base de datos la grabación LUW no se realizaría y así evita inconsistencias que surgen al grabar una LUW a medias.
Consisten en 2 tipos:
- V1: actualización crítica primaria
- V2: actualización secundaria no crítica
Esta diferencia permite que el sistema procese los cambios críticos en la base de datos por delnate de los cambios menos críticos asiganandoles distintos LUWs.
Para asegurar la consistencia, las actualizaciones V1 se procesan con la supervisión del gestor de bloques de SAP que impide que varias modificaciones sobre el mismo objeto se realicen concurrentemente.
Dos tipos de LUW:
- De base de datos: una LUW es una secuencia de operaciones de datos que no pueden ser dividías. Las operaciones se realizan en su totalidad o no se realizan. Una transacción de SAP puede incluir muchas LUW de base de datos cada una de las cuales puede ser finalizada con un comite a la base de datos el cual se genera automáticamente.
- De SAP: es un proceso de negocio el cual no puede dividirse, el proceso de ejecuta en sus totalidad o no se ejecuta. Una LUW comienza cada vez que ejecutamos una transacción cuando los cambios a la base de datos de la LUW previa se confirman mediante un comite o cuando los cambios a la base de datos de la LUW previa se cancela y finaliza cuando los cambios a la base de datos han sido cancelados o confirmados.
La monitorización del estado de las actualizaciones del sistema
SAP dispone de una herramienta para la activación y desactivación genérica de los ss de actualización y una monitorización para las que están en curso y de las interrumpidas. Ante un problema grave en la base de datos SAP desactiva las actualizaciones por lo que quedan en espera. Esta desactivación automática se realiza para preservar la integridad de la base de datos y su ejecución queda registrada en el log del sistema. Será tarea de los administradores de SAP/ SAP BASIS de subsanar el error que produjo la desactivación de estas. La actualización es activada automáticamente cada vez que el sistema es arrancado en el servidor. Para realizar el control utilizamos la transacción SM13. En esta se nos muestra si las actualización del sistema está activa o ha sido desactivada. El botón info nos proporciona porque se desactivo (proceso y usuario). Los demás campos son de selección para monitorizar las actualizaciones que han tenido lugar, han fallado o las que están en curso.
Los objetos de bloqueo
SAP tiene un sistema de bloqueos de objetos (documento contable, solicitud de compra, entrada de una tabla base datos) para evitar la modificación concurrente de un objeto. Así se asegura la consistencia. Cuando un usuario accede a modificar un objeto el sistema genera un registro de bloqueo con la información necesaria. Si un segundo usuario intenta modificar ese mismo objeto mientras el primer usuario lo esta utilizando lo tiene bloqueado. Los bloqueos se establecen al iniciar transacciones de modificación y no son liberados hasta que el usuario graba. Toda modificación de un objeto genera un bloqueo. Es tarea del departamento de desarrollo asegurar que las nuevas aplicaciones hechas a medida dentro de SAP generen tales bloqueos. La transacción que nos muestra tales bloqueos es SM12. En la pantalla de la transacción disponemos de parámetro de selección para filtrar tales bloqueos activos. Estos parámetros son: tabla, argumento bloqueado, mandante y usuario. En general el argumento no lo conoceremos ya que depende del objeto que se este modificando. Es más común conocer la tabla o el usuario que esta produciendo ese bloqueo. Para la creación de un objeto de bloqueo utilizamos la transacción SE11.
 
 
 
Sobre el autor
Publicación académica de Luciana Pascazzi, en su ámbito de estudios para el Carrera Consultor Basis NetWeaver.
Luciana Pascazzi
Profesión: Administración de Empresas - Argentina - Legajo: PN48A
✒️Autor de: 31 Publicaciones Académicas
🎓Egresado del módulo:
Disponibilidad Laboral: PartTime
Certificación Académica de Luciana Pascazzi