[RESOLVIDO] COMO SABER SE FUNCIONARIO FOI DESLIGADO?

Discussão em 'EMS , HCM e Totvs 11' iniciado por marcoagl, Abril 19, 2011.

Status do Tópico:
Não esta aberto para novas mensagens.
  1. marcoagl

    marcoagl Membro Participativo

    Boa tarde Pessoal...

    Preciso fazer um relatorio especifico sobre o cadastro de funcionarios no hcm210.
    Estou usando como base a tabela de funcionarios, mas preciso saber se o funcionario foi
    desligado. Alguem sabe como identificar se o funcionario foi desligado ( Ex. demitido sem justa causa,
    falecido, pedido de demissao ... ) ?

    Obrigado.
  2. Rogerio

    Rogerio Moderator Moderador Equipe de Suporte

    Tente dar uma olhada na tabela

    func_demit

    ....

    Qualquer posta mais duvidas!!!!
  3. muertebr

    muertebr Membro Participativo

    sit_afast_func....
    Tabela de situações de afastamento de funcionario (FP1600)

    dat_desligto_func na tabela funcionario mesmo, que é basico aki na empresa, quando funcionário é desligado é acrescentado a data.

    ;)
  4. ueluis

    ueluis Membro Participativo

    Olá marcoagl,

    eu não conheço o módulo do ems que faz controle de funcionário pois aqui só lidamos com o módulo produção, porém tentarei contribuir com minha ajuda.

    /* o campo é a chave de sua pesquisa
    tente descobrir em sua tabela qual campo identifica que o funcionário
    foi demitido ou afastado. partindo deste vc vai ter as situações exemplo:

    se tb Funcionario.situação for igual a "Demitido" então:

    Oculte os demitidos e mostre os outros.
    senão
    Oculte os outros e mostre os demitidos.

    como disse identifique qual tabela armazena as informações sobre o funcionário e o principal, qual campo exibe o status do funcionário
    abaixo um pequeno exemplo.

    estou partindo do pondo de vista que vc sabe qual a tabela que armazena as informações dos funcionarios:

    tipo: se data de demissão for diferente de ? (? significa vazio no progress) para achar os que foram demitido, ou ainda, Se data de demissão for igual a ? para achar os não-demitidos

    Código:
    FOR EACH sua_tabela WHERE  sua_tabela.campo /* <>  ?*/ /* filtrar os  não-demitidos*/ /* = ? */ /* filtrar os demitidos*/
    		
    NO-LOCK
            
            BREAK BY sua_tabela.nome_funcionario:
    
    DISPLAY sua_tabela.nome_funcionario sua_tabela.dt-admissão sua_tabela.dt-demissão.
    
    END.
    qualquer duvida posta ai!! :D
  5. mrepetto

    mrepetto Membro Participativo

    é, acho que a maneira mais fácil é filtrar pela data-desligto

    tipo

    for each funcionarios where
    funcionionarios.data-desligto <> ? no-lock:

    acho que é a forma mais fácil.


    att.
  6. felipeml

    felipeml Sem Pontuação

    Olá...
    Não sei se você já resolveu seu problema, pois o post é de abril, mas de qualquer forma fica aqui a minha dica.

    Na tabela FUNCIONARIO possui a data de desligamento do funcionário, porém caso haja uma transferência de empresa ou estabelecimento, está data será preenchida e o funcionário continua ativo na empresa, já que a chave da tabela é o cdn_empresa, cdn_estab e cdn_funcionario.

    A tabela FUNC_DEMIT não é alimentada, damos uma carga nela somente quando fizemos a implantação do sistema, assim temos o histórico de todos os funcionários desligados antes do sistema HCM.

    A tabela que recomendo você utilizar é a HABILIT_RESCIS, essa tabela se refere a habilitação do cálculo da rescisão. Nela tem o campo CDN_SIT_RESCIS_CONTRATUAL que você pode utilizar para dar um FIND na tabela SIT_AFAST e buscar a descrição do motivo da rescisão.

    Qualquer dúvida é só falar.

    Abraço,
    Felipe Martins Laranjeira
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página