La planificación de personal con SAP. Integración SAP y aTurnos

La planificación de personal con SAP. Integración SAP y aTurnos

28 mayo, 2019 Desactivado Por Pablo García Ansola

aTurnos dispone de un API para que los sistemas de nóminas, ERPs, sistemas de RRHHs o cualquier sistema de terceros pueda integrarse de manera dinámica y de una forma transparente a los servicios. Estas integraciones con los sistemas existentes son inmediatas gracias a la tecnologías Rest Services y JSON que se implementa en aTurnos. El cliente dispone de un Token generado por aTurnos que le permite recuperar de manera segura la información mediante el interfaz definido. La especificación de este lenguaje está solo disponibles para nuestros clientes premium y para cada uno de los módulos que integra aTurnos. La metodología es muy sencilla, con el identificador de usuario y su token generado, los sistemas de terceros del clientes pueden recuperar y volcar datos de forma automática según la funcionalidad presentada en el API.

Toda la capa de presentación de aTurnos hacia sus clientes ya sea desde entornos Web u otros aplicativos utiliza parte de estos servicios para ofrecer la mayor cohesión de sistemas de terceros con aTurnos. El API de aTurnos es dinámico por lo que vamos añadiendo nuevos servicios a las nuevas requisitos que implementamos. Si consideras interesante añadir al servicio a nuestro API por favor no dudes en ponerte en contacto con nosotros. Adjuntamos la ultima versión del API.

Por ejemplo, el módulo de tareas permite identificar la disponibilidad de profesionales con ciertas características para dar citas a clientes de empresas. La empresa quiere mantener su App o Web y que el uso de aTurnos sea totalmente transparente. Los clientes entran en su sistema y empiezan a realizar reservas. Estos sistemas ya desarrollados en el cliente pregunta al API de aTurnos sobre la disponibilidad de profesionales y permite realizar las reservas y analizar las disponibilidades.

Integración con SAP PY/HCM

Para los flujos definidos en aTurnos tenemos diferentes WS para la comunicación en ambos sentidos son SAP:

SAP PY/HCM -> aTurnos

Cuando el maestro de empleados no está en aTurnos, este suele estar en la herramienta de nóminas y desde este maestro se envía al resto de elementos conectados como puede ser aTurnos, en este caso SAP PY/HCM. Cualquier cambio tiene que ser comunicado online o en modo batch con archivos tipo CSV. Esta es una de las primeras decisiones a tomar, nosotros recomendamos online vía API REST. Esto debe de definirse en el arranque del proyecto. Por lo tanto, lo que necesitan nuestros partners para integrarnos con SAP son los siguientes puntos:

1. Alta de empleados y bajas de empleados

  • Alta de empleados y bajas de empleados, es el mismo JSON para el alta y la baje. Se puede llamar de forma online cada vez que exista un cambio en el maestro. Para el refresco diario no hace falta enviar a todos los empleados solo los cambios. Se pueden marcar en SAP los campos modificados.

El campo clave del usuario será el Id de empleado de SAP, aunque a nivel interno y como campo único aTurnos también usará el correo.

Otro de los campos obligatorios del empleado tiene que ser su unidad organizacional para saber en que equipo de aTurnos meter al trabajador. Normalmente se identifica mediante la localización y el centro de imputación, por ejemplo (Hotel1+Restaurante). Si tenemos esto en todos las unidades de organización del cliente lo tenemos arreglado para identificar a que calendario/convenio metemos a cada trabajador. Aquí que definir la nomenclatura

  • Documentación y ejemplos sobre el Web Service:

http://beta.aturnos.com/apidoc/index.html#api-Employee-Import_Employees

  • A revisar con el cliente
  • Hay dos conceptos que son necesarios de revisar, sobretodo para personal que está con un porcentaje menor al 100% o con las altas y bajas dentro del mismo año. Estos son las horas a trabajar en el año y el calculo de las vacaciones. Nosotros podemos realizar el calculo pero muchas veces la empresa hace cálculos particulares. Saber también como afectan cuando hay finiquitos con vacaciones y horas no disfrutadas. ¿Cómo se calculan las vacaciones y horas de contrato para los temporales y cierres de contrato?. También, revisar la parte de las vacaciones/horas en caso de que se disfruten o no entre los diferentes contratos del personal temporal o discontinuo. La mayoría de clientes finiquitan las horas y las vacaciones pero podríamos arrastrarlas al periodo siguiente.
  • También si se tiene que disfrutar todas las vacaciones en el año o tenemos que arrastrarlas al año siguiente. Si esto viene de SAP o lo calculamos nosotros. En otros clientes la hemos ido arrastrando nosotros.

2. Añadir Absentismos de largo recorrido

  • Añadir Absentismos de largo recorrido: Los absentismo de largo recorrido se suelen informar desde nóminas por los procesos de comunicación la administración. Aquí es recomendable que los datos venga de la herramienta de nóminas. Sino lo podemos informar nosotros.
  • Documentación y ejemplos sobre el Web Service:

http://beta.aturnos.com/apidoc/index.html#api-Schedule-addAbsentism

  • Preguntas:
  • Definir que absentismos viene de SAP (IT, Maternidad, etc.). Y definir si SAP quiere tener todos los absentismos como los intra-día que vengan del control de presencia, ejemplo visita a médico. En la mayoría de casos no es solicitado por el cliente tenerlo en SAP pero lo necesitamos confirmar.
    • Si viene de alta (termina la baja) otra vez hay que llamar al Web Service para quitarle el absentismo dentro de la planificación, esto lo hacemos desde el siguiente WS. Si por ejemplo la IT si tenia fecha de alta no hace falta informarlo desde el siguiente WS.

3. Borrado de Absentismos de largo recorrido

  • Borrado Absentismos de largo recorrido: Si cuando los absentismos de absentismo de largo recorrido se han terminado y ha sido diferente a la fecha que se informó, se puede borrar desde este WS.
  • Documentación y ejemplos sobre el Web Service:

http://beta.aturnos.com/apidoc/index.html#api-Schedule-deleteAbsentism

aTurnos -> SAP PY/HCM

Una vez que tenemos planificadas las incidencias hay que devolver a SAP todos los conceptos de nómina. En algunos clientes generamos estos conceptos directamente a terceros que gestionan nominas sino estuviera en SAP (4a). También existe la opción que devolvamos todos los turnos y horas realizadas y sea SAP quien realice los cálculos de los conceptos (4b).

4a. Conceptos de nóminas

  • Conceptos para la generación de nóminas: horas, nocturnidad, extras, complementarias, absentismo (los totales del periodo). Tenemos que definir que conceptos necesita SAP para construir la nómina que podamos sacar de aTurnos.
  • Documentación y ejemplos sobre el Web Service:

http://beta.aturnos.com/apidoc/index.html#api-Schedule-getPayrollConcepts

  • Preguntas:
  • Aquí un tema a tener en cuenta, la administración necesita las horas complementarias y ese proceso suele estar automatizado en SAP, esta información viene de aTurnos pero es algo que tiene que venir forzado sino lo tiene que calcular SAP. Hay que tener en cuenta como generáis la horas complementarias para enviarlas a la administración de forma mensual. Es un campo que puede venir de aTurnos y forzarlo vosotros.
    • Hay que definir en detalle cada uno de los absentismos y de los conceptos necesario para generar la nómina.

4b. Turnos y horas por día y empleado (Del cuadrante y del cuadrante borrador)

Se recupera por cada uno de los trabajadores los turnos, las horas y los absentismos informados. Podemos pasar solo cuando el trabajador tenga que estar de forma presencial, es decir, no pasaremos los absentismos justificados como las vacaciones, formaciones que hallan sido definidas.

  • Documentación y ejemplos sobre el Web Service:

http://beta.aturnos.com/apidoc/index.html#api-Schedule-getAllEmployeeSchedule

Integración con control de presencia

Para ellos tenemos dos opciones. En una opción el cliente tiene un control de presencia operativo donde además se informan las incidencias intra-día o temporales. En la otra opción aTurnos recibe solamente las marcajes y se encarga de tomar las decisiones basadas en las planificación y en las tolerancias para lo cual solo se necesitan volcar los marcajes.

Opción 1. El control de presencia puede informar incidencias

El flujo de información con el control de presencia será en ambos sentidos donde el objetivo es pasar a Centec las planificaciones de la plantilla y Centec nos comunicará las incidencias dentro del día que serán actualizadas en el cuadrante.

aTurnos ->Control de presencia

Los controles de presencia necesitan los maestros de empleados, los maestros de turnos que existen para poder añadir turnos a posteriori, los tipos de horas existentes, los tipos de absentismos existentes y la planificación de turnos y de horas.

El dato clave para identificar al trabajador será el código de SAP igual en que con SAP PY, aunque se puede usar el correo o el id de aTurnos. En aTurnos denominaremos a este campo “id_employee”.

Si existiese personal que puede estar en dos unidades organizaciones (cuadrantes), las horas, turnos o absentismo tienen que venir identificados con ese campo. La nomenclatura será “id_external”.

5. Maestro de empleados

  • Mismo formato que para SAP PY. Es un Archivo JSON con el maestro de empleados y la variables que estén asociadas al mismo (mirar ejemplo en el API Doc). Pero aquí pasaremos el perfil de administración que tiene en aTurnos para saber los niveles de acceso. Esto no es relevante para SAP
  • Documentación y ejemplos sobre el Web Service:

http://beta.aturnos.com/apidoc/index.html#api-Employee-Export_Employees

6. Maestro de turnos y absentismos

EL control de presencia necesita los maestro de turnos y absentismos disponibles. En teoría deben estar sincronizados en el implantación pero puede consultarse. Esto no quiere decir que aTurnos necesite todos los tipos de absentismo que existe en Centec. Pero al menos los que vayan a ser informados por Centec dentro del cuadrante.

  • Documentación y ejemplos sobre el Web Service:

http://beta.aturnos.com/apidoc/index.html#api-Schedule-getShiftTypes

Son necesarios sabes y estar sincronizados de los tipos de turnos que existen.

7. Turnos y horas por día y empleado (Del cuadrante y del cuadrante borrador)

Se recupera por cada uno de los trabajadores los turnos, las horas y los absentismos informados. Para el caso del control de presencia podemos pasar solo cuando el trabajador tenga que estar de forma presencia, es decir, no pasaremos los absentismos justificados como las vacaciones, formaciones, etc.

  • Documentación y ejemplos sobre el Web Service:

http://beta.aturnos.com/apidoc/index.html#api-Schedule-getAllEmployeeSchedule

Control de presencia -> aTurnos

Desde el control de presencia se informan los absentismos y las nuevos turnos/horas según la realidad de marcajes que han realizado los trabajadores

8. Añadir turnos (En cuadrante normal)

  • Centec puede identificar la realización de turnos no planificados por parte del trabajador y añadirlos directamente al cuadrante.
  • Documentación y ejemplos sobre el Web Service:

http://beta.aturnos.com/apidoc/index.html#api-Schedule-AddShift

9. Añadir horas (En cuadrante normal)

  • En el caso de que la jornada no puede identificarse dentro de un turno, Centec puede añadir directamente horas trabajadas con un tipo definido al cuadrante. De forma inicial los tipos de horas que se plantean son normales, complementarias o extras.
  • Documentación y ejemplos sobre el Web Service:

http://beta.aturnos.com/apidoc/index.html#api-Schedule-AddHours

10. Añadir absentismo completo (Solo en el cuadrante)

  • Cuando el trabajador estaba planificado pero no ha sido identificado ninguna entrada ni salida se puede añadir un absentismo total. Esto también puede implicar borrar el turno directamente bajo criterio de Centec.
  • Documentación y ejemplos sobre el Web Service:

http://beta.aturnos.com/apidoc/index.html#api-Schedule-addAbsentism

11. Añadir absentismo temporal (Solo en el cuadrante)

  • Cuando el trabajador estaba planificado pero ha tenido un absentismo parcial dentro de la jornada también puede ser informado bajo criterio de Centec.
  • Documentación y ejemplos sobre el Web Service:

http://beta.aturnos.com/apidoc/index.html#api-Schedule-AddHours

Esto es un esquema de integración básica entre SAP y aTurnos que hemos implantado en varios clientes de forma satisfactoria.