Histórico da Página
...
Fórmula Criada a inserida no evento de desconto de dias trabalhados.
Mensalista ou Horista
Bloco de código | ||
---|---|---|
| ||
/*FÓRMULA 1 - RECOMENDADA */ /* Data Atualização : 15/06/2020 */ /* Essa fórmula irá calcular o valor a reduzir de jornada é deverá ser associado a um evento de desconto no pagamento do funcionário. Será considerado mais de um período de adesão do histórico do BEM dentro da competência exemplo, uma adesão com percentual de 25% finalizando no mês e uma nova adesão de 50% iniciando no mesmês */ DECL DataInicioAcordo; DECL DataFimAcordo; DECL DataInicioReducao; DECL DataFimReducao; DECL DiasReducao; DECL ValorReduzido; DECL DiasReducaoMes; DECL Valor; SE (EXECSQL ('BEM') = Verdade) ENTAO REPITA SETVAR (DataInicioAcordo,resultsql('BEM','DTACORDOBEM')); SETVAR (DataFimAcordo,((resultsql('BEM','DTACORDOBEM')) + (resultsql('BEM','DURACAOBEM')))); SETVAR (ValorReduzido,resultsql('BEM','VALORREDUZIDOBEM')); SE (DataInicioAcordo < ULTDIAMES(MTDATA(1,MES,ANO)) E DataFimAcordo >= MTDATA(1,MES,ANO) ) ENTAO SETVAR(DatainicioReducao,DataInicioAcordo); SETVAR(DataFimReducao,DataFimAcordo); SE (DataInicioAcordo < MTDATA(1,MES,ANO)) ENTAO SETVAR(DatainicioReducao,MTDATA(01,MES,ANO)) FIMSE; SE (DataFimAcordo > ULTDIAMES(MTDATA(1,MES,ANO))) ENTAO SETVAR(DataFimReducao,ULTDIAMES(MTDATA(1,MES,ANO))) FIMSE; /* calcula dias redução no mes*/ SETVAR(DiasReducaoMes, SUBTRAIDATAS(DataFimReducao,DatainicioReducao)); /* calcula dias redução no mês desconsiderando férias*/ SETVAR(DiasReducaoMes,(DiasReducaoMes - DIAFERPER(DatainicioReducao,DataFimReducao))); /* calcula dias redução no mês desconsiderando afastamento*/ SETVAR(DiasReducaoMes,(DiasReducaoMes - DIASAFT(DatainicioReducao,DataFimReducao,'PTO'))); SETVAR(ValorReduzido,(ValorReduzido / 30) * MIN(DiasReducaoMes,30)); /* Soma dois períodos de redução no mês */ SETVAR(Valor,Valor + ValorReduzido); SENAO 0 FIMSE; ATE ProxRegSQL('BEM' ) = Falso FIMSE; Valor; Antes da criação da fórmula acima deverá criar a consulta SQL código da Consulta = "BEM". select DTACORDOBEM,DURACAOBEM,VALORREDUZIDOBEM from PFHSTBEM where codcoligada =:FRM_COLIGADA and chapa =:FRM_CHAPA and TIPOADESAOBEM = 1 /*FÓRMULA 2 */ /* Essa fórmula irá calcular o valor a reduzir de jornada é deverá ser associado a um evento de desconto no pagamento do funcionário. Será desconsiderado no período de redução os dias de férias, afastamentos, admissão, demissão e horário. Para esse cenário, o provento Dias Trabalhados será considerado integral e o evento de desconto “redutor de Jornada” reduzirá do salário mensal. Exemplo: Um salário mensal de 2000.00 com redução da jornada de 25%. O novo salário deverá ser 1500 e a nova jornada deverá ser 165:00, considerando Uma jornada de 220 horas no mês. No campo Valor a reduzir na aba B.E.M deverá Cadastrar 500.00 nesse exemplo. A mesma é uma sugestão de cálculo e poderá ser usada como modelo pela empresa. Data Atualização : 12/05/2020 15:55 Utilização a partir dos patches liberados em 16/04/2020 */ DECL DataInicioAcordo; DECL DataFimAcordo; DECL DataInicioReducao; DECL DataFimReducao; DECL DiasReducao; DECL ValorReduzido; DECL DiasReducaoMes; SETVAR (DataInicioAcordo,TABFUNC('DTACORDOBEM','D')); SETVAR (DataFimAcordo,(DataInicioAcordo + TABFUNC('DURACAOBEM','I'))); SETVAR (ValorReduzido,TABFUNC ('VALORREDUZIDOBEM', '')); /*Retona a Data Início da Reducao no mes*/ SE (MESDT(DataInicioAcordo) = MES) E (ANODT(DataInicioAcordo) = ANO) ENTAO SETVAR(DatainicioReducao,DataInicioAcordo) SENAO SETVAR(DatainicioReducao,MTDATA(01,MES,ANO)) FIMSE; /*Retona a Data Fim da Reducao no mes*/ SE (MESDT(DataFimAcordo) = MES E ANODT(DataFimAcordo) = ANO) ENTAO SETVAR(DataFimReducao,DataFimAcordo) SENAO SETVAR(DataFimReducao,MTDATA(30,MES,ANO)) FIMSE; /* calcula dias redução no mes*/ SETVAR(DiasReducaoMes, SUBTRAIDATAS(DataFimReducao,DatainicioReducao) +1); /* calcula dias redução no mês desconsiderando férias*/ SETVAR(DiasReducaoMes,(DiasReducaoMes - DIAFERPER(DatainicioReducao,DataFimReducao))); /* calcula dias redução no mês desconsiderando afastamento*/ SETVAR(DiasReducaoMes,(DiasReducaoMes - DIASAFT(DatainicioReducao,DataFimReducao,'PTO'))); /* calcula “valor” do desconto a reduzir no pagamento*/ SETVAR(ValorReduzido,(ValorReduzido/30) * DiasReducaoMes); |
Horista
Bloco de código | ||
---|---|---|
| ||
/* Essa fórmula irá calcular o valor a reduzir de jornada é deverá ser associado a um evento de desconto no pagamento do funcionário. Será desconsiderado no período de redução os dias de férias, afastamentos, admissão, demissão e horário. Para esse cenário, o provento Dias Trabalhados será considerado integral e o evento de desconto “redutor de Jornada” reduzirá do salário mensal. Exemplo: Um salário mensal de 2000.00 com redução da jornada de 25%. O salário hora continuará o mesmo e a nova jornada deverá ser 165:00, considerando Uma jornada de 220 horas no mês. No campo Valor a reduzir na aba B.E.M não será preenchido conforme orientação para o eSocial. A mesma é uma sugestão de cálculo e poderá ser usada como modelo pela empresa. Data Atualização : 12/05/2020 15:55 Utilização a partir dos patches liberados em 16/04/2020 */ DECL DataInicioAcordo; DECL DataFimAcordo; DECL DataInicioReducao; DECL DataFimReducao; DECL DiasReducao; DECL ValorReduzido; DECL DiasReducaoMes; SETVAR (DataInicioAcordo,TABFUNC('DTACORDOBEM','D')); SETVAR (DataFimAcordo,(DataInicioAcordo + TABFUNC('DURACAOBEM','I'))); SETVAR (ValorReduzido,TABFUNC ('SALARIO', '')* (TABFUNC('PERCENTUALREDUCAOBEM', '')/100)); /*Retona a Data Início da Reducao no mes*/ SE (MESDT(DataInicioAcordo) = MES) E (ANODT(DataInicioAcordo) = ANO) ENTAO SETVAR(DatainicioReducao,DataInicioAcordo) SENAO SETVAR(DatainicioReducao,MTDATA(01,MES,ANO)) FIMSE; /*Retona a Data Fim da Reducao no mes*/ SE (MESDT(DataFimAcordo) = MES E ANODT(DataFimAcordo) = ANO) ENTAO SETVAR(DataFimReducao,DataFimAcordo) SENAO SETVAR(DataFimReducao,MTDATA(30,MES,ANO)) FIMSE; /* calcula dias redução no mes*/ SETVAR(DiasReducaoMes, SUBTRAIDATAS(DataFimReducao,DatainicioReducao) +1); /* calcula dias redução no mês desconsiderando férias*/ SETVAR(DiasReducaoMes,(DiasReducaoMes - DIAFERPER(DatainicioReducao,DataFimReducao))); /* calcula dias redução no mês desconsiderando afastamento*/ SETVAR(DiasReducaoMes,(DiasReducaoMes - DIASAFT(DatainicioReducao,DataFimReducao,'PTO'))); /* calcula “valor” do desconto a reduzir no pagamento*/ SETVAR(ValorReduzido,(ValorReduzido/30) * DiasReducaoMes); |
Fórmula associada ao evento que será lançado no movimento do Funcionário.
...
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas