Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

A dispensa sem justa causa, que ocorrer durante o período de garantia provisória no emprego, sujeitará o empregador ao pagamento, além das parcelas rescisórias previstas na legislação em vigor, de indenização que serão documentadas aqui (link)


O módulo TOTVS Folha de Pagamento permite configurar mensagens de aviso para informar se o funcionário possui estabilidade nos termos estabelecidos na MP. Também é possível fazer o controle através de Fórmulas Visuais.

Abaixo, exemplificaremos com a sugestão de fórmulas de aviso configurada no parametrizador.

Passo 1: Criar  Utilizar a mesma consulta SQL que retorna os afastamentos de suspensão de contrato de trabalho e licença sem vencimento, conforme orientado aqui. Na minha consulta que coloquei para selecionar além dos afastamentos, o motivo DC, que será usado somente para estes afastamento neste período de calamidade. abaixo para retornar o histórico do BEM:

Bloco de código
languagesql
titleConsulta SQL - AFASTAMENTORetorna registros do Histórico do BEM de tipo de adesão Redução de Jornada de Trabalho
SELECT
DTACORDOBEM,DURACAOBEM,VALORREDUZIDOBEM,DTCANCELAMENTOBEM,DTANTECIPACAOBEM,DIASPRORROGACAOBEM,PERCENTUALREDUCAOBEM
FROM PFHSTBEMSELECT CHAPA, TIPO, DTINICIO, DTFINAL
FROM PFHSTAFT (NOLOCK)
WHERE TIPO IN ('C', 'L') AND MOTIVO = 'DC'codcoligada =:FRM_COLIGADA and chapa =:FRM_CHAPA
ORDER BY DTMUDANCA ASC

Passo 2: Criar uma fórmula que valias Criar um fórmula que validas as condições de estabilidade para suspensão redução de contratoJornada/Salario. Abaixo um exemplo de fórmula usando a Consulta acima, que fórmula que retorna mensagens conforme as regras da MP 936:

Bloco de código
titleFórmula - Estabilidade Afastamentode Redução de Jornada/Salário
DECL DATAINICIODataInicioAcordo;
DECL DATAFIMDiasDuracao;
DECL QUANTDIASDiasProrrog;
DECL CHDataCancelamento;
SE EXECSQL('AFASTAMENTO') = 1;
ENTAO
REPITA
SE RESULTSQL('AFASTAMENTO','CHAPA') = CHAPA;
ENTAODECL DataAntecipacao;
DECL DataFimAcordo;
DECL DuracaoTotal;
DECL DataInicioAcordoAnt;
  
SETVAR (DATAINICIODataInicioAcordoAnt, RESULTSQL('AFASTAMENTO','DTINICIO')DATANULA);
SETVAR (DATAFIM, RESULTSQL('AFASTAMENTO','DTFINAL'));
SETVAR (CH, RESULTSQL('AFASTAMENTO', 'CHAPA'));
FIMSE
ATE PROXREGSQL('AFASTAMENTO')
SE (EXECSQL ('BEM') = FALSO;
SE CH = 0
ENTAO
)
ENTAO 'FUNCIONÁRIO SEM ESTABILIDADE POR REDUÇÃO DE JORNADA/SALÁRIO OU SUSPENSÃO DE CONTRATO CONFORME MP 936.';
SENAO
SE DATAFIM = '01/01/0001'
ENTAO 
CONCAT('FUNCIONÁRIO POSSUI ESTABILIDADE POR SUSPENSÃO DE CONTRATO E DATA RETORNO DA SUSPENSÃO NÃO ESÁ PREENCHIDA. DEPENDENDO DA DATA DE RETORNO, FUNCIONÁRIO PODE TER ESTABILIDADE, CONFORME MP 936, ATÉ ', DATAINICIO + 120);
SENAO
SE DATAFIM <> '01/01/0001'
ENTAO
SETVAR (QUANTDIAS, SUBTRAIDATAS(DATAFIM, DATAINICIO));
SE (DATAFIM+QUANTDIAS) > MTDATA(01,MES,ANO)
ENTAO
CONCAT ('FUNCIONÁRIO POSSUÍ ESTABILIDADE POR SUPENSÃO DE CONTRATO, CONFORME MP 936, ATÉ ', DATAFIM+QUANTDIAS)
SENAO
'FUNCIONÁRIO SEM ESTABILIDADE POR SUSPENSÃO DE CONTRATO CONFORME MP 936.'

Criar uma fórmula que valias as condições de estabilidade para redução de Jornada/Salario. Abaixo um exemplo de fórmula utilizado os campos complementares sugeridos aqui e que retorna mensagens conforme as regras da MP 936:

Bloco de código
titleFórmula - Estabilidade de Redução de Jornada/Salário
DECL DTREDUZIDA;
DECL DTRET;
DECL QUANTDIAS;
SETVAR (DTREDUZIDA, TABCOMPL('DTJORREDUZIDA','D

/* Retorna a quantidade total de dias de acordo por redução de Jornada*/
SE (EXECSQL ('BEM') = Verdade);
REPITA
SETVAR (DataInicioAcordo,resultsql('BEM','DTACORDOBEM'));
SETVAR (DiasDuracao,resultsql('BEM','DURACAOBEM'));
SETVAR (DiasProrrog,resultsql('BEM','DIASPRORROGACAOBEM'));
SETVAR (DataCancelamento,resultsql('BEM','DTCANCELAMENTOBEM'));
SETVAR (DTRETDataAntecipacao, TABCOMPLresultsql('DTRETORNOBEM','DDTANTECIPACAOBEM'));
 
SE DTRETDataAntecipacao = '01/01/0001' E DTREDUZIDA = '01/01/0001'
ENTAO
'FUNCIONÁRIO SEM ESTABILIDADE POR REDUÇÃO DE JORNADA/SALÁRIO CONFORME MP 936.'
SENAO
SE DTRET = '01/01/0001' E DTREDUZIDA <> '01/01/0001'
ENTAO 
CONCAT('FUNCIONÁRIO POSSUI ESTABILIDADE POR REDUÇÃO SALARIAL E DATA RETORNO DE ALTERAÇÃO DE JORNADA/SALÁRIO NÃO ESÁ PREENCHIDA. DEPENDENDO DA DATA DE RETORNO, FUNCIONÁRIO PODE TER ESTABILIDADE ATÉ ', DTREDUZIDA + 180);
SENAO
SE DTRET <> '01/01/0001'
ENTAO
SETVAR (QUANTDIAS, SUBTRAIDATAS(DTRET, DTREDUZIDA));
SE (DTRET+QUANTDIAS<> DATANULA
ENTAO SETVAR (DiasDuracao, (SUBTRAIDATAS (DataAntecipacao, DataInicioAcordo)));
FIMSE;
SE DataCancelamento <> DATANULA
ENTAO SETVAR (DiasDuracao, (SUBTRAIDATAS (DataCancelamento, DataInicioAcordo)));
FIMSE;
  
SE DataInicioAcordo = DataInicioAcordoAnt;
SETVAR (DiasDuracao, DiasProrrog);
FIMSE;
  
SETVAR (DataFimAcordo, DataInicioAcordo+DiasDuracao+DiasProrrog);
SETVAR (DuracaoTotal, DuracaoTotal+DiasDuracao);
SETVAR (DataInicioAcordoAnt, DataInicioAcordo);
   
ATE ProxRegSQL('BEM') = Falso
FIMSE;
  
SE DataFimAcordo = (DataInicioAcordo + DuracaoTotal);
SETVAR (DataFimAcordo, DataInicioAcordo + DuracaoTotal);
FIMSE;
  
SE (DataFimAcordo + DuracaoTotal) > MTDATA(01,MES,ANO)
ENTAO
CONCAT ('FUNCIONÁRIO POSSUÍ ESTABILIDADE POR REDUÇÃO DE JORNADA/SALÁRIO OU SUSPENSÃO DE CONTRATO ATÉ ', DTRETDataFimAcordo+QUANTDIASDuracaoTotal)
SENAO
'FUNCIONÁRIO SEM ESTABILIDADE POR REDUÇÃO DE JORNADA/SALÁRIO OU SUSPENSÃO DE CONTRATO CONFORME MP 936.'
FIMSE;

Passo 3: No parametrizador, menu Rescisão | Cálculo, inserir a fórmula no campo 'Fórmula para Mensagem ao calcular a rescisão':

Image Added

Ao clicar Clicar no ícone Rescisão, a mensagem será exibida conforme a estabilidade do funcionário. No exemplo abaixo, o funcionário não teve redução de Jornada/Salário, mas teve a suspensão do contrato de trabalho do dia 14/04/2020 a 23/05/2020, totalizando 164 dias. A mensagem retornou a data fim da estabilidade devida para este funcionário, somando 40 dias em que estava com o contrato suspenso, a data de retorno da suspensão. 

Image Added

Nota
titleObservação

A mensagem configurada acima não impede a rescisão, sendo somente informativa.