Saneamiento de la base de proveedores — NexoCS
Extraer informaciones usando comandos en la base de datos
Estos son los comandos SELECT
que se pueden ejecutar en el sistema Senior , para facilitar la extracción de datos. Los comandos están divididos por tipo de información (empleados, ramas, sectores, puestos y puestos de trabajo).
Instrucciones:
- Utilice los comandos de esta página para consultar los registros en la base de datos.
- Exporte los resultados de la consulta a un archivo en formato .XLS o .CSV.
- Envíe el archivo exportado al proveedor de SST.
Al recibir el archivo exportado, el proveedor de SST debe limpiar la base de datos en el sistema NexoCS . Para realizar el saneamiento, el proveedor puede elegir entre:
- importar el archivo ; o
- ajustar manualmente los registros existentes en el sistema.
Saneamiento de datos:
Colaboradores
Comandos de base de datos para saneamiento de base (SQL Server)
SELECCIONAR R034FUN.NomFun 'Nombre del empleado', CASO CUANDO R034FUN.TipCol = 1 ENTONCES '1-Empleado' CUANDO R034FUN.TipCol = 2 ENTONCES '2-Tercero' CUANDO R034FUN.TipCol = 3 ENTONCES '3-Partner' ELSE 'Valor no válido' FIN 'Tipo', R034FUN.NumCad 'Código de registro (registro)', CASO CUANDO R034FUN.NumCPF = 0 ENTONCES ' ' CUANDO R034FUN.NumCPF ES NULO ENTONCES ' ' CUANDO ((R034FUN.NumCPF <> 0) Y (LEN(R034FUN.NumCPF)= 1)) ENTONCES (SUBSTRING('0000000000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING( '0000000000' + CONVERTIR(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('0000000000' + CONVERTIR(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('0000000000 ' + CONVERTIR(CHAR, R034FUN.NumCPF),10,2)) CUANDO ((R034FUN.NumCPF <> 0) Y (LEN(R034FUN.NumCPF)= 2)) ENTONCES (SUBSTRING('000000000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING( '000000000' + CONVERTIR(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('000000000' + CONVERTIR(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('000000000 ' + CONVERTIR(CHAR, R034FUN.NumCPF),10,2)) CUANDO ((R034FUN.NumCPF <> 0) Y (LEN(R034FUN.NumCPF)= 3)) ENTONCES (SUBSTRING('00000000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING( '00000000' + CONVERTIR(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('00000000' + CONVERTIR(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('00000000 ' + CONVERTIR(CHAR, R034FUN.NumCPF),10,2)) CUANDO ((R034FUN.NumCPF <> 0) Y (LEN(R034FUN.NumCPF)= 4)) ENTONCES (SUBSTRING('0000000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING( '0000000' + CONVERTIR(CHAR, R034FUN.NumCPF),4,3) + '.' + CONVERTIR(CHAR, R034FUN.NumCPF),10,2)) CUANDO ((R034FUN.NumCPF <> 0) Y (LEN(R034FUN.NumCPF)= 5)) ENTONCES (SUBSTRING('000000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING( '000000' + CONVERTIR(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('000000' + CONVERTIR(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('000000 ' + CONVERTIR(CHAR, R034FUN.NumCPF),10,2)) CUANDO ((R034FUN.NumCPF <> 0) Y (LEN(R034FUN.NumCPF)= 6)) ENTONCES (SUBSTRING('00000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING( '00000' + CONVERTIR(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('00000' + CONVERTIR(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('00000 ' + CONVERTIR(CHAR, R034FUN.NumCPF),10,2)) CUANDO ((R034FUN.NumCPF <> 0) Y (LEN(R034FUN.NumCPF)= 7)) ENTONCES (SUBSTRING('0000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING( '0000' + CONVERTIR(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('0000' + CONVERTIR(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('0000 ' + CONVERTIR(CHAR, R034FUN.NumCPF),10,2)) CUANDO ((R034FUN.NumCPF <> 0) Y (LEN(R034FUN.NumCPF)= 8)) ENTONCES (SUBSTRING('000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING( '000' + CONVERTIR(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('000' + CONVERTIR(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('000 ' + CONVERTIR(CHAR, R034FUN.NumCPF),10,2)) CUANDO ((R034FUN.NumCPF <> 0) Y (LEN(R034FUN.NumCPF)= 9)) ENTONCES (SUBSTRING('00' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING( '00' + CONVERTIR(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('00' + CONVERTIR(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('00 ' + CONVERTIR(CHAR, R034FUN.NumCPF),10,2)) CUANDO ((R034FUN.NumCPF <> 0) Y (LEN(R034FUN.NumCPF)= 10)) ENTONCES (SUBSTRING('0' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING( '0' + CONVERTIR(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('0' + CONVERTIR(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('0 ' + CONVERTIR(CHAR, R034FUN.NumCPF),10,2)) CUANDO ((R034FUN.NumCPF <> 0) Y (LEN(R034FUN.NumCPF)= 11)) ENTONCES (SUBSTRING(CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING(CONVERT(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBCADENA(CONVERTIR(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBCADENA(CONVERTIR(CHAR, R034FUN.NumCPF),10,2)) DEMÁS '' FINALIZAR 'CPF', R034FUN.NumEmp 'Código de empresa', R030EMP.EmpName 'Nombre de la empresa', R034FUN.CodFil 'Código de sucursal', R030FIL.NomFil 'Nombre de sucursal', R030ORG.TabOrg 'Tabla de organigrama sectorial', R016HIE.CodLoc 'Código sector', R016ORN.NomLoc 'Nombre sector', R030CAR.EstCar 'Estructura de posición', R034FUN.CodCar 'Código de carga', R024CAR.TitRed 'Nombre de posición', R010SIT.DesSit 'Situación', CASO CUANDO (convert(varchar, R034FUN.DatAdm, 103) = '31/12/1900') ENTONCES nulo ELSE (convertir (varchar, R034FUN.DatAdm, 103)) FIN 'Fecha de admisión', CASO CUANDO (convert(varchar, R038AFA.DatAfa, 103) = '31/12/1900') ENTONCES nulo ELSE (convertir (varchar, R038AFA.DatAfa, 103)) FIN 'Fecha de despido' DESDE R034FUN inner join R030EMP on (R030EMP.NumEmp = R034FUN.NumEmp) inner join R030CAR on (R030CAR.NumEmp = R034FUN.NumEmp AND R030CAR.EstCar = R034FUN.EstCar AND R030CAR.DatAlt = (SELECT MAX(C.DATALT) FROM R030CAR C WHERE R030EMP.NumEmp = C.NumEmp AND C.DatAlt <= GETDATE())) inner join R024CAR on (R024CAR.EstCar = R034FUN.EstCar AND R024CAR.CodCar = R034FUN.CodCar) inner join R030ORG on (R030ORG.NumEmp = R034FUN.NumEmp AND R030ORG.TabOrg = R034FUN.TabOrg AND R030ORG.DatAlt = (SELECT MAX(O.DATALT) FROM R030ORG O WHERE R030EMP.NumEmp = O.NumEmp AND O.DatAlt <= GETDATE())) inner join R016ORN on (R016ORN.TabOrg = R034FUN.TabOrg AND R016ORN.NumLoc = R034FUN.NumLoc) inner join R016HIE on (R016HIE.TabOrg = R034FUN.TabOrg AND R016HIE.NumLoc = R034FUN.NumLoc AND R016HIE.DatIni = (SELECT MAX(H.DATINI) FROM R016HIE H WHERE R034FUN.TabOrg = H.TabOrg AND R034FUN.NumLoc = H.NumLoc AND H.DatIni <= GETDATE())) inner join R030FIL on (R030FIL.NumEmp = R034FUN.NumEmp AND R030FIL.CodFil = R034FUN.CodFil) inner join R010SIT on (R010SIT.CodSit = R034FUN.SitAfa) left join R033PES on (R033PES.CodPES = R034FUN.CodPes) unión izquierda R038AFA en (R038AFA.numemp = R034FUN.NumEmp AND R038AFA.TipCol = R034FUN.tipcol AND R038AFA.NumCad = R034FUN.numcad AND r038afa.sitafa en (SELECCIONE S.codsit DESDE r010sit S DONDE S.tipsit = 7)) DONDE R034FUn.tipcol EN (1,2) ORDENAR POR 1,2,3,4 |
Observación
El comando anterior también considera a los empleados que son despedidos .
Sucursales
Comandos de base de datos para saneamiento de base (SQL Server)
SELECCIONAR R030FIL.NumEmp 'Código de empresa', R030EMP.NomEmp 'Nombre empresa', R030FIL.CodFil 'Código sucursal', R030FIL.NomFil 'Nombre de sucursal', R030FIL.RazSoc 'Nombre de la empresa brasileña', CASO R030FIL.Consejos CUANDO 1 ENTONCES 'CNPJ' CUANDO 2 ENTONCES 'CEI' CUANDO 3 ENTONCES 'CPF' MÁS nulo END 'Tipo de inscripción', CASO R030FIL.Consejos CUANDO 1 ENTONCES CASO CUANDO (REPLACE(R030FIL.NumCGC, '.', '') = nulo) ENTONCES nulo ELSE (SUBSTRING(CONVERT(CHAR, REPLACE(R030FIL.NumCGC, '.', '')),1,2) + '.' + SUBSTRING(CONVERT(CHAR, REPLACE(R030FIL.NumCGC, '.', '')),3,3) + '.' + SUBSTRING(CONVERT(CHAR, REPLACE(R030FIL.NumCGC, '.', '')),6,3) + '/' + SUBSTRING(CONVERT(CHAR, REPLACE(R030FIL.NumCGC, '.', '')),9,4) + '-' + SUBSTRING(CONVERT(CHAR, REPLACE(R030FIL.NumCGC, '.', '')),13,2)) FIN CUANDO 2 ENTONCES CASO CUANDO (REPLACE(R030FIL.NumCGC, '.', '') = nulo) ENTONCES nulo ELSE (SUBSTRING(CONVERT(CHAR, REPLACE(R030FIL.NumCGC, '.', '')),1,2) + '.' + SUBSTRING(CONVERT(CHAR, REPLACE(R030FIL.NumCGC, '.', '')),3,3) + '.' + SUBSTRING(CONVERT(CHAR, REPLACE(R030FIL.NumCGC, '.', '')),6,5) + '/' + SUBSTRING(CONVERT(CHAR, REPLACE(R030FIL.NumCGC, '.', '')),11,2)) FIN CUANDO 3 ENTONCES CASO CUANDO (REPLACE(R030FIL.NumCGC, '.', '') = nulo) ENTONCES nulo ELSE (SUBSTRING(CONVERTIR(CHAR, REPLACE(R030FIL.NumCGC, '.', '')),1,3) + '.' + SUBSTRING(CONVERT(CHAR, REPLACE(R030FIL.NumCGC, '.', '')),4,3) + '.' + SUBSTRING(CONVERT(CHAR, REPLACE(R030FIL.NumCGC, '.', '')),7,3) + '-' + SUBSTRING(CONVERT(CHAR, REPLACE(R030FIL.NumCGC, '.', '')),10,2)) FIN MÁS nulo FIN 'Número de registro', CASO CUANDO (R030FIL.InsCei = 0) ENTONCES nulo ELSE R030FIL.InsCei END 'Número de registro CEI', CASO CUANDO (R030FIL.NumCno = 0) ENTONCES nulo DE LO CONTRARIO R030FIL.NumCno END 'Número de registro CNO', CASO CUANDO (R030FIL.NCaepf = 0) ENTONCES nulo ELSE R030FIL.NCaepf END 'Número de registro CAEPF' DESDE R030FIL, R030EMP DÓNDE R030Emp.NumEmp = R030FIL.NumEmp ORDENAR POR 1,3,4 |
Sectores (Ubicaciones)
Comandos de base de datos para saneamiento de base (SQL Server)
SELECCIONAR DISTINTO R016HIE.TabOrg 'Tabla organigrama', R016HIE.CodLoc 'Código sector', R016ORN.NomLoc 'Nombre del sector' DE R016ORN, R016HIE, R034FUN, R010SIT DONDE R016ORN.TabOrg = R016HIE.TabOrg AND R016ORN.NumLoc = R016HIE.NumLoc Y R016HIE.DatIni = (SELECCIONAR MAX(DATINI) DE R016HIE H DONDE R016ORN.TabOrg = H.TabOrg AND R016ORN.NumLoc = H.NumLoc AND H.DatIni <= GETDATE()) AND (R016ORN.DatExt >= getdate() OR CAST(R016ORN.DatExt AS DATE) = '1900-12-31') Y R016ORN.taborg = R034FUN.taborg Y R016HIE.numloc = R034FUN.numloc AND R034FUN.SITAFA = R010SIT.CODSIT AND R010SIT.TIPSIT <> 7 ORDENAR POR 1,2,3 |
Cargos
Comandos de base de datos para saneamiento de base (SQL Server)
SELECCIONAR DISTINTO R024CAR.EstCar 'Estructura cargo', R024CAR.CodCar 'Código cargo', R024CAR.TitRed 'Título de posición' DESDE R024CAR, R034FUN, R010SIT DONDE (R024CAR.DatExt >= getdate() O CAST(R024CAR.DatExt AS DATE) = '1900-12-31') Y R024CAR.ESTCAR = R034FUN.ESTCAR Y R024CAR.CODCAR = R034FUN.CODCAR AND R034FUN.SITAFA = R010SIT.CODSIT AND R010SIT.TIPSIT <> 7 ORDENAR POR 1,2,3 |
Posición
Comandos de base de datos para saneamiento de base (SQL Server)
SELECCIONAR DISTINTO R017POS.EstPos 'Estructura de la estación', R017POS.PosTra 'Código publicado', R017POS.DesRed 'Descripción de la posición' DESDE R017POS, R034FUN, R010SIT DONDE (R017POS.DatExt >= getdate() O CAST(R017POS.DatExt AS FECHA) = '1900-12-31') Y R017POS.ESTPOS = R034FUN.ESTPOS Y R017POS.POSTRA = R034FUN.POSTRA AND R034FUN.SITAFA = R010SIT.CODSIT AND R010SIT.TIPSIT <> 7 ORDENAR POR 1,2,3 |