Árvore de páginas

Memória de Cálculo

Linha de Produto:

Microsiga Protheus

Segmento:

Recursos Humanos

Módulo:

SIGAGPE

Situação/Requisito:

Criar rotina genérica de Memória de Cálculo da Folha de pagamento

Requisito:DRHPAG-10700 
Release:12.1.25

Descrição

Realizada implementação da funcionalidade de geração de Memória de Cálculo para o cálculo de Médias, Adicionais e Benefícios(VT/VR/VA).

Incluídas opções de Consulta em tela e Impressão de Relatório para os logs gerados durante os cálculos.

    Procedimento de implantação

    Seguir cada um dos passos detalhados abaixo para utilização da funcionalidade Memória de Cálculo:


    Atualizações de fontes contempladas no RPO inicial do release 12.1.23:

    Fonte Rotina
    GPEA091 Consulta Memória de Cálculo
    GPER091 Relatório Memória de Cálculo
    GPEA300 Cadastro de Mnemônicos
    GPMNEBRA Mnemônicos Brasil
    GPEA160 Cadastro de Roteiros de Cálculo
    GPEA290 Cadastro de Fórmulas
    GPEXFORM Fórmulas
    GPFORBRA Fórmulas
    GPFO1BRA Fórmulas
    GPFO2BRA Fórmulas
    GPEM020 Cálculo por Roteiros
    GPEXCAL1 Funções de cálculo
    GPEXMED Cálculo de Médias
    GPEM030 Cálculo de Férias
    GPEM040

    Cálculo de Rescisão

    GPEM630 Cálculo de Rescisão
    GPEXRESB Cálculo Rescisão
    GPEXC131 Cálculo 13º

    Atualizações do release:

    Tabelas

    Tabela

    Tabela Nome Compartilhamento Compartilhamento Unidade Compartilhamento Empresa Chave Única
    RFT Cabeçalho Memória de Cálc Func E E E RFT_FILIAL+RFT_MAT+RFT_PROCES+RFT_PERIOD+RFT_SEMANA+RFT_ROTEIR+DTOS(RFT_DATA)+RFT_HORA


    Índice

    Índice Chave Descrição
    01 RFT_FILIAL+RFT_MAT+RFT_PROCES+RFT_PERIOD+RFT_SEMANA+RFT_ROTEIR+DTOS(RFT_DATA)+RFT_HORA Matricula + Processo + Período + Nr.Pagamento + Roteiro + Data + Hora
    02 RFT_FILIAL+RFT_MAT+DTOS(RFT_DATA)+RFT_HORA Matricula + Data + Hora

    Campos

    Campo Ordem Nome Descrição Tipo Campo Tamanho Picture Visual Contexto Grupo de Campos Help
    RFT_FILIAL 01 Filial Filial do Funcionário Caracter 02
    Visual Real 033 Código da Filial do Funcionário calculado.
    RFT_MAT 02 Matrícula Matrícula do Funcionário Caracter 06 999999 Visual Real
    Código da matricula do funcionário calculado.
    RFT_PROCES 03 Processo Processo Caracter 05 @! Visual Real
    Código do processo do funcionário calculado.
    RFT_PERIOD 04 Período Código do Período Caracter 06
    Visual Real
    Código do período calculado.
    RFT_SEMANA 05 Nr.Pagamento Número de Pagamento Caracter 02 99 Visual Real
    Número de pagamento do período calculado.
    RFT_ROTEIR 06 Roteiro Roteiro de Cálculo Caracter 03
    Visual Real
    Código do roteiro calculado.
    RFT_DATA 07 Data Geração Data Geração do Log Data 08
    Visual Real
    Data da geração do cálculo.
    RFT_HORA 08 Hora Geração Hora Geração do Log Caracter 08
    Visual Real
    Horário de geração do cálculo.
    RFT_SITFUN 09 Situação Situação do Funcionário Caracter 01
    Visual Real
    Situação do Funcionário no momento do calculo.
    RFT_USER 10 Usuário Usuário do sistema Caracter 15
    Visual Real
    Usuário do sistema que executou o calculo gravado.

    Tabela

    Tabela Nome Compartilhamento Compartilhamento Unidade Compartilhamento Empresa Chave Única
    RFV Detalhe Memória de Cálc Func E E E RFV_FILIAL+RFV_MAT+RFV_PROCES+RFV_PERIOD+RFV_SEMANA+RFV_ROTEIR+DTOS(RFV_DATA)+RFV_HORA+RFV_SEQUEN

    Índice

    Índice Chave Descrição
    01 RFV_FILIAL+RFV_MAT+RFV_PROCES+RFV_PERIOD+RFV_SEMANA+RFV_ROTEIR+DTOS(RFV_DATA)+RFV_HORA+RFV_SEQUEN Matrícula + Processo + Período + Nr.Pagamento + Roteiro + Data Geracao + Sequencia
    02 RFV_FILIAL+RFV_MAT+DTOS(RFV_DATA)+RFV_HORA Matrícula + Data Geracao + Hora Geracao

    Campos

    Campo Ordem Nome Descrição Tipo Campo Tamanho Picture Visual Contexto Grupo de Campos Help
    RFV_FILIAL 01 Filial Filial do Funcionário Caracter 02
    Visual Real 033 Código de identificação da Filial do Funcionário calculado.
    RFV_MAT 02 Matrícula Matrícula do Funcionário Caracter 06 999999 Visual Real
    Código da Fórmula Processada no cálculo.
    RFV_PROCES 03 Processo Processo Caracter 05 @! Visual Real
    Código do processo do funcionário calculado.
    RFV_PERIOD 04 Período Código do Período Caracter 06 @! Visual Real
    Código do período calculado.
    RFV_SEMANA 05 Nr.Pagamento Número de Pagamento Caracter 02 99 Visual Real
    Código do número de pagamento do período calculado.
    RFV_ROTEIR 06 Roteiro Roteiro de Cálculo Caracter 03 @! Visual Real
    Código do roteiro calculado.
    RFV_DATA 07 Data Geração Data Geração do Log Data 08
    Visual Real
    Data de execução do cálculo para o funcionário.
    RFV_HORA 08 Hora Geração Hora Geração do Log Caracter 08
    Visual Real
    Hora de execução do cálculo para o funcionário.
    RFV_SEQUEN 09 Sequência Sequência do Cálculo Caracter 04
    Visual Real
    Sequencia de execução do cálculo.
    RFV_FORMUL 10 Fórmula Código da Fórmula Caracter 17 @! Visual Real
    Código da Fórmula Processada no calculo.
    RFV_LOG 11 Log Fórmula Log do Cálculo Func/Form Memo 100 @! Visual Real
    Log do processamento da formula.

    Tabela

    Tabela Nome Compartilhamento Compartilhamento Unidade Compartilhamento Empresa Chave Única
    RFW Log Geral Memória de Cálculo C E E RFW_FILIAL+RFW_PROCES+RFW_PERIOD+RFW_SEMANA+RFW_ROTEIR+DTOS(RFW_DTINI)+RFW_HRINI

    Índice

    Índice Chave Descrição
    01 RFW_FILIAL+RFW_PROCES+RFW_PERIOD+RFW_SEMANA+RFW_ROTEIR+DTOS(RFW_DTINI)+RFW_HRINI Processo + Período + Nr.Pagamento + Roteiro + Data Inicial + Hora Inic
    02 RFW_FILIAL+RFW_PROCES+DTOS(RFW_DTINI)+RFW_HRINI Processo + Data Inicial + Hora Inicial
    03 RFW_FILIAL+RFW_PROCES+RFW_ROTEIR+DTOS(RFW_DTINI)+RFW_HRINI Processo + Roteiro + Data Inicial + Hora Inicial


    Campos

    Campo Ordem Nome Descrição Tipo Campo Tamanho Picture Visual Contexto Grupo de Campos Help
    RFW_FILIAL 01 Filial Filial do Processo Caracter 02
    Visual Real 033 Filial do Processo Calculado.
    RFW_PROCES 02 Processo Processo Calculado Caracter 05
    Visual Real
    Código do Processo calculado.
    RFW_PERIOD 03 Período Período Calculado Caracter 06 @! Visual Real
    Código do período calculado.
    RFW_SEMANA 04 Nr.Pagamento Número de Pagamento Caracter 02 99 Visual Real
    Número de Pagamento do Período calculado.
    RFW_ROTEIR 05 Roteiro Roteiro de Cálculo Caracter 03 @! Visual Real
    Código do Roteiro calculado.
    RFW_DTINI 06 Data Inicial Data Inicial do Cálculo Data 08
    Visual Real
    Data inicial do processamento do cálculo.
    RFW_HRINI 07 Hora Inicial Hora Inicial do Cálculo Caracter 08
    Visual Real
    Hora Inicial do processamento de cálculo.
    RFW_DTFIM 08 Data Final Data Final do Cálculo Data 08
    Visual Real
    Data final do processamento do cálculo.
    RFW_HRFIM 09 Hora Final Hora Final do Cálculo Caracter 08
    Visual Real
    Hora final do processamento do cálculo.
    RFW_TEMPO 10 Tempo Total Tempo total (de processamento) Caracter 08
    Visual Real
    Tempo total de processamento do cálculo.
    RFW_TOTPRC 11 Func/Proces Total Func./Processo Numérico 12 @E 999,999,999,999 Visual Real
    Total de Funcionário no Processo calculado.
    RFW_TOTCAL 12 Calculados Total Func. Calculados Numérico 12 @E 999,999,999,999 Visual Real
    Total de Funcionários Calculados (foram processados e geraram resultados)
    RFW_TOTNC 13 Não Calc Total Func.Não Calculados Numérico 12 @E 999,999,999,999 Visual Real
    Total de Funcionários não calculados (foram processados e não geraram resultados)
    RFW_LOG 14 Log Calculo Log Geral do Cálculo Memo 100
    Visual Real
    Log geral do cálculo executado.
    RFW_USER 15 Usuário Usuário do sistema Caracter 15
    Visual Real
    Usuário do sistema que realizou o cálculo.
    RFW_SEQUEN 16 Sequência Sequência de log Caracter 4
    Visual Real
    Sequencia das linhas do log.


    Grupo de Perguntas

    Criado grupo de perguntas para o relatório GPER091 - Relatório Memória de Cálculo por Funcionário

    Pergunta Ordem Tipo Campo Tamanho Tipo Pergunte Validação Consulta Padrão (F3) Help
    Processo 01 Caracter 05 G - digita informação Gp91VldPrc() RCJ - Processos Selecione o Processo de cálculo para impressão do log de memória de cálculo do funcionário.
    Roteiro 02 Caracter 03 G - digita informação Gp91VldRot() SRY - Roteiros Selecione o Roteiro de Cálculo para impressão do log de memória de cálculo por funcionário.
    Período 03 Caracter 06 G - digita informação
    GPR091 - Memória Cálculo Funcionário

    Selecione o Período, Nr. de Pagamento, Data e Hora de Geração do log para impressão do relatório.

    Essas informações serão utilizadas para localizar o log a ser impresso. Cada geração pode possuir diferente número de funcionários gravados pois dependerá do cálculo realizado previamente.

    Necessário preenchimento do Processo e Roteiro previamente.

    Lista dos logs disponíveis para o Processo + Roteiro selecionado. (Para filtrar filial utilize o pergunte 'Filial')

    Nr. Pagamento 04 Caracter 02 S - visualiza


    Data de Geração 05 Data 08 S - visualiza


    Hora de Geração 06 Caracter 08 S - visualiza


    Filial 07 Caracter 99 R - range
    SM0 - Filiais Informe intervalo de filiais que deseja considerar para impressão do relatório.
    Matrícula 08 Caracter 99 R - range
    SRA - Funcionários Informe intervalo de matrículas que deseja considerar para impressão do relatório.


    Acesse: SIGAGPE > Atualizações > Definições de Cálculo > Mnemônicos

    • Altere o Mnemônico P_LMEMCALC para .T. para que possa ser recriadas as fórmulas com o Log ativado.
      Toda vez que este mnemônico for alterado as fórmulas serão recriadas.

    Atenção!

    O mnemônico P_LMEMCALC deve ser desativado após sua utilização para conferência do cálculo, pois estando habilitado durante o processamento normal das rotinas que geram memória de cálculo, acarretará a perda de performance das mesmas.

    Após a realização dos procedimentos citados acima, acesse a aba Funcionalidades para mais detalhes sobre o funcionamento das novas rotinas.

    Quando o mnemônico P_LMEMCALC for ativado, as fórmulas serão atualizadas para executar a gravação do Log de Cálculo por Funcionário.

    A cada fórmula executada, será gravado o Log com as informações de cálculo. (*Limitado, por hora, às formulas para cálculo de médias)

    Fórmulas / funções disponíveis para geração de Log:

    Fórmula Descrição
    GPEXMED

    Calcular Medias de Horas Extras e Asdicionais

    S_BUSMEDF BUSCA MEDIA FERIAS
    S_CALAFAS CALCULO AFASTADOS
    S_CAVISOIN CALCULO AVISO PREVIO INDENIZADO

    S_CMEDFER

    CALCULO DAS MEDIAS PARA FERIAS
    S_GRMEDFER GRAVA MEDIA FERIAS
    S_GRVMEDIA GRAVAR MEDIAS

    S_MEDIA13

    CACULO DE MEDIA 13

    S_CALCPENS

    Calc. Pensao Alim.
    S_RPENS13 CALCULA PENSAO 13. SALARIO
    S_RPENSFER CALCULA PENSAO FERIAS
    S_RPENSPLR CALCULA PENSAO PLR


    Exemplo de fórmula alterada automaticamente para gravação da memória de cálculo


    Quando o mnemônico P_LMEMCALC estiver desativado, a chamada para gravação de log não ocorrerá.

    Opção disponível nas seguintes rotinas

    • Consulta de Cálculo por Funcionário (GPEA090 - SRC)
    • Cálculo de Férias (GPEM030)
    • Cálculo de Rescisão (GPEM040)


    Com usar:

    • Selecione o funcionário desejado no browse da rotina
    • Acione a opção: Outras Ações > Consultar Memória de Cálculo
    • Será apresentada uma tela listando os logs gravados para o funcionário selecionado.
      • Na rotina de Férias, serão listados apenas os logs do roteiro de Férias

      • Na rotina de Rescisão, serão listados apenas os logs do roteiro de Rescisão
      • Na rotina de Consulta de Cálculo serão listados todos os logs existentes.
    • Os registros serão listados em ordem cronológica, do mais novo para o mais antigo.

    • Ao selecionar o registro desejado, dê duplo clique ou Enter para visualizar em detalhe o log.
      • Será aberta uma nova janela com detalhes do log.

      • A tela é dividida em 3 partes.
        • Superior: possui as seguintes informações:

    Matrícula e Nome do Funcionário

          • Data de admissão
          • Situação do funcionário no momento do cálculo
          • Data e hora de geração
          • Usuário do sistema que realizou o cálculo
          • Período, Nr. Pagamento, Processo e Roteiro do cálculo realizado.
        • Inferior Esquerda:

     

          • Lista das fórmulas com log gravado.
          • Ao selecionar o registro, o detalhe do log é exibido no painel direito.
        • Inferior Direita:
        •  
          • Exibição do log da fórmula selecionada no painel esquerdo.

    Opção disponível nas seguintes rotinas

    • Consulta de Cálculo por Funcionário (GPEA090 - SRC)
    • Cálculo de Férias (GPEM030)

    Como usar:

    Configure os parâmetros para selecionar o cálculo que deseja imprimir

    • Processo
      • Selecione o Processo de cálculo que deseja imprimir
    • Roteiro
      • Selecione o Roteiro de cálculo que deseja imprimir
    • Período
      • Através da Consulta Padrão (F3), selecione o Período, Nr. Pagamento, Data e Hora de Geração do cálculo que deseja imprimir.
      • Os registros listados são filtrados pelo Processo e Roteiro informados nas perguntas anteriores.
      • Os registros estão ordenados por Data e Hora de Geração em ordem decrescente, do mais novo ao mais antigo.
    • Filial
      • Pergunta do tipo range. Informe a(s) filial(ais) que deseja imprimir ou mantenha em branco para imprimir todas as filiais do cálculo selecionado.
    • Matrícula
      • Pergunta do tipo range. Informe a(s) matricula(s) que deseja imprimir ou mantenha em branco para imprimir todas as matrículas do cálculo selecionado






    Atenção!

    A impressão do relatório é feita filtrando os registros de log pela chave PROCESSO + PERIODO + NR. PAGAMENTO + ROTEIRO + DATA GERACAO + HORA GERACAO.

    Portanto, a presença de Filiais e Matrículas na impressão do relatório irá depender das Filiais e Matrículas processadas em um único cálculo.

    Exemplos:

    • Cálculo de Férias: realizado para 1 único funcionário. Imprime apenas o funcionário calculado.
    • Cálculo de Férias Coletivas: realizado para vários funcionários. Possível imprimir para todos os funcionários calculados.

    A fim de não onerar demasiadamente o banco de dados, foi incluída a funcionalidade de deleção automática dos logs durante o fechamento do período do roteiro.

    Assim, o sistema irá manter apenas 3 períodos de log e seu histórico: 2 fechados + Período Atual.

    Esse controle é feito pela chave FILIAL + PROCESSO + PERIODO + NR PAGAMENTO + ROTEIRO, de forma mensal.

    Exemplo:

    Processo 00001, Roteiro FERIAS, Período 10/2017 - fechado

    Processo 00001, Roteiro FERIAS, Período 11/2017 - fechado

    Processo 00001, Roteiro FERIAS, Período 12/2017 - aberto

    Ao realizar o fechamento do período de Férias de 12/2017 , então teremos:

    O sistema irá deletar fisicamente os registros do roteiro Ferias de 10/2017 para o processo 00001.

    Mantendo no banco de dados apenas: 11/2017 e 12/2017, mais os registros gerados em 01/2018.