Saneamento da base do prestador — Salú

Opção 1 — Extrair informações usando modelos de relatório

No sistema HCM XT, é possível executar modelos de relatório que extraem os dados necessários para o saneamento da base do prestador. Os relatórios devem ser salvos no formato .CSV, facilitando a extração dos dados.

Imagem

Os modelos de relatório devem ser executados no módulo Administração de Pessoal ou no Segurança e Medicina.

Cada módulo tem seu próprio relatório. Confira a seguir como executar o relatório corretamente em cada um:

Administração de Pessoal
  1. Faça o download do arquivo FPCO150.zip e descompacte o arquivo de modelo (FPCO150.HCM).
  2. Salve o arquivo descompactado (FPCO150.HCM) no diretório onde os modelos de relatório ficam armazenados (<local de instalação do sistema>\Vetorh\Modelos).
  3. No módulo Administração de Pessoal, acesse o menu: Recursos > Implementações > Executar Relatório (ou use o atalho CTRL + R).
  4. Preencha os campos para que o sistema encontre o modelo que foi salvo no passo 1:
    • Extensão: HCM
    • Categoria: CO (Colaboradores)
    • Número: 150 (Saneamento SST)
  5. Clique em Executar para acessar a tela de entrada do modelo. Se quiser, use os campos dessa tela para filtrar os resultados.
  6. Clique em Ok para emitir o relatório e salve no formato .CSV.
  7. Após a emissão do relatório, importe-o no sistema Salú. (Se precisar de orientações adicionais sobre essa etapa, consulte a documentação oficial da Salú para obter ajuda com a importação de arquivos.)
Segurança e Medicina
  1. Faça o download do arquivo SMCL150.zip e descompacte o arquivo de modelo (SMCL150.GER).
  2. Salve o arquivo descompactado (SMCL150.GER) no diretório onde os modelos de relatório ficam armazenados (<local de instalação do sistema>\Vetorh\Modelos).
  3. No módulo Segurança e Medicina, acesse o menu: Recursos > Implementações > Executar Relatório (ou use o atalho CTRL + R).
  4. Preencha os campos para que o sistema encontre o modelo que foi salvo no passo 1:
    • Extensão: GER
    • Categoria: CL (Colaboradores)
    • Número: 150 (Saneamento SST)
  5. Clique em Executar para acessar a tela de entrada do modelo. Se quiser, use os campos dessa tela para filtrar os resultados.
  6. Clique em Ok para emitir o relatório e salve no formato .CSV.
  7. Após a emissão do relatório, importe-o no sistema Salú. (Se precisar de orientações adicionais sobre essa etapa, consulte a documentação oficial da Salú para obter ajuda com a importação de arquivos.)

Observações

Os modelos de relatório apresentados nesta documentação:

  • servem exclusivamente para fazer o saneamento da base dos prestadores, durante a implantação do Integrador SST. Eles não atendem outros escopos que não sejam o desse processo;
  • contém dados do contrato de trabalho do colaborador, portanto algumas colunas dos relatórios podem estar vazias (sem informação). Isso não impede o processo de saneamento, desde que a informação ausente não seja obrigatória para o processo;
  • estão otimizados para implantar o Integrador SST com o sistema Salú. Se necessário, a pessoa responsável pela implantação pode editá-los para adequá-los ao projeto que estiver implantando. (A edição dos modelos pode ser feita pelo Gerador de Relatórios do HCM XT, no menu: Recursos > Implementações > Gerador Relatórios > Colaborador.)

Opção 2 — Extrair informações usando comandos no banco de dados

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, filiais e centros de custos).

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.

Os exemplos de consultas apresentados nesta documentação contemplam, além das informações básicas para o saneamento da base, campos adicionais que podem ser utilizados por integrações com prestadores de SST, como dados de contato e endereço dos colaboradores, código CBO e descrição dos cargos, além do endereço das filiais.

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.TipCol
R034FUN.NumCad

Campo: MATRÍCULA do colaborador

Formato:

<span class="parametro">TipCol</span>**/**<span class="parametro">NumCad</span>

SISTEMA DA SENIOR

SISTEMA DO PRESTADOR

Tipo de colaborador (TipCol)

Cadastro do colaborador (NumCad)

MATRÍCULA do colaborador

1

10

1/10

Comandos do banco de dados para saneamento da base

Além das informações já apresentadas, os comandos desta seção também retornam, quando cadastrados no sistema, os dados de contato e endereço do colaborador, incluindo e-mail (corporativo e/ou pessoal), telefone, celular, logradouro, número, complemento, bairro, CEP, cidade e UF. Essas informações podem ser utilizadas por integrações com prestadores de SST para processos como a convocação de exames.

SQL Server
    SELECT
          R034FUN.CodFil 'Cod.Unid',
          R030FIL.NomFil 'Nome Unidade',
          CAST(R030ORG.TabOrg AS VARCHAR(200)) + '/' + CAST(R016HIE.CodLoc AS VARCHAR(200)) 'Cod.Setor', R016ORN.NomLoc 'Nome Setor',
          CAST(R030CAR.EstCar AS VARCHAR(200)) + '/' + CAST(R034FUN.CodCar AS VARCHAR(200)) 'Cod.Cargo', R024CAR.TitRed 'Nome Cargo',
          CAST(R034FUN.TIPCOL AS VARCHAR(200))+ '/'+ CAST(R034FUN.NUMCAD AS VARCHAR(200)) 'Matrícula',
          '' 'Cod Funcionário',
          R034FUN.NomFun 'Nome Funcionário',
              CASE
                      WHEN (convert(varchar, R034FUN.DatNas, 103) = '31/12/1900') THEN null
                      ELSE (convert(varchar, R034FUN.DatNas, 103))
                END 'Dt.Nascimento',
          R034FUN.TipSex 'Sexo',
          R010SIT.DesSit 'Situação',
                CASE
                      WHEN (convert(varchar, R034FUN.DatAdm, 103) = '31/12/1900') THEN null
                      ELSE (convert(varchar, R034FUN.DatAdm, 103))
                END 'Dt.Admissão',
          CASE
                WHEN (convert(varchar, R038AFA.DatAfa, 103) = '31/12/1900') THEN null
                ELSE (convert(varchar, R038AFA.DatAfa, 103))
          END 'Dt.Demissão',
          CASE R034FUN.EstCiv
                WHEN 1 THEN 'Solteiro'
                WHEN 2 THEN 'Casado'
                WHEN 3 THEN 'Divorciado'
                WHEN 4 THEN 'Viúvo'
                WHEN 5 THEN 'Concubinato'
                WHEN 6 THEN 'Separado'
                WHEN 7 THEN 'União Estável'
                WHEN 9 THEN 'Outros'
                ELSE 'Solteiro'
          END 'Estado Civil',
          R034FUN.NumPis 'Pis/Pasep',
          CASE R034FUN.tipcon
                WHEN 1 THEN 'Empregado'
                WHEN 2 THEN 'Diretor'
                WHEN 3 THEN 'Trabalhador Rural'
                WHEN 4 THEN 'Aposentado'
                WHEN 5 THEN 'Estágiario'
                WHEN 6 THEN 'Aprendiz'
                WHEN 7 THEN 'Prazo Determinado - Lei 9.601/98'
                WHEN 8 THEN 'Diretor Aposentado'
                WHEN 9 THEN 'Agente Público'
                WHEN 10 THEN 'Professor'
                WHEN 11 THEN 'Cooperador'
                WHEN 12 THEN 'Trabalhador Doméstico'
                WHEN 13 THEN 'Professor Prazo Determinado'
                ELSE 'Empregado'
          END 'Contratação',
          R033PES.NumCid 'Rg',
          R033PES.EstCid 'UF-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',
          R033PES.DddCom 'Código DDD do telefone comercial',
          R033PES.TelCom 'Número do Telefone Comercial',
          R033PES.DddCel 'Código DDD do celular',
          R033PES.NumCel 'Número do celular',
          R033PES.EmaPar 'E-mail particular',
          R033PES.EmaCom 'E-mail comercial',
          R033END.EndCep 'CEP',
          R033END.EndRua 'Endereço residencial',
          R033END.EndNum 'Número do endereço',
          R033END.EndCpl 'Complemento do endereço',
          R074BAI.NomBai 'Bairro',
          R074CID.NomCid 'Cidade',
          R074EST.DesEst '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 <= 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 R033END on (R033END.CodPes = R033PES.CodPes AND R033END.TipEnd = 1 AND R033END.DatAlt = (SELECT MAX(E.DATALT) FROM R033END E WHERE R033PES.CodPes = E.CodPes AND E.TipEnd = 1 AND E.DatAlt <= GETDATE()))
          left join R074BAI on (R074BAI.CodBai = R033END.CodBai AND R074BAI.CodCid = R033END.CodCid)
          left join R074CID on (R074CID.CodCid = R033END.CodCid)
          left join R074EST on (R074CID.CodEst = R074EST.CodEst)
          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,4

Observação

O comando acima considera também os colaboradores que estão demitidos.

Oracle
    SELECT
            R034FUN.CodFil "Cod.Unid",
            R030FIL.NomFil "Nome Unidade",
            R030ORG.TabOrg || '/' || R016HIE.CodLoc "Cod.Setor",
            R016ORN.NomLoc "Nome Setor",
            R030CAR.EstCar || '/' || R034FUN.CodCar "Cod.Cargo",
            R024CAR.TitRed "Nome Cargo",
            R034FUN.TipCol || '/' || R034FUN.NumCad "Matrícula", '' "Cod Funcionário",
            R034FUN.NomFun "Nome Funcionário",
            DECODE(TO_CHAR(R034FUN.DatNas, 'DD/MM/YYYY'), '31/12/1900', null, TO_CHAR(R034FUN.DatNas, 'DD/MM/YYYY')) "Dt.Nascimento",
            R034FUN.TipSex "Sexo",
            R010SIT.DesSit "Situação",
            DECODE(TO_CHAR(R034FUN.DatAdm, 'DD/MM/YYYY'), '31/12/1900', null, TO_CHAR(R034FUN.DatAdm, 'DD/MM/YYYY')) "Dt.Admissão",
            DECODE(TO_CHAR(R038AFA.DATAFA, 'DD/MM/YYYY'), '31/12/1900', null, TO_CHAR(R038AFA.DATAFA, 'DD/MM/YYYY')) "Dt.Demissão",
            CASE R034FUN.EstCiv
                  WHEN 1 THEN 'Solteiro'
                  WHEN 2 THEN 'Casado'
                  WHEN 3 THEN 'Divorciado'
                  WHEN 4 THEN 'Viúvo'
                  WHEN 5 THEN 'Concubinato'
                  WHEN 6 THEN 'Separado'
                  WHEN 7 THEN 'União Estável'
                  WHEN 9 THEN 'Outros'
                  ELSE 'Solteiro'
            END "Estado Civil",
            R034FUN.NumPis "Pis/Pasep",
            CASE R034FUN.tipcon
                  WHEN 1 THEN 'Empregado'
                  WHEN 2 THEN 'Diretor'
                  WHEN 3 THEN 'Trabalhador Rural'
                  WHEN 4 THEN 'Aposentado'
                  WHEN 5 THEN 'Estágiario'
                  WHEN 6 THEN 'Aprendiz'
                  WHEN 7 THEN 'Prazo Determinado - Lei 9.601/98'
                  WHEN 8 THEN 'Diretor Aposentado'
                  WHEN 9 THEN 'Agente Público'
                  WHEN 10 THEN 'Professor'
                  WHEN 11 THEN 'Cooperador'
                  WHEN 12 THEN 'Trabalhador Doméstico'
                  WHEN 13 THEN 'Professor Prazo Determinado'
                  ELSE 'Empregado'
            END "Contratação",
            R033PES.NumCid "Rg",
            R033PES.EstCid "UF-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",
            R033PES.DddCom "Código DDD do telefone comercial",
            R033PES.TelCom "Número do Telefone Comercial",
            R033PES.DddCel "Código DDD do celular",
            R033PES.NumCel "Número do celular",
            R033PES.EmaPar "E-mail particular",
            R033PES.EmaCom "E-mail comercial",
            R033END.EndCep "CEP",
            R033END.EndRua "Endereço residencial",
            R033END.EndNum "Número do endereço",
            R033END.EndCpl "Complemento do endereço",
            R074BAI.NomBai "Bairro",
            R074CID.NomCid "Cidade",
            R074EST.DesEst "Estado"
      FROM R034FUN
            inner join R030EMP on (R030EMP.NumEmp = R034FUN.NumEmp)
            inner join R030CAR on (R030CAR.NumEmp = R030EMP.NumEmp AND R030CAR.EstCar = R034FUN.EstCar AND R030CAR.DatAlt = (SELECT MAX(DATALT) FROM R030CAR C WHERE R030EMP.NumEmp = C.NumEmp AND C.DatAlt <= 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 <= 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(DATINI) FROM R016HIE H WHERE R034FUN.TabOrg = H.TabOrg AND R034FUN.NumLoc = H.NumLoc AND H.DatIni <= 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 R033END on (R033END.CodPes = R033PES.CodPes AND R033END.TipEnd = 1 AND R033END.DatAlt = (SELECT MAX(E.DATALT) FROM R033END E WHERE R033PES.CodPes = E.CodPes AND E.TipEnd = 1 AND E.DatAlt <= SYSDATE))
            left join R074BAI on (R074BAI.CodBai = R033END.CodBai AND R074BAI.CodCid = R033END.CodCid)
            left join R074CID on (R074CID.CodCid = R033END.CodCid)
            left join R074EST on (R074CID.CodEst = R074EST.CodEst)
            left join R038AFA on (R038AFA.numemp = R034FUN.NumEmp AND R034FUN.TipCol = R038AFA.tipcol AND R034FUN.NumCad = R038AFA.numcad AND r038afa.sitafa IN (SELECT codsit FROM r010sit WHERE r010sit.tipsit = 7))
            WHERE R034FUN.TipCol IN (1,2)
      ORDER BY 1,3,4

Observação

O comando acima considera também os colaboradores que estão demitidos.


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

R024CAR.EstCar
R024CAR.CodCar

Campo: Código RH do CARGO

Formato:

<span class="parametro">Estcar</span>**/**<span class="parametro">CodCar</span>

SISTEMA DA SENIOR

SISTEMA DO PRESTADOR

Estrutura de cargos (EstCar)

Código do cargo (CodCar)

Título do cargo

Código RH do CARGO

1

0185

ADVOGADA

1/0185

Comandos do banco de dados para saneamento da base

Os comandos desta seção também retornam o código CBO e a descrição do cargo, quando essas informações estiverem cadastradas no sistema.

SQL Server
    SELECT DISTINCT
            R024CAR.EstCar 'Estrutura cargo',
            R024CAR.CodCar 'Código cargo',
            R024CAR.TitRed 'Título cargo',
            CAST(R024CAR.ESTCAR AS VARCHAR(10))+'/'+ CAST(R024CAR.CODCAR AS VARCHAR(100)) 'CÓDIGO RH DO CARGO',
            R024CAR.CodCbo 'CBO do cargo',
            R024CAR.DesSum 'Descrição sumária do cargo'
      FROM R024CAR, R034FUN, R010SIT
      WHERE (R024CAR.DatExt >= getdate() OR CAST(R024CAR.DatExt AS DATE) = '1900-12-31')
            AND R024CAR.ESTCAR = R034FUN.ESTCAR
            AND R024CAR.CODCAR = R034FUN.CODCAR
            AND R034FUN.SITAFA = R010SIT.CODSIT
            AND R010SIT.TIPSIT <> 7
      ORDER BY 1,3
Oracle
    SELECT c.EstCar   "Estrutura cargo",
          c.CodCar   "Código cargo",
          c.TitRed   "Título cargo",
          c.EstCar || '/' || c.CodCar "Código RH do CARGO",
          c.CodCbo   "CBO do cargo",
          c.DesSum   "Descrição sumária do cargo"
      FROM R024CAR c
    WHERE (c.DatExt >= SYSDATE OR c.DatExt = TO_DATE('1900-12-31','YYYY-MM-DD'))
      AND EXISTS (
            SELECT 1
              FROM R034FUN f, R010SIT s
              WHERE f.EstCar = c.EstCar
                AND f.CodCar = c.CodCar
                AND f.SitAfa = s.CodSit
                AND s.TipSit <> 7
          )
    ORDER BY 1, 3;

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

R016HIE.TabOrg
R016HIE.CodLoc

Campo: Código RH do SETOR

Formato:

<span class="parametro">TabOrg</span>**/**<span class="parametro">CodLoc</span>

SISTEMA DA SENIOR

SISTEMA DO PRESTADOR

Tabela de organograma (TabOrg)

Código do setor (CodLoc)

Nome do setor

Código RH do SETOR

1

1.1001.1.1.04.1

Auditoria

1/1.1001.1.1.04.1

Comandos do banco de dados para saneamento da base

SQL Server
  SELECT DISTINCT
        R016HIE.TabOrg 'Tabela organograma',
        R016HIE.CodLoc 'Código setor',
        R016ORN.NomLoc 'Nome setor',
        CAST(R016HIE.TABORG AS VARCHAR(200)) +'/'+ R016HIE.CODLOC 'CÓDIGO RH DO SETOR'
  FROM R016ORN, R016HIE, R034FUN, R010SIT
  WHERE 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')
        AND R016ORN.taborg = R034FUN.taborg
        AND R016HIE.numloc = R034FUN.numloc
        AND R034FUN.SITAFA = R010SIT.CODSIT
        AND R010SIT.TIPSIT &#x3C;> 7
  ORDER BY 1,2,3
Oracle
  SELECT DISTINCT
        R016HIE.TabOrg "Tabela organograma",
        R016HIE.CodLoc "Código setor",
        R016ORN.NomLoc "Nome setor",
        R016HIE.TabOrg || '/' || R016HIE.CodLoc "Código RH do SETOR"
  FROM R016ORN, R016HIE, R034FUN, R010SIT
  WHERE 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'))
        AND R016ORN.taborg = R034FUN.taborg
        AND R016HIE.numloc = R034FUN.numloc
        AND R034FUN.SITAFA = R010SIT.CODSIT
        AND R010SIT.TIPSIT &#x3C;> 7
  ORDER BY 1,2,3

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.CodFil

Campo: Código RH da FILIAL

Formato:

<span class="parametro">CodFil</span>

SISTEMA DA SENIOR

SISTEMA DO PRESTADOR

Código da filial (CodFil)

Nome da filial

Código RH da FILIAL

1001

Filial Demonstração S/A

1001

Comandos do banco de dados para saneamento da base

Além das informações cadastrais da filial, os comandos desta seção retornam o endereço completo da unidade, quando disponível no cadastro. Essa informação pode ser utilizada por prestadores de SST conforme a necessidade da integração.

SQL Server
    SELECT
          R030FIL.NumEmp 'Empresa',
          R030EMP.NomEmp 'Nome empresa',
          R030FIL.CodFil 'Código filial',
          R030FIL.NomFil 'Nome da Filial',
          R030FIL.RazSoc 'Razão social da filial',
          R030FIL.CodFil 'Código RH da Filial',
          CASE R030FIL.TipIns
                WHEN 1 THEN 'CNPJ'
                WHEN 2 THEN 'CEI'
                WHEN 3 THEN 'CPF'
                ELSE null
          END 'Tipo de inscrição',
          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
                WHEN 2 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,5) + '/' +
                                  SUBSTRING(CONVERT(CHAR, REPLACE(R030FIL.NumCGC, '.', '')),11,2))
                      END
                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 null
          END 'Número de inscrição',
                CASE
                            WHEN (R030FIL.InsCei = 0) THEN null
                            ELSE R030FIL.InsCei
                END 'Número de inscrição CEI',
                CASE
                            WHEN (R030FIL.NumCno = 0) THEN null
                            ELSE R030FIL.NumCno
                END 'Número de inscrição no CNO',
                CASE
                            WHEN (R030FIL.NCaepf = 0) THEN null
                            ELSE R030FIL.NCaepf
                END 'Número de inscrição no CAEPF',
          R030FIL.EndFil 'Endereço',
          R030FIL.EndNum 'Número',
          R030FIL.CplFil 'Complemento',
          R030FIL.CodCep 'CEP',
        R074BAI.NomBai 'Bairro',
        R074CID.NomCid 'Cidade',
        R074EST.DesEst 'Estado'
    FROM R030FIL 
        LEFT JOIN R030EMP ON (R030EMP.NumEmp = R030FIL.NumEmp)
        LEFT JOIN R074BAI ON (R074BAI.CodBai = R030FIL.CodBai AND R074BAI.CodCid = R030FIL.CodCid)
        LEFT JOIN R074CID ON (R074CID.CodCid = R030FIL.CodCid AND R074CID.CodEst = R030FIL.CodEst)
        LEFT JOIN R074EST ON (R074EST.CodEst = R030FIL.CodEst AND R074EST.CodPai = R030FIL.CodPai)
    ORDER BY 1,3,4
Oracle
  SELECT
        R030FIL.NumEmp "Empresa",
        R030EMP.NomEmp "Nome empresa",
        R030FIL.CodFil "Código filial",
        R030FIL.NomFil "Nome da Filial",
        R030FIL.RazSoc "Razão social da filial",
        R030FIL.CodFil "Código RH da FILIAL",
        CASE R030FIL.TipIns
        WHEN 1 THEN
              'CNPJ'
        WHEN 2 THEN
              'CEI'
        WHEN 3 THEN
              'CPF'
        ELSE NULL
        END "Tipo de inscrição",
        CASE R030FIL.TipIns
        WHEN 1 THEN
              DECODE(REPLACE(R030FIL.NumCGC, '.', ''), null, null,
              SUBSTR(REPLACE(R030FIL.NumCGC, '.', ''),1,2) || '.' ||
              SUBSTR(REPLACE(R030FIL.NumCGC, '.', ''),3,3) || '.' ||
              SUBSTR(REPLACE(R030FIL.NumCGC, '.', ''),6,3) || '/' ||
              SUBSTR(REPLACE(R030FIL.NumCGC, '.', ''),9,4) || '-' ||
              SUBSTR(REPLACE(R030FIL.NumCGC, '.', ''),13,2))
        WHEN 2 THEN
              DECODE(REPLACE(R030FIL.NumCGC, '.', ''),null, null,
              SUBSTR(REPLACE(R030FIL.NumCGC, '.', ''),1,2) || '.' ||
              SUBSTR(REPLACE(R030FIL.NumCGC, '.', ''),3,3) || '.' ||
              SUBSTR(REPLACE(R030FIL.NumCGC, '.', ''),6,5) || '/' ||
              SUBSTR(REPLACE(R030FIL.NumCGC, '.', ''),11,2))
        WHEN 3 THEN
              DECODE(REPLACE(R030FIL.NumCGC, '.', ''), 0, ' ',
              SUBSTR(REPLACE(R030FIL.NumCGC, '.', ''),1,3) ||'.'||
              SUBSTR(REPLACE(R030FIL.NumCGC, '.', ''),4,3) ||'.'||
              SUBSTR(REPLACE(R030FIL.NumCGC, '.', ''),7,3) ||'-'||
              SUBSTR(REPLACE(R030FIL.NumCGC, '.', ''),10,2))
        ELSE null
        END "Número de inscrição",
              DECODE(R030FIL.InsCei, 0, null, R030FIL.InsCei) "Número de inscrição CEI",
              DECODE(R030FIL.NumCno, 0, null, R030FIL.NumCno) "Número de inscrição CNO",
              DECODE(R030FIL.NCaepf, 0, null, R030FIL.NCaepf) "Número de inscrição CAEPF",
        R030FIL.EndFil "Endereço",
        R030FIL.EndNum "Número",
        R030FIL.CplFil "Complemento",
        R030FIL.CodCep "CEP",
      R074BAI.NomBai "Bairro",
      R074CID.NomCid "Cidade",
      R074EST.DesEst "Estado"
      FROM R030FIL
              LEFT JOIN R030EMP ON (R030EMP.NumEmp = R030FIL.NumEmp)
          LEFT JOIN R074BAI ON (R074BAI.CodBai = R030FIL.CodBai AND R074BAI.CodCid = R030FIL.CodCid)
          LEFT JOIN R074CID ON (R074CID.CodCid = R030FIL.CodCid AND R074CID.CodEst = R030FIL.CodEst)
          LEFT JOIN R074EST ON (R074EST.CodEst = R030FIL.CodEst AND R074EST.CodPai = R030FIL.CodPai)
  ORDER BY 1,3,4

Centros de custos

Ligação dos registros

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

Registro no sistema da Senior

Registro no prestador SST

Exemplo

R018CCU.CodCcu

Campo: Código RH do CENTRO DE CUSTO

Formato:

<span class="parametro">CodCcu</span>

SISTEMA DA SENIOR

SISTEMA DO PRESTADOR

Código do centro de custo (CodCcu)

Nome do centro de custo

Código RH do centro de custo

5

Financeiro

5

Comandos do banco de dados para saneamento da base

SQL Server
  SELECT DISTINCT
        R018CCU.NumEmp 'Empresa',
        R030EMP.NomEmp 'Nome empresa',
        R018CCU.CodCcu 'Código centro de custo',
        R018CCU.NomCcu 'Descrição centro de custo',
        R018CCU.CodCcu 'CÓDIGO RH DO CENTRO DE CUSTO'
  FROM R030EMP, R018CCU, R034FUN, R010SIT
  WHERE R018CCU.NUMEMP = R030EMP.NUMEMP
        AND R018CCU.NUMEMP = R034FUN.NUMEMP
        AND R018CCU.CODCCU = R034FUN.CODCCU
        AND (R018CCU.DatExt >= getdate() OR CAST(R018CCU.DatExt AS DATE) = '1900-12-31')
        AND R034FUN.SITAFA = R010SIT.CODSIT
        AND R010SIT.TIPSIT &#x3C;> 7
  ORDER BY 1,3
Oracle
  SELECT DISTINCT
        R018CCU.NumEmp "Empresa",
        R030EMP.NomEmp "Nome empresa",
        R018CCU.CodCcu "Código centro de custo",
        R018CCU.NomCcu "Descrição centro de custo",
        R018CCU.CodCcu "CÓDIGO RH DO CENTRO DE CUSTO"
  FROM R030EMP, R018CCU, R034FUN, R010SIT
  WHERE R018CCU.NUMEMP = R030EMP.NUMEMP
        AND R018CCU.NUMEMP = R034FUN.NUMEMP
        AND R018CCU.CODCCU = R034FUN.CODCCU
        AND (R018CCU.DatExt >= sysdate OR R018CCU.DatExt = TO_DATE('1900-12-31', 'YYYY-MM-DD'))
        AND R034FUN.SITAFA = R010SIT.CODSIT
        AND R010SIT.TIPSIT &#x3C;> 7
  ORDER BY 1,3

Este artigo ajudou você?