SELECT
R030FIL.NumEmp 'Código Empresa Senior',
R030EMP.NomEmp 'Nome empresa Senior',
R030FIL.CodFil 'Código filial Senior',
R030FIL.NomFil 'Nome da Filial Senior',
'COD_RH_' + CAST(R034FUN.NumEmp AS VARCHAR(4)) + '-' + CAST(R034FUN.CodFil AS VARCHAR(4)) + '-' + CAST(R034FUN.TIPCOL AS VARCHAR(1)) + '-' + CAST(R034FUN.NUMCAD AS VARCHAR(15)) 'Funcionario SGG',
'COD_RH_' + CAST(R034FUN.NumEmp AS VARCHAR(4)) + '-' + CAST(R034FUN.CodFil AS VARCHAR(4)) 'Empresa SGG',
CAST(R034FUN.NumEmp AS VARCHAR(4)) + '-' + CAST(R034FUN.CodFil AS VARCHAR(4)) + '-' + CAST(R034FUN.TIPCOL AS VARCHAR(1)) + '-' + CAST(R034FUN.NUMCAD AS VARCHAR(15)) 'Código RH',
'' 'Matrícula RH',
R033PES.NumCid 'RG',
CASE
WHEN R034FUN.NumCPF = 0 THEN ''
WHEN R034FUN.NumCPF IS NULL THEN ''
WHEN ((R034FUN.NumCPF <> 0) AND (LEN(R034FUN.NumCPF)= 1)) THEN (SUBSTRING('0000000000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING('0000000000' + CONVERT(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('0000000000' + CONVERT(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('0000000000' + CONVERT(CHAR, R034FUN.NumCPF),10,2))
WHEN ((R034FUN.NumCPF <> 0) AND (LEN(R034FUN.NumCPF)= 2)) THEN (SUBSTRING('000000000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING('000000000' + CONVERT(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('000000000' + CONVERT(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('000000000' + CONVERT(CHAR, R034FUN.NumCPF),10,2))
WHEN ((R034FUN.NumCPF <> 0) AND (LEN(R034FUN.NumCPF)= 3)) THEN (SUBSTRING('00000000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING('00000000' + CONVERT(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('00000000' + CONVERT(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('00000000' + CONVERT(CHAR, R034FUN.NumCPF),10,2))
WHEN ((R034FUN.NumCPF <> 0) AND (LEN(R034FUN.NumCPF)= 4)) THEN (SUBSTRING('0000000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING('0000000' + CONVERT(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('0000000' + CONVERT(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('0000000' + CONVERT(CHAR, R034FUN.NumCPF),10,2))
WHEN ((R034FUN.NumCPF <> 0) AND (LEN(R034FUN.NumCPF)= 5)) THEN (SUBSTRING('000000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING('000000' + CONVERT(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('000000' + CONVERT(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('000000' + CONVERT(CHAR, R034FUN.NumCPF),10,2))
WHEN ((R034FUN.NumCPF <> 0) AND (LEN(R034FUN.NumCPF)= 6)) THEN (SUBSTRING('00000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING('00000' + CONVERT(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('00000' + CONVERT(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('00000' + CONVERT(CHAR, R034FUN.NumCPF),10,2))
WHEN ((R034FUN.NumCPF <> 0) AND (LEN(R034FUN.NumCPF)= 7)) THEN (SUBSTRING('0000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING('0000' + CONVERT(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('0000' + CONVERT(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('0000' + CONVERT(CHAR, R034FUN.NumCPF),10,2))
WHEN ((R034FUN.NumCPF <> 0) AND (LEN(R034FUN.NumCPF)= 8)) THEN (SUBSTRING('000' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING('000' + CONVERT(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('000' + CONVERT(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('000' + CONVERT(CHAR, R034FUN.NumCPF),10,2))
WHEN ((R034FUN.NumCPF <> 0) AND (LEN(R034FUN.NumCPF)= 9)) THEN (SUBSTRING('00' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING('00' + CONVERT(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('00' + CONVERT(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('00' + CONVERT(CHAR, R034FUN.NumCPF),10,2))
WHEN ((R034FUN.NumCPF <> 0) AND (LEN(R034FUN.NumCPF)= 10)) THEN (SUBSTRING('0' + CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING('0' + CONVERT(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING('0' + CONVERT(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING('0' + CONVERT(CHAR, R034FUN.NumCPF),10,2))
WHEN ((R034FUN.NumCPF <> 0) AND (LEN(R034FUN.NumCPF)= 11)) THEN (SUBSTRING(CONVERT(CHAR, R034FUN.NumCPF),1,3) + '.' + SUBSTRING(CONVERT(CHAR, R034FUN.NumCPF),4,3) + '.' + SUBSTRING(CONVERT(CHAR, R034FUN.NumCPF),7,3) + '-' + SUBSTRING(CONVERT(CHAR, R034FUN.NumCPF),10,2))
ELSE ''
END 'CPF',
R034FUN.NomFun 'Nome Funcionário',
CASE
WHEN (convert(varchar, R034FUN.DatAdm, 103) = '31/12/1900') THEN ''
ELSE (convert(varchar, R034FUN.DatAdm, 103))
END 'Data Admissão',
CASE
WHEN (convert(varchar, R034FUN.DatNas, 103) = '31/12/1900') THEN ''
ELSE (convert(varchar, R034FUN.DatNas, 103))
END 'Data Nascimento',
R034FUN.TipSex 'Sexo',
'COD_RH_' + CAST(R034FUN.NumEmp AS VARCHAR(4)) + '-' + CAST(R034FUN.CodFil AS VARCHAR(4)) + '-' + CAST(R030ORG.TabOrg AS VARCHAR(200)) + '-' + CAST(R016HIE.CodLoc AS VARCHAR(200)) + '-' + CAST(R030CAR.EstCar AS VARCHAR(200)) + '-' + CAST(R034FUN.CodCar AS VARCHAR(200)) 'Id do Cargo',
R024CAR.CodCb2 'CBO',
'' 'Função',
'COD_RH_' + CAST(R034FUN.NumEmp AS VARCHAR(4)) + '-' + CAST(R034FUN.CodFil AS VARCHAR(4)) + '-' + CAST(R030ORG.TabOrg AS VARCHAR(200)) + '-' + CAST(R016HIE.CodLoc AS VARCHAR(200)) 'Id do Setor',
R016ORN.NomLoc 'Setor',
'' 'NIT',
'' 'CTPS',
'' 'Vínculo',
'' 'Matrícula',
'' 'Categoria',
CASE
WHEN (convert(varchar, R038AFA.DatAfa, 103) = '31/12/1900') or R038AFA.DatAfa is null THEN 'Ativo'
ELSE 'Demitido'
END 'Situação',
CASE
WHEN (convert(varchar, R038AFA.DatAfa, 103) = '31/12/1900') or R038AFA.DatAfa is null THEN ''
ELSE (convert(varchar, R038AFA.DatAfa, 103))
END 'Data de Demissão',
'' 'Descrição das atividades',
'' 'Requisitos da Função',
'' 'Recomendações da Função',
'' 'Procedimentos em caso de acidentes',
'' 'Responsabilidades do Empregado',
'' 'Observações',
'' 'Informações Adicionais',
'' 'Fone-Comercial',
'' 'Fone-Celular',
'' 'Email',
'' 'CEP',
'' 'Logradouro',
'' 'Número',
'' 'Bairro',
'' 'Cidade',
'' 'Estado',
'' 'Modelo OS',
'' 'Campo 1',
'' 'Campo 2',
'' 'Campo 3',
'' 'Campo 4',
'' 'Campo 5',
'' 'Campo 6',
'' 'Campo 7',
'' 'Campo 8',
'' 'Campo 9',
'' 'Campo 10',
'' 'Candidato'
FROM 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)
left join R038AFA on (R038AFA.numemp = R034FUN.NumEmp AND R038AFA.TipCol = R034FUN.tipcol AND R038AFA.NumCad = R034FUN.numcad AND r038afa.sitafa in (SELECT S.codsit FROM r010sit S WHERE S.tipsit = 7))
WHERE R034FUn.tipcol IN (1,2)
ORDER BY 1,3,7