Ayuda sobre productos BOLD:
Configuración de relojes / terminales
Bajo el apartado «Relojes» del asistente de GT se configura cómo se obtendrá la información de fichajes.
Requisitos previos
Principalmente debe disponer antes de empezar de un fichero en formato texto con los datos de los marcajes y dicho fichero se debe estar actualizando periódicamente en alguna ruta en la red local.
*Para tener información acerca de requisitos previos de hardware & software de terceras partes, relativos a las aplicaciones a instalar accede aquí
*Descargarse el programa de subida de marcajes
Un artículo interesante con configuraciones normalmente necesarias es el siguiente: configuracion-de-gt-en-planificacion
Formatos soportados en los ficheros de marcajes
De forma general los campos que deben aparecer enl cualquier fichero de marcajes son:
- EMPLEADO: código que permita identificar al empleado que ha fichado
- FECHA: fecha en que se ficha
- HORA: hora minutos y segundo en que se ficha
- TERMINAL: identificador del terminal que recoge el fichaje
- MOTIVO: código que representa el motivo del fichaje (ej.: E/S o motivo específico de entrada o de salida)
Atención! El fichero de marcajes que se genere desde herramientas externas para luego cargarlo en GT debe estar en formato UTF-8. No se acepta ningún otro formato.
Base de datos de marcajes
ATENCIÓN: El siguiente contenido es de uso avanzado y su utilización puede ocasionar daños irreparables en la configuración del sistema
La tabla donde se almacenan los marcajes se llama WPCLOCKCONTROL_TB. Las columnas principales son:
- ID_WORKER – Id del trabajador
- CLOCKTS – Fecha y hora del marcaje
- CLOCKTYPE – Motivo del marcaje
- CLOCK_STATUS – Estado del marcaje (el valor 3 indica que está borrado)
- TERM_ID – Id del terminal
Configuración del reloj en GT
Para configurar el reloj en GT hay que ir al Asistente > Relojes
Presionar el botón Añadir. Se abrirá la ventana «Asistente de importación de datos».
1. Instalación
– Informaremos el nombre de la configuración. El nombre tiene que ser distinto a los nombres ya definidos en el listado de relojes, es decir, el sistema no te deja tener 2 relojes con el mismo nombre.
– Formato de los datos: abriremos el desplegable y seleccionaremos el formato correspondiente (en función de la marca del reloj). En caso de que la marca de nuestro reloj no esté definida, lo dejaremos en <nuevo formato> y especificaremos cómo configurar los datos: por «Campos delimitados» (los datos del fichero van separados por un delimitador) o por «Ancho de columnas» (el fichero no contiene ningún delimitador para poder diferenciar los datos).
– Ruta del fichero: es la ruta donde se guardarán los ficheros de marcajes. En versiones Cloud no es necesario definir la ubicación concreta (tan sólo se hace upload de los ficheros). Para versiones onpremise, se puede cambiar si es imprescindible, pero en general debe ubicarse dentro de la carpeta C:\ImportExport\Custom_Files\clockings, por ejemplo C:\ImportExport\Custom_Files\clockings\MiRelojBiostar.
– Fichero local: subiremos un fichero con marcajes de prueba para poder configurarlo en los próximos pasos. Para ello, tenemos que tener guardado en el local dicho fichero, que tendrá que contener como mínimo los campos empleado, fecha, hora terminal y motivo.
Presionaremos «CONTINUAR».
Ejemplo:
2. Configuración
En esta ventana podemos ver un ejemplo de lo que se está leyendo del fichero de marcajes de prueba y así comprobar que sea correcto. Si no es correcto, podemos modificar algunos parámetros para que la lectura sea correcta.
Si en el paso anterior hemos seleccionado <nuevo formato> y «Campos delimitados» o hemos seleccionado la marca de nuestro reloj porque estaba definida, la configuración se realizará mediante «Campos delimitados«. Seguiremos los pasos definidos en 2.1. Campos delimitados.
Si hemos seleccionado <nuevo formato> y «Ancho de columnas«, seguiremos los pasos definidos en 2.2 Ancho de columnas:
2.1. Campos delimitados
– Dejaremos la checkbox «Primera fila de datos del fichero para nombres de los campos» marcada si el fichero contiene una cabecera con los nombres de los campos. En caso contrario la desmarcaremos.
– No es necesario informar el Carácter delimitador si el sistema ya lo detecta automáticamente.
En CONTENIDO INTERPRETADO podemos comprobar si el sistema interpreta correctamente los datos del fichero.
Presionaremos «CONTINUAR».
2.2. Ancho de columnas
Indicaremos la posición inicial y la longitud (ancho) de cada campo. El Valor en fichero nos muestra el valor resultante al configurar el inicio y fin de cada campo.
También podemos comprobar los valores de cada campo en el CONTENIDO INTERPRETADO.
Presionaremos «CONTINUAR».
3. Columnas
Cuando la configuración sea por campos delimitados, seleccionaremos qué campos de la cabecera de nuestro fichero se corresponden con los de Empleado, Fecha, Hora, Motivo y Terminal. Para la configuración por ancho de columnas, los campos Empleado, Fecha, Hora, Motivo y Terminal ya aparecerán cumplimentados con su correspondiente dato del fichero.
Para las dos configuraciones seleccionaremos el tipo de dato de los campos del fichero de marcajes. Todos ellos tienen que informarse como string, excepto la Fecha que será de tipo fecha y la Hora, de tipo hora. Tanto para la fecha como para la hora, además, escogeremos el formato que llega del reloj: Fecha -> YYYYMMDD, YYMMDD, YYYY/MM/DD, etc.; Hora -> HH:mm:ss, HHmm, HH:mm, HHmmss.
Ejemplo de la pantalla para la configuración por campos delimitados:
Presionaremos «CONTINUAR».
4. Final
Por último, presionaremos SÍ para grabar la configuración del reloj.
Se cerrará el asistente. Para visualizar el reloj en el listado de relojes, presionaremos la tecla F5 (refresh).
*Documentación realizada en base la versión 1.8.1
A partir de la versión 2.4 se puede diferenciar en la columna Estado si la recogida de marcajes está activada () o desactivada ().
Envío de marcajes en instalaciones cloud
Cuando se utiliza una instalación cloud no es posible acceder a los ficheros con la información de marcajes, ya que los ficheros se encuentran dentro de la red del cliente. Por este motivo es necesario enviar dicha información al cloud para que sea procesada como si se tratara de una instalación normal.
Para enviar la información de marcajes hay que instalar un programa dentro de la red del cliente. En resumen, la configuración completa de los relojes en instalaciones cloud es la siguiente:
Configuración del lado del servidor: crear el «reloj»
Lo primero es dejar configurado configurar De la misma forma que si tuviéramos el servidor instalado localmente, es necesario configurar un «reloj» en la nube. Para ello, hay que configurar un nuevo reloj desde el Asistente de GT. Los pasos están explicados en el apartado anterior Configuración del reloj en GT.
Nota: el lado del servidor funciona observando permanentemente el contenido de toda una carpeta (de forma similar a la instalación on premise que está supervisando los contenidos de un fichero). Cada vez que un fichero de marcajes aparece se procesa automáticamente y luego se elimina de dicha carpeta. Cuando un archivo no se elimina es porque se han encontrado errores en él y sería razonable reprocesarlo para no perder su información.
Requerimientos técnicos
1. Si la configuración se va realizar de forma remota, el informático del cliente tendrá que proporcionar un acceso remoto a un servidor de su red donde instalar el programa de upload de los marcajes (por ejemplo, usando una conexión con AnyDesk o TeamViewer).
2. Este servidor debe tener acceso a internet (para poder acceder a la url externa de la aplicación cloud).
3. El usuario (y contraseña) que nos proporcionen de esa máquina debe tener permisos de administración, ya que habrá que instalar programas en la carpeta «Program Files» y añadir una tarea programada.
4. Desde esta máquina y con ese usuario se debe tener acceso al fichero de marcajes dentro de su red. Este fichero se llamara, si puede ser marcajes.txt. Alternativamente, si dispone de Biostar (u otro sistema similar) necesitaremos un usuario y password para acceder a este sistema así como la URL de la página web de Biostar.
Si el reloj no es suprema-biostar necesitaremos un fichero de marcajes de ejemplo para poder configurar el reloj en la aplicación GT.
Configurar el load en la red del cliente (tarea de subida de ficheros al cloud)
Es importante verificar que el software de control de los relojes está volcando de forma periódica los marcajes en las carpetas locales que se hayan configurado.
Una vez verificado lo anterior es necesario proceder con la siguiente instalación (tiempo estimado 1h):
Instalación del programa de upload:
El programa de subida de marcajes (script) te lo proporcionará tu proveedor. Las instrucciones están disponibles en el Manual de instalación relojes Suprema en el apartado Sincronización con GT.
Configuración del programa de upload
1. Seguir las instrucciones del programa.
Importante: seleccionar un reloj con el nombre o código que se haya configurado previamente desde el asistente de la aplicación. Por ejemplo: «RelojesTipoA»).
Nota: la dirección del servidor de destino donde enviar los marcajes por defecto es: http://a3gt.wolterskluwer.es/clockings/fileupload
2. Crear la tarea programada de Windows. Una vez configurado el script debemos programar la subida periódica automática de la información al cloud (por ejemplo, cada 5′). Los parámetros son los siguientes:
Desencadenadores: Una vez, repetir cada 5′, indefinidamente Acciones: Iniciar un programa. Programa o script: «C:\Program Files\nodejs\node» (NO olvidar las comillas) Agregar argumentos: uploadClockingsTask Iniciar en: C:\a3GT\clockClient (no poner comillas aquí aunque la carpeta contenga espacios)
Importante: al configurar la tarea de Windows hay que poner como directorio de trabajo la misma carpeta del script.
3. Para verificar la instalación, depositar un archivo con marcajes en el directorio de recogida configurado, tan pronto como la tarea programada se ejecute (o lanzarla manualmente) y el fichero se procese, se eliminará (si hemos habilitado que se eliminen los ficheros una vez procesados). En pocos instantes la información de marcajes estará disponible en la aplicación (y también en la carpeta configurada del servidor dependiendo de la configuración exacta del servidor cloud).
Si fuera necesario repetir la configuración basta con borrar el fichero .json que se haya creado y volver a ejecutar el comando node uploadClockingsTask.js
Nota: si se está utilizando el cloud de demostraciones es posible que esté disponible para el envio de marcajes esta otra dirección: http://bolddemos.gps-plan.com/clockings/fileupload
Para ver un ejemplo concreto de carga de marcajes ver Ejercicio Relojes 1 o utilizar este archivo de marcajes de prueba (formato Digitek).
Utilización de la API de subida de marcajes
Alternativamente es posible enviar el fichero de marcajes utilizando cualquier lenguaje de programación. En este caso la URL exacta se le proporcionará pero será similar a la siguiente:
https://bold.gps-plan.com/clockings/fileupload/codigo_cliente/clockingsType/identificador_del_reloj
Para más información ver la documentación de la API.
Anexos
Anexo 1. Detalle de funcionamiento del script de upload de datos de marcajes
El esquema general de funcionamiento del programa que envia los datos de marcajes al cloud es el siguiente:
- Se calcula los datos que están pendientes de enviar en base a los últimos datos enviados y los nuevos datos proporcionados por los relojes en el nuevo fichero de marcajes local
- Se abre una conexión SSL mediante protocolo HTTPS contra el cloud y se envian la nueva información.
- Se anota localmente los datos enviados.
La secuencia anterior se repite con la periodicidad seleccionada.
Nota: los datos en las carpetas de trabajo de la aplicación no se encriptan (ya que el fichero origen generado depende de cada fabricante de reloj y no todos tienen esa funcionalidad). Por tanto, su seguridad dependerá de que tan sólo los usuarios adecuados tengan permiso para acceder a ellos (como los supervisores de los propios empleados): tanto a las carpetas del programa de subida como a la carpeta donde el software del reloj vuelca esos datos deben quedar protegidas bajo las credenciales adecuadas.
Anexo 2. ¿Qué hacer si no funciona la subida de marcajes?
Si hay algún problema con el procesado de marcajes y no se llegan a volcar en el Gantt, hay que revisar los siguientes puntos:
- Revisar si la recogida de marcajes está activada (Asistente -> Relojes). Si está desactivada, activarla. Si ya está activada, desactivarla y volverla a activar. Validar si con esto queda solventado.
- Revisar la tarea programada del reloj. Ir a la columna «Resultado de última ejecución» y comprobar que las últimas ejecuciones no han dado ningún error. Si está correcto, debería aparecer «La operación se completó correctamente». Si han dado error, analizar el mensaje de error.
- Desde el IIS revisar el pool que procesa los marcajes (normalmente llamado gpsnode o gt). Si está parado, iniciarlo. Si está iniciado, reciclar. Validar si con esto queda solventado.
- Lanzar manualmente el script de subida de marcajes desde una ventana de comandos/PowerShell como administrador. Si el envío de marcajes va bien, aparecerá un mensaje tipo «File uploaded OK». Si da un error, analizar el mensaje de error para poder solventarlo. En caso de necesitar ayuda, contactar con Soporte enviando una captura del mensaje.
- Revisar los logs del iisnode. Ubicados en C:\Program Files (x86)\Global Planning Solutions\gpsnode\iisnode . Si hay errores, analizarlos para entender el origen del problema.
- Eliminar la caché de marcajes (cacheClockings.json). Ubicado en C:\Program Files (x86)\Global Planning Solutions\gpsnode\config\cacheClockings.json . A continuación, ir al IIS y reiniciar el pool que procesa los marcajes. Validar si con esto queda solventado.
Anexo 3. ¿Qué pasa cuando se cambia el CardID de un empleado que ya ha empezado a fichar?
Esta problemática se produce si se da de alta un empleado en un reloj pero no se le pone todavía el CardID en la ficha del empleado. Si el empleado empieza a introducir marcajes el sistema no lo va a identificar correctamente.
Además los marcajes introducidos ya estarán en la caché del reloj. Por lo tanto cuando se ponga el CardID se deberá borrar esta caché. Eso se puede hacer parando el reloj desde el asistente y volviéndolo a iniciar. Los marcajes ya introducidos, si el reloj los reenvía, entonces si que se procesarán correctamente.