SAP nos ofrece un esquema estándar para ejecutar la evaluación de tiempos. Cuando éste no cubre las necesidades de tiempos que tiene nuestra empresa, llega el momento de crearnos un esquema Z y añadir los desarrollos extra que necesitamos mediante nuevas reglas, funciones, etc.
En este artículo, se muestran los pasos a seguir para crear una regla que nos permita, por un lado, obtener los absentismos desbloqueados y por otro, acumularlos en distintas clases de tiempos según su tipo de absentismo.
Más concretamente, veremos cómo acumular las horas de vacaciones aprobadas partiendo de un día con la siguiente tabla TIP:
Para ello, utilizaremos las operaciones de tiempos OUTTPORIGS y OUTTPABTYP; y habrá que seguir tres pasos principales, crear las clases de tiempos, crear la nueva regla y añadir esta regla al esquema de tiempos.
Crear las clases de tiempos
Las clases de tiempos, se crean añadiendo registros en la tabla T555A. Podremos hacerlo directamente desde su vista correspondiente en la SM30 (V_ T555A) o siguiendo la siguiente ruta en la SPRO:
Gestión de tiempos de personal -> Evaluación tiempos -> Opciones de control de evaluación -> Definir clases de tiempos
Para este ejemplo, queremos acumular las horas de vacaciones aprobadas (desbloqueadas) en una única clase de tiempos, por lo tanto, crearemos la clase 9022.
Crear la regla
La regla que vamos a utilizar es la ZP40.
Lo primero, hay que crearla desde la PE02; una vez creada, añadiremos los objetos necesarios para conseguir el resultado propuesto.
Entraremos a la regla filtrando por las clases de tiempos en las que se acumulan las horas de absentismo, que en este caso son la 0120-Tmpo.complement.absent. y la 0220-Tmpo.núcleo absentismo.
Una vez obtenidos los cortes correspondientes a los absentismos del día, comprobaremos el estado de cada uno a través de la operación OUTTPORIGS.
Operación OUTTPORIGS
A partir del indicador de origen de una entrada TIP, puede reconocerse la vía a través de la cual los datos de tiempo han llegado a la evaluación de tiempos.
- (E) Hecho temporal
- (O) Horas extras del infotipo 2005
- (A) Absentismo del infotipo 2001
- (P) Presencia del infotipo 2002
- (R) Servicio del guardia de infotipo 2004
- (D) Par teórico generado
- (C) Motivos de presencias/absentismos
Como ya hemos dicho anteriormente, únicamente nos interesan los absentismos desbloqueados, por ello, encaminaremos la regla hacia la letra A de esta operación y, por el contrario, los absentismos que todavía estén bloqueados saldrán por la letra C.
El siguiente paso es descartar los absentismos que no sean vacaciones, este dato nos lo devuelve la operación OUTTPABTYP.
Operación OUTTPABTYP
A partir del código de absentismo de la tabla TIP, devuelve la clase de absentismo que le corresponde al corte que estemos tratando. En este caso:
- (03) VH-Vacaciones
Finalmente, nos falta acumular las horas de los pares de tiempos que han llegado a este ultimo paso en la clase de tiempos 9022. Esto se consigue utilizando la operación ADDDB9022.
La regla completa quedaría de la siguiente manera:
Añadir la regla al esquema
Por último, desde la PE01, introduciremos la regla creada anteriormente en nuestro esquema de tiempos.
La función que utilizamos a la hora de procesar esta regla es la RTIP, puesto que nos permite leer todos los registros (cortes) de fichajes que tenga almacenados la tabla TIP en ese momento.
Siguiendo estos pasos, podremos crear nuestra propia regla que, al final de la evaluación, en la tabla ZES, mostrará la clase de tiempos 9022 con (en este caso) las dos horas de ese día que corresponden a las vacaciones aprobadas.
Esperamos que este artículo te haya sido de utilidad. No dudes en dejarnos tus preguntas en comentarios o en ponerte en contacto con nuestro Área SAP RRHH.
Excelente! Gracias