Saneamento da base do prestador — Software SGG

Estes são os comandos de SELECT que podem ser executados no sistema da Senior, para facilitar a extração dos dados. Os comandos estão divididos por tipo de informação (colaboradores, cargos, setores e filiais).

Se for necessário extrair informações diferentes dos exemplos, você pode adaptar os comandos para buscar as informações que não constam nos exemplos.

Saneamento de dados:


Colaboradores

Ligação dos registros

A ligação dos registros é feita pela matrícula do colaborador:

Registro no sistema da Senior

Registro no prestador SST

Exemplo

R034FUN.NumEmp
R034FUN.CodFil
R034FUN.TipCol
R034FUN.NumCad

Campo:  Código RH do COLABORADOR

Formato:

<span class="parametro">NumEmp</span>**-**<span class="parametro">CodFil</span>**-**<span class="parametro">TipCol</span>**-**<span class="parametro">NumCad</span>

SISTEMA DA SENIOR

SISTEMA DO PRESTADOR

Cadastro da empresa (NumEmp)

Código da filial (CodFil)

Tipo de colaborador (TipCol)

Cadastro do colaborador (NumCad)

Código RH do COLABORADOR

1

2

1

100

1-2-1-100

Nota

Os valores que compõem o código RH do colaborador devem ser separados por hífens (-), conforme mostra o exemplo acima.

Comandos do banco de dados para saneamento da base

SQL Server
  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 &#x3C;> 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 &#x3C;> 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 &#x3C;> 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 &#x3C;> 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 &#x3C;> 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 &#x3C;> 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 &#x3C;> 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 &#x3C;> 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 &#x3C;> 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 &#x3C;> 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 &#x3C;> 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 &#x3C;= 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 &#x3C;= 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 &#x3C;= 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

Observação

O comando acima considera também os colaboradores que estão demitidos. Além disso, considera somente os tipos Colaboradores e Terceiros.

Oracle
  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_' || R034FUN.NumEmp || '-' || R034FUN.CodFil || '-' || R034FUN.TIPCOL || '-' || R034FUN.NUMCAD "Funcionario SGG",
      'COD_RH_' || R034FUN.NumEmp || '-' || R034FUN.CodFil  "Empresa SGG",
      R034FUN.NumEmp || '-' || R034FUN.CodFil || '-' || R034FUN.TIPCOL || '-' || R034FUN.NUMCAD "Código RH",
      '' "Matrícula RH",
      R033PES.NumCid "RG",
      DECODE(R034FUN.NumCPF, 0, ' ', SUBSTR(TO_CHAR(R034FUN.NumCPF),1,3) ||'.'|| SUBSTR(TO_CHAR(R034FUN.NumCPF),4,3) ||'.'|| SUBSTR(TO_CHAR(R034FUN.NumCPF),7,3) ||'-'|| SUBSTR(TO_CHAR(R034FUN.NumCPF),10,2)) "CPF",
      R034FUN.NomFun "Nome Funcionário",
      DECODE(TO_CHAR(R034FUN.DatAdm, 'DD/MM/YYYY'), '31/12/1900', null, TO_CHAR(R034FUN.DatAdm, 'DD/MM/YYYY')) "Data Admissão",
      DECODE(TO_CHAR(R034FUN.DatNas, 'DD/MM/YYYY'), '31/12/1900', null, TO_CHAR(R034FUN.DatNas, 'DD/MM/YYYY')) "Data Nascimento",
      R034FUN.TipSex "Sexo",
      'COD_RH_' || R034FUN.NumEmp || '-' || R034FUN.CodFil || '-' || R030ORG.TabOrg || '-' || R016HIE.CodLoc || '-' || R030CAR.EstCar || '-' || R034FUN.CodCar "Id do Cargo",
      R024CAR.CodCb2 "CBO",
      '' "Função",
      'COD_RH_' || R034FUN.NumEmp || '-' || R034FUN.CodFil || '-' || R030ORG.TabOrg || '-' || R016HIE.CodLoc "Id do Setor",
      R016ORN.NomLoc "Setor",
      '' "NIT",
      '' "CTPS",
      '' "Vínculo",
      '' "Matrícula",
      '' "Categoria",
      CASE 
          WHEN (R038AFA.DATAFA = TO_DATE('1900-12-31', 'YYYY-MM-DD') or R038AFA.DatAfa is null) THEN 'Ativo'
          ELSE 'Demitido'
      END "Situação",
      DECODE(TO_CHAR(R038AFA.DATAFA, 'DD/MM/YYYY'), '31/12/1900', null, TO_CHAR(R038AFA.DATAFA, 'DD/MM/YYYY')) "Data de Demissão",
      '' "Descrição das atividades",
      '' "Requisitos da Função",
      '' "Recomendações da Função",
      '' "Procedimentos em 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 &#x3C;= SYSDATE))
        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 &#x3C;= SYSDATE))
        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 &#x3C;= SYSDATE))
        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

Observação

O comando acima considera também os colaboradores que estão demitidos. Além disso, considera somente os tipos Colaboradores e Terceiros.


Cargos

Ligação dos registros

A ligação dos registros é feita pelo código RH do cargo:

Registro no sistema da Senior

Registro no prestador SST

Exemplo

R030FIL.NumEmp
R030FIL.CodFil
R030ORG.TabOrg
R016HIE.CodLoc
R030CAR.EstCar
R034FUN.CodCar

Campo: Código RH do CARGO

Formato:

<span class="parametro">NumEmp</span>**-**<span class="parametro">CodFil</span>**-**<span class="parametro">TabOrg</span>**-**<span class="parametro">CodLoc</span>**-**<span class="parametro">Estcar</span>**-**<span class="parametro">CodCar</span>

SISTEMA DA SENIOR

SISTEMA DO PRESTADOR

Código da empresa (NumEmp)

Código da filial (CodFil)

Tabela de organograma (TabOrg)

Código do local (CodLoc)

Estrutura de cargos (EstCar)

Código do cargo (CodCar)

Título do cargo

Código RH do CARGO

1

2

10

1.01.02

5

30

ADVOGADA

1-2-10-1.01.02-5-30

Nota

Os valores que compõem o código RH do cargo devem ser separados por hífens (-), conforme mostra o exemplo acima.

Comandos do banco de dados para saneamento da base

SQL Server
  SELECT DISTINCT
    R030FIL.NumEmp 'Código Empresa Senior',
        R030EMP.NomEmp 'Nome empresa Senior',
        R030FIL.CodFil 'Código filial Senior',
        R030FIL.NomFil 'Nome da Filial Senior',	
      R030ORG.TabOrg 'Tabela de organograma Senior',
      R016HIE.CodLoc 'Código do setor Senior',	
      R030CAR.EstCar 'Estrutura de cargo Senior',
      R034FUN.CodCar 'Código do cargo Senior',	
      '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)) 'Cargo 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(R030ORG.TabOrg AS VARCHAR(200)) + '-' + CAST(R016HIE.CodLoc AS VARCHAR(200)) + '-' + CAST(R030CAR.EstCar AS VARCHAR(200)) + '-' + CAST(R034FUN.CodCar AS VARCHAR(200)) 'Código RH',
      '' 'Código eSocial',
      R024CAR.CodCb2 'CBO',
      R024CAR.TitRed 'Cargo',
      '' 'Função',
      '' 'Descrição das Atividades',
      '' 'Requisitos da Função',
      '' 'Recomendações da Função',
      '' 'Procedimentos em caso de acidentes',
      '' 'Responsabilidades do Empregado',
      '' 'Observações',	
      '' 'Id do Setor',
      R016ORN.NomLoc 'Setor',
      '' 'Modelo OS',
      '' 'Campo 1',
      '' 'Campo 2',
      '' 'Campo 3',
      '' 'Campo 4',
      '' 'Campo 5',
      '' 'Campo 6',
      '' 'Campo 7',
      '' 'Campo 8',
      '' 'Campo 9',
      '' 'Campo 10'	
    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 &#x3C;= 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 &#x3C;= 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 &#x3C;= 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)
        AND (R024CAR.DatExt >= getdate() OR CAST(R024CAR.DatExt AS DATE) = '1900-12-31')
    ORDER BY 1,3,11

Observação

O comando acima não considera cargos extintos. Além disso, considera somente cargos que possuem colaborador vinculado.

Oracle
  SELECT DISTINCT
    R030FIL.NumEmp "Código Empresa Senior",
      R030EMP.NomEmp "Nome empresa Senior",
      R030FIL.CodFil "Código filial Senior",
      R030FIL.NomFil "Nome da Filial Senior",
      R030ORG.TabOrg "Tabela de organograma Senior",
      R016HIE.CodLoc "Código do setor Senior",
      R030CAR.EstCar "Estrutura de cargo Senior",
      R034FUN.CodCar "Código do cargo Senior",
      'COD_RH_' || R034FUN.NumEmp || '-' || R034FUN.CodFil || '-' || R030ORG.TabOrg || '-' || R016HIE.CodLoc || '-' || R030CAR.EstCar || '-' || R034FUN.CodCar  "Cargo SGG",
      'COD_RH_' || R034FUN.NumEmp || '-' || R034FUN.CodFil "Empresa SGG",
      R034FUN.NumEmp || '-' || R034FUN.CodFil || '-' || R030ORG.TabOrg || '-' || R016HIE.CodLoc || '-' || R030CAR.EstCar || '-' || R034FUN.CodCar "Código RH",
      '' "Código eSocial",
      R024CAR.CodCb2 "CBO",
      R024CAR.TitRed "Cargo",
      '' "Função",
      '' "Descrição das Atividades",
      '' "Requisitos da Função",
      '' "Recomendações da Função",
      '' "Procedimentos em acidentes",
      '' "Responsabilidades do Empregado",
      '' "Observações",
      '' "Id do Setor",
      R016ORN.NomLoc "Setor",
      '' "Modelo OS",
      '' "Campo 1",
      '' "Campo 2",
      '' "Campo 3",
      '' "Campo 4",
      '' "Campo 5",
      '' "Campo 6",
      '' "Campo 7",
      '' "Campo 8",
      '' "Campo 9",
      '' "Campo 10"   
    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 &#x3C;= SYSDATE))
      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 &#x3C;= SYSDATE))
      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 &#x3C;= SYSDATE))
      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)
      AND (R024CAR.DatExt >= SYSDATE OR R024CAR.DatExt = TO_DATE('1900-12-31', 'YYYY-MM-DD'))
    ORDER BY 1,3,11

Observação

O comando acima não considera cargos extintos. Além disso, considera somente cargos que possuem colaborador vinculado.


Setores (Locais)

Ligação dos registros

A ligação dos registros é feita pelo código RH do setor:

Registro no sistema da Senior

Registro no prestador SST

Exemplo

R030FIL.NumEmp
R030FIL.CodFil
R030ORG.TabOrg
R016HIE.CodLoc

Campo: Código RH do SETOR

Formato:

<span class="parametro">NumEmp</span>**-**<span class="parametro">CodFil</span>**-**<span class="parametro">TabOrg</span>**-**<span class="parametro">CodLoc</span>

SISTEMA DA SENIOR

SISTEMA DO PRESTADOR

Código da empresa (NumEmp)

Código da filial (CodFil)

Tabela de organograma (TabOrg)

Código do setor (CodLoc)

Nome do setor

Código RH do SETOR

1

2

10

1.01.02

Auditoria

1-2-10-1.01.02

Nota

Os valores que compõem o código RH do setor devem ser separados por hífens (-), conforme mostra o exemplo acima.

Comandos do banco de dados para saneamento da base

SQL Server
  SELECT DISTINCT
    R030FIL.NumEmp 'Código Empresa Senior',
      R030EMP.NomEmp 'Nome empresa Senior',
      R030FIL.CodFil 'Código filial Senior',
      R030FIL.NomFil 'Nome da Filial Senior',	
      R030ORG.TabOrg 'Tabela de organograma Senior',
      R016HIE.CodLoc 'Código do setor Senior',
      '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)) 'Setor 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(R030ORG.TabOrg AS VARCHAR(200)) + '-' + CAST(R016HIE.CodLoc AS VARCHAR(200)) 'Código RH',
      R016ORN.NomLoc 'Nome do setor',
      '' 'Local Ambiente', 	
      '' 'Tipo Pessoa',
      '' 'CNPJ',
      '' 'CPF',
      '' 'Tipo específico',
      '' 'Valor Tipo Específico',
      '' 'Razão Social/Estabel. Terceiro',
      '' 'Nome Fantasia/Apelido Terceiro',
      '' 'Descrição do Ambiente',
      '' 'CNAE',
      '' 'Atividade Principal',
      '' 'Grau de Risco',
      '' 'CEP',
      '' 'Logradouro',
      '' 'Número',
      '' 'Bairro',
      '' 'Cidade',
      '' 'Estado'
    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 &#x3C;= 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 &#x3C;= 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 &#x3C;= 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)
      AND R016ORN.TabOrg = R016HIE.TabOrg
      AND R016ORN.NumLoc = R016HIE.NumLoc
      AND R016HIE.DatIni = (SELECT MAX(DATINI) FROM R016HIE H
    WHERE R016ORN.TabOrg = H.TabOrg
      AND R016ORN.NumLoc = H.NumLoc
      AND H.DatIni &#x3C;= GETDATE())
      AND (R016ORN.DatExt >= getdate() OR CAST(R016ORN.DatExt AS DATE) = '1900-12-31')	  
    ORDER BY 1,3,9

Observação

O comando acima não considera setores do organograma atual, que não estejam extintos e que têm colaborador vinculado e considera somente cargos que possuem colaborador vinculado.

Oracle
  SELECT DISTINCT
    R030FIL.NumEmp "Código Empresa Senior",
      R030EMP.NomEmp "Nome empresa Senior",
      R030FIL.CodFil "Código filial Senior",
      R030FIL.NomFil "Nome da Filial Senior",
      R030ORG.TabOrg "Tabela de organograma Senior",
      R016HIE.CodLoc "Código do setor Senior",
      'COD_RH_' || R034FUN.NumEmp || '-' || R034FUN.CodFil || '-' || R030ORG.TabOrg || '-' || R016HIE.CodLoc "Setor SGG",
      'COD_RH_' || R034FUN.NumEmp || '-' || R034FUN.CodFil "Empresa SGG",
      R034FUN.NumEmp || '-' || R034FUN.CodFil || '-' || R030ORG.TabOrg || '-' || R016HIE.CodLoc "Código RH",
      R016ORN.NomLoc "Nome do setor",
      '' "Local Ambiente",
      '' "Tipo Pessoa",
      '' "CNPJ",
      '' "CPF",
      '' "Tipo específico",
      '' "Valor Tipo Específico",
      '' "Razão Social/Estabel. Terceiro",
      '' "Nome Fantasia/Apelido Terceiro",
      '' "Descrição do Ambiente",
      '' "CNAE",
      '' "Atividade Principal",
      '' "Grau de Risco",
      '' "CEP",
      '' "Logradouro",
      '' "Número",
      '' "Bairro",
      '' "Cidade",
      '' "Estado"
    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 &#x3C;= SYSDATE))
      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 &#x3C;= SYSDATE))
      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 &#x3C;= SYSDATE))
      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)
      AND R016ORN.TabOrg = R016HIE.TabOrg
      AND R016ORN.NumLoc = R016HIE.NumLoc    
      AND R016HIE.DatIni = (SELECT MAX(DATINI) FROM R016HIE H
    WHERE R016ORN.TabOrg = H.TabOrg
      AND R016ORN.NumLoc = H.NumLoc
      AND H.DatIni &#x3C;= SYSDATE)
      AND (R016ORN.DatExt >= SYSDATE OR R016ORN.DatExt = TO_DATE('1900-12-31', 'YYYY-MM-DD'))
    ORDER BY 1,3,9

Observação

O comando acima não considera setores do organograma atual, que não estejam extintos e que têm colaborador vinculado e considera somente cargos que possuem colaborador vinculado.


Filiais

Ligação dos registros

A ligação dos registros é feita pelo código RH da filial:

Registro no sistema da Senior

Registro no prestador SST

Exemplo

R030FIL.NumEmp
R030FIL.CodFil

Campo: Código RH da FILIAL

Formato:

<span class="parametro">NumEmp</span>**-**<span class="parametro">CodFil</span>

SISTEMA DA SENIOR

SISTEMA DO PRESTADOR

Código da empresa (NumEmp)

Código da filial (CodFil)

Nome da filial

Código RH da FILIAL

1

1001

Filial Demonstração S/A

1-1001

Nota

Os valores que compõem o código RH da filial devem ser separados por hífens (-), conforme mostra o exemplo acima.

Comandos do banco de dados para saneamento da base

SQL Server
  SELECT DISTINCT
    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)) 'Empresa SGG',
      CAST(R034FUN.NumEmp AS VARCHAR(4)) + '-' + CAST(R034FUN.CodFil AS VARCHAR(4)) 'Código RH',
      R030FIL.RazSoc 'Nome/Razão Social',
      R030FIL.NomFil 'Fantasia/Apelido',
      '' 'Natureza Jurídica',
      CASE R030FIL.TipIns
                WHEN 1 THEN
                      CASE
                            WHEN (REPLACE(R030FIL.NumCGC, '.', '') = null) THEN null
                            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))
                      END
                ELSE ''
        END 'CNPJ',
        CASE R030FIL.TipIns
                WHEN 3 THEN
                      CASE
                            WHEN (REPLACE(R030FIL.NumCGC, '.', '') = null) THEN null
                            ELSE (SUBSTRING(CONVERT(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))
                      END
                ELSE ''
        END 'CPF',
      CASE
            WHEN (R030FIL.InsCei &#x3C;> 0) THEN 'CEI'
            WHEN (R030FIL.NumCno &#x3C;> 0) THEN 'CNO'
            WHEN (R030FIL.NCaepf &#x3C;> 0) THEN 'CAEPF'
            ELSE ''
        END 'Tipo Específico',
      CASE
            WHEN (R030FIL.InsCei &#x3C;> 0) THEN R030FIL.InsCei
            WHEN (R030FIL.NumCno &#x3C;> 0) THEN R030FIL.NumCno
            WHEN (R030FIL.NCaepf &#x3C;> 0) THEN R030FIL.NCaepf
            ELSE ''
        END 'Valor Tipo Específico',
      '' 'IE',
      '' 'IM',	
      '' 'CNAE',	
      '' 'Atividade Principal',
      '' 'Grau de Risco',
      '' 'Fone-Comercial',	
      '' 'Fone-Celular',
      '' 'Email',
      '' 'CEP',
      '' 'Logradouro',
      '' 'Número',
      '' 'Bairro',
      '' 'Cidade',	
      '' 'Estado',
      '' 'Região',
      '' 'Informações Adicionais',
      '' 'Empresa Matriz'
    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 &#x3C;= 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 &#x3C;= 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 &#x3C;= 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,6
Oracle
  SELECT DISTINCT
      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_' || R034FUN.NumEmp || '-' || R034FUN.CodFil "Empresa SGG",
      R034FUN.NumEmp || '-' || R034FUN.CodFil "Código RH",
      R030FIL.RazSoc "Nome/Razão Social",
      R030FIL.NomFil "Fantasia/Apelido",
      '' "Natureza Jurídica",
      CASE R030FIL.TipIns
              WHEN 1 THEN R030FIL.NumCGC                  
              ELSE 0
      END "CNPJ",
      CASE R030FIL.TipIns
              WHEN 3 THEN R030FIL.NumCGC
              ELSE 0
      END "CPF",
      CASE 
          WHEN (R030FIL.InsCei &#x3C;> 0) THEN 'CEI'
          WHEN (R030FIL.NumCno &#x3C;> 0) THEN 'CNO'
          WHEN (R030FIL.NCaepf &#x3C;> 0) THEN 'CAEPF'
          ELSE ''
      END "Tipo Específico",
      CASE
          WHEN (R030FIL.InsCei &#x3C;> 0) THEN R030FIL.InsCei
          WHEN (R030FIL.NumCno &#x3C;> 0) THEN R030FIL.NumCno
          WHEN (R030FIL.NCaepf &#x3C;> 0) THEN R030FIL.NCaepf
          ELSE 0
      END "Valor Tipo Específico",
      '' "IE",
      '' "IM",
      '' "CNAE",
      '' "Atividade Principal",
      '' "Grau de Risco",
      '' "Fone-Comercial",
      '' "Fone-Celular",
      '' "Email",
      '' "CEP",
      '' "Logradouro",
      '' "Número",
      '' "Bairro",
      '' "Cidade",
      '' "Estado",
      '' "Região",
      '' "Informações Adicionais",
      '' "Empresa Matriz"
  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 &#x3C;= SYSDATE))
        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 &#x3C;= SYSDATE))
        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 &#x3C;= SYSDATE))
        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,6

Este artigo ajudou você?