HCM - Rateio - Rateio de Mão de Obra na Rescisão com valor zerado.
Incidente
No módulo de Administração de Pessoal, ao calcular rescisão e consultar os valores de rateio, o sistema está exibindo eventos com valores zerados.
Causa
Este incidente ocorre quando informado no campo Considera Rateio a opção 0 - Cadastro atual com percentual zerado na tela Cálculos / Lançamentos / Rateios / Colaborador.
Ao selecionar a opção "0 - Cadastro atual" no campo Considera Rateio, entende-se que os códigos de rateio e seus respectivos percentuais devem ser preenchidos corretamente. Não existe trava para impedir o preenchimento com percentual zero, o que já foi observado como causa de perda do rateio, zerando os valores associados.
Quando os valores são devidamente informados, o rateio é processado corretamente. Contudo, acreditamos que impedir o lançamento de percentuais zerados compromete a usabilidade da tela. Alterar esse comportamento pode impactar negativamente outros clientes que utilizam a rotina de maneira distinta.
Para evitar situações em que o objetivo é calcular as horas utilizando o rateio padrão do colaborador, recomendamos orientar os usuários a selecionar a opção "1 - Histórico Padrão" no campo "Considera Rateio" no caminho Cálculos / Lançamentos / Rateios / Colaborador.
Explicando o funcionamento da rotina e os impactos desse comportamento:
Ao executar a chamada da função calculaEventos(), o sistema trata os eventos individualmente para apurar o saldo de salários. Esse processo identifica eventos específicos de rescisão, como a característica 31A, de acordo com a categoria do colaborador. Ao localizar a referência para o evento, os dados são armazenados na tabela de movimento, incluindo os rateios associados. Nesse momento, a rotina busca todos os cadastros possíveis de rateio, considerando percentuais individuais do colaborador, por local, centro de custo, ou exceções configuradas.
Os percentuais cadastrados são acumulados em uma variável denominada SOMPER e armazenados em uma estrutura. Exemplo:
ptrEveRat[qtdEveRat].codEve = 126ptrEveRat[qtdEveRat].codRat = 1503ptrEveRat[qtdEveRat].perRat = 0
Ao final da apuração, é realizada uma consistência para validar se o percentual totaliza 100%.
- Se o percentual ultrapassar 100%, o sistema reduz o maior percentual para ajustar.
- Se o percentual for inferior a 100%, o ajuste é feito considerando o rateio padrão cadastrado no histórico mais recente do centro de custo do colaborador.
Assim, quando informado um percentual zero no lançamento individual, a rotina ajusta automaticamente para 100% no rateio padrão. Vale destacar que o sistema não descarta cadastros de rateio indevidos, mas realiza a soma dos percentuais informados e aplica os rateios conforme a configuração de cada tipo: horas/dias úteis, horas extras, INSS, IRRF, entre outros.