Ayuda sobre productos BOLD:

sincronización de empleados BOLD-Biostar

Página:
< Volver

En este artículo se describe cómo se activa la sincronización de empleados existentes en BOLD para que se carguen automáticamente en Biostar. (Sincro de enroll)

Configuración del fichero BioStar.json

Debe existir un fichero BioStar.json en la carpeta del cliente con la estructura:

{
  "integrationType": 9,
  "URL_API_STD": "https://192.168.13.8",
  "user": "admin",
  "pwd": "......",
  "centros": {
    "All": true,
	"BOLD": true
  },
  "prefixForCards_":"0",
  "incidenciasReloj": [		
  ]
}

Este fichero permite que las sincronizaciones comuniquen con el servidor de Biostar.
Aquí un ejemplo de la ubicación del fichero «C:\Program Files (x86)\Global Planning Solutions\Custom_Files\Integration\configuration\workplanner»

Configuración de la query de enroll en el querycustom

Es necesario que la query GenericEnroll esté definida en el querycustom. Existen varias versiones. La siguiente es la que se utiliza cuando todos los empleados deben fichar en todos los terminales definidos en la lista de terminales de BOLD

<Query Name="GenericEnroll">
		<ParamList_Filtering>
			<Param Type="int" Name="daysFrom" ShowName="Dias" Description="Retorna los empleados con contratos vigentes en el intervalo hoy +- días" Default="15"/>
			<Param Type="int" Name="enrollAll" ShowName="Sólo cambios" Description="Retorna sólo aquellos empleados sin marcajes o bien que hayan cambiado de centro (0) o todos" Default="1"/>
		</ParamList_Filtering>  
		<Return>1</Return>
      <ORACLE>
      <MSSQL>
	<![CDATA[
--declare @daysFrom int
--set @daysFrom = 15
--declare @enrollAll int
--set @enrollAll = 1

	
	select   WorkerName, WorkerExtCode, WorkerFullName,
    tc.nombre as TermName, tc.codext as TermExtCode, 
    'BOLD' as WorkerPlanArea, 'BOLD' as WorkerCenterName, 'BOLD' as userGroupName,CardID,
    convert(varchar, CW.STARTCONTRACT, 126) as ContractStart, convert(varchar, CW.adminend+1, 126) as ContractEnd, '' as PinCode
	
	from 
	(
		
			select w.nombre as WorkerName, w.codext as WorkerExtCode, w.fullname as WorkerFullName,w.cardid as CardID, ID_WPWORKER,min(STARTCONTRACT) as STARTCONTRACT ,  MAX(AdminEnd) as adminend  
			from WPCONTRACTWORKER_TB C
			join wpworker_tb W on W.activo=1 and W.ID = c.id_wpworker and isnull(w.cardid, '') !='' 
			where C.activo = 1 and ID_WPAdminCW is null and startcontract < (getdate()+@daysFrom)  and adminend > (getdate()-5)			
			GROUP BY  ID_WPWORKER, w.nombre, w.codext, w.FULLNAME, w.CARDID
            
	) CW
	
	left join WPCLOCKTERMINAL_TB TC on TC.activo=1 
	where @enrollAll=1 or @enrollAll=@enrollAll
	
	order by WorkerName, TermExtCode desc
	
	]]>
      </MSSQL>
      </ORACLE>
  </Query>

En la anterior consulta, se retornan las columnas:

Equivalencia de columnas entre la query y Biostar

WorkerFullName: Se utiliza para rellenar el campo Nombre de biostar.

CardID: Se utiliza para rellenar el campo ID de biostar.

Crear la tarea de sincronización

Se debe definir una tarea programada (en principio para ejecutarse una vez al día) con el siguiente contenido:

call BOLDXMLConfig.bat
call sincro GenericEnroll 1 1 1 Biostar Update

Was this article helpful?
0 out Of 5 Stars
5 Estrellas 0%
4 Estrellas 0%
3 Estrellas 0%
2 Estrellas 0%
1 Estrellas 0%
5
How can we improve this article?
How Can We Improve This Article?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Contenido