Histórico da Página
...
Fórmula para calcular a indenização quando devida para funcionário que teve redução de salárioacordos celebrados durante o ano de 2020 e 2021 e com Licença posterior a este acordos. A Fórmula abate os dias trabalhados entre este acordos:
Bloco de código | ||
---|---|---|
| ||
DECL DataInicioAcordo; DECL DataInicioAcordoAnt; DECL DiasDuracao; DECL DiasProrrog; DECL DiasProrrogAnt; DECL DataCancelamento; DECL DataAntecipacao; DECL DataFimAcordo; DECL DataFimAcordoAnt; DECL PercAcodr; DECL SalMensal; DECL ValorInd; DECL ValorTotal; DECL DuracaoTotal; DECL DiasAbatidos; DECL DiasDireito; DECL TpDemissao; DECL DiasAbatidos2; DECL DiasAbatidosTotal; DECL DataInicAfastLicMater; DECL TpAcordo; SETVAR (TpDemissao, TABFUNC ('TIPODEMISSAO', '')); SETVAR (SalMensal, TABFUNC('SALARIO', 'I')); SETVAR (DiasDireito, 1); SETVAR (DataInicioAcordoAnt, DATANULA); SETVAR (DiasProrrogAnt, 0); SETVAR (DataFimAcordoAnt, DATANULA); SE TpDemissao <> 2; ENTAO 0; SENAO SE (EXECSQL ('BEM') = FALSO) ENTAO 0; SENAO /* Retorna o valor de indenização devido considerando todos acordos*/ SE (EXECSQL ('BEM') = Verdade) ENTAO REPITA SETVAR (DataInicioAcordo,resultsql('BEM','DTACORDOBEM')); SETVAR (DiasDuracao,resultsql('BEM','DURACAOBEM')); SETVAR (DiasProrrog,resultsql('BEM','DIASPRORROGACAOBEM')); SETVAR (DataCancelamento,resultsql('BEM','DTCANCELAMENTOBEM')); SETVAR (DataAntecipacao,resultsql('BEM','DTANTECIPACAOBEM')); SETVAR (PercAcodr,resultsql('BEM','PERCENTUALREDUCAOBEM')); SETVAR (TpAcordo, resultsql('BEM', 'TIPOADESAOBEM')); SE DataInicioAcordoAnt = DataInicioAcordo ENTAO SETVAR (DiasDuracao, 0); FIMSE; SE DiasProrrogAnt = DiasProrrog ENTAO SETVAR (DiasProrrog, 0); FIMSE; SE (DataFimAcordoAnt <> DATANULA) E (DataInicioAcordo = DataInicioAcordoAnt); ENTAO SETVAR (DataFimAcordo, (DataFimAcordoAnt + DiasDuracao+ DiasProrrog)); SENAO SETVAR (DataFimAcordo, DataInicioAcordo + DiasDuracao + DiasProrrog) FIMSE; SE DataAntecipacao <> DATANULA ENTAO SETVAR (DiasDuracao, (SUBTRAIDATAS ((DataAntecipacao+1),DataFimAcordo))); FIMSE; SE DataCancelamento <> DATANULA ENTAO SETVAR (DiasDuracao, (SUBTRAIDATAS ((DataCancelamento+1), DataFimAcordo))); FIMSE; SETVAR (DiasDuracao, (DiasDuracao+DiasProrrog)); SE DataFimAcordoAnt = DATANULA OU DataInicioAcordo = DataInicioAcordoAnt; ENTAO 0 SENAO SETVAR (DiasAbatidos2, (SUBTRAIDATAS(((DataFimAcordo-DiasDuracao)-1),DataFimAcordoAnt))); FIMSE; FIMSE; SE PercAcodr < 50 E TpAcordo = 1 ENTAO SETVAR (ValorInd, (SalMensal * (DiasDuracao/30) * 0.50)); SENAO SE PercAcodr < 70 E TpAcordo = 1 ENTAO SETVAR (ValorInd, (SalMensal * (DiasDuracao/30) * 0.75)); SENAO SE PercAcodr >= 70 OU TpAcordo = 0 ENTAO SETVAR (ValorInd, (SalMensal * (DiasDuracao/30))); FIMSE; FIMSE; FIMSE; SETVAR (ValorTotal, ValorTotal+ValorInd); SETVAR (DuracaoTotal, DuracaoTotal+DiasDuracao); SETVAR (DataInicioAcordoAnt, DataInicioAcordo); SETVAR (DiasProrrogAnt, DiasProrrog); SETVAR (DataFimAcordoAnt, DataFimAcordo); SETVAR (DiasAbatidosTotal, DiasAbatidosTotal+DiasAbatidos2); ATE ProxRegSQL('BEM' ) = Falso FIMSE; SETVAR (DataInicAfastLicMater, (FOR ('LICMATER'))); SE (DataInicAfastLicMater <> DATANULA) E (DataInicAfastLicMater >= DataFimAcordo); ENTAO SETVAR (DataFimAcordo, (DataFimAcordo+150)); FIMSE; /* Abate os dias de Estabilidade que não entra no cálculo da indenização*/ SE SUBTRAIDATAS (DTD, DataFimAcordo) = DiasDuracao ENTAO SETVAR (DiasAbatidos, 0); SENAO SETVAR (DiasAbatidos, SUBTRAIDATAS (DTD, DataFimAcordo)); FIMSE; SE (DataInicAfastLicMater <> DATANULA) E ((DataInicAfastLicMater +150) >= DataFimAcordo) E (DuracaoTotal - DiasAbatidos - DiasAbatidosTotal) > 0 ENTAO SETVAR (DiasDireito, DuracaoTotal - DiasAbatidos - DiasAbatidosTotal); SETVAR (ValorTotal, (ValorTotal/DuracaoTotal)* DiasDireito); SENAO SE DiasAbatidos > 0 E (DuracaoTotal - DiasAbatidos - DiasAbatidosTotal) > 0; ENTAO SETVAR (DiasDireito, DuracaoTotal - DiasAbatidos - DiasAbatidosTotal); SETVAR (ValorTotal, (ValorTotal/DuracaoTotal)* DiasDireito); SENAO ValorTotal; FIMSE; FIMSE; |
...
Após criadas as fórmulas, associar as mesmas em eventos para serem lançados na rescisão, quando for o caso. Como exemplo, colocamos o o mesmo no parametrizador:
...
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas