Histórico da Página
...
Bloco de código | ||||
---|---|---|---|---|
| ||||
SELECT CHAPA, TIPO, DTINICIO, DTFINAL FROM PFHSTAFT (NOLOCK) WHERE TIPO = 'E' AND DTINICIO >= '28/04/2021' AND PFHSTAFT.CHAPA=:FRM_CHAPA AND PFHSTAFT.CODCOLIGADA=:FRM_COLIGADA |
Passo 2:
Fórmula que retorna a data de Inicio da Licença Maternidade. A mesma será chamada na fórmula para o da Estabilidade com o Código 'LICMATER':
Bloco de código | ||
---|---|---|
| ||
DECL DataInicAfast;
SE (EXECSQL ('AFAST_LIC_MATER') = FALSO)
ENTAO DATANULA;
SENAO
SE (EXECSQL ('AFAST_LIC_MATER') = Verdade)
ENTAO
REPITA
SETVAR (DataInicAfast, RESULTSQL('AFAST_LIC_MATER', 'DTINICIO'));
ATE ProxRegSQL('AFAST_LIC_MATER' ) = Falso
FIMSE; |
Criar uma fórmula que valias valida as condições de estabilidade para redução de Jornada/Salario. Abaixo um exemplo de fórmula que retorna mensagens conforme as regras da MP 9361045:
Bloco de código | ||
---|---|---|
| ||
DECL DataInicioAcordo; DECL DiasDuracao; DECL DiasProrrog; DECL DataCancelamento; DECL DataAntecipacao; DECL DataFimAcordo; DECL DuracaoTotal; DECL DataInicioAcordoAnt; DECL DiasAbatidos; DECL DiasAbatidosTotal; DECL DataInicAfastLicMater; SETVAR (DataInicioAcordoAnt, DATANULA); SETVAR (DataFimAcordo, DATANULA); SE (EXECSQL ('BEM') = FALSO) ENTAO 'FUNCIONÁRIO SEM ESTABILIDADE POR REDUÇÃO DE JORNADA/SALÁRIO OU SUSPENSÃO DE CONTRATO CONFORME MP 936.'; SENAO /* 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 (DataAntecipacao,resultsql('BEM','DTANTECIPACAOBEM')); SE DataAntecipacao <> 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; SE DataFimAcordo = DATANULA OU DataInicioAcordo = DataInicioAcordoAnt; ENTAO 0 SENAO SETVAR (DiasAbatidos, (SUBTRAIDATAS(DataInicioAcordo,DataFimAcordo+1))); FIMSE; SETVAR (DataFimAcordo, DataInicioAcordo+DiasDuracao+DiasProrrog); SETVAR (DuracaoTotal, DuracaoTotal+DiasDuracao); SETVAR (DataInicioAcordoAnt, DataInicioAcordo); SETVAR (DiasAbatidosTotal, DiasAbatidosTotal+DiasAbatidos); ATE ProxRegSQL('BEM') = Falso FIMSE; SETVAR (DataInicAfastLicMater, (FOR ('LICMATER'))); SE DataFimAcordo = (DataInicioAcordo + DuracaoTotal-DiasAbatidosTotal); SETVAR (DataFimAcordo, DataInicioAcordo + DuracaoTotal-DiasAbatidosTotal); FIMSE; SE (DataInicAfastLicMater <> DATANULA) E (DataInicAfastLicMater >= DataFimAcordo) E (DataFimAcordo+DuracaoTotal+150-DiasAbatidosTotal) > MTDATA(01,MES,ANO) ENTAO CONCAT ('FUNCIONÁRIO POSSUÍ ESTABILIDADE POR REDUÇÃO DE JORNADA/SALÁRIO OU SUSPENSÃO DE CONTRATO COM PRORROGAÇÃO DEVIDO A LICENÇA MATERNIDADE ATÉ ', DataFimAcordo+DuracaoTotal-DiasAbatidosTotal+150); SENAO SE (DataFimAcordo + DuracaoTotal-DiasAbatidosTotal) > MTDATA(01,MES,ANO) ENTAO CONCAT ('FUNCIONÁRIO POSSUÍ ESTABILIDADE POR REDUÇÃO DE JORNADA/SALÁRIO OU SUSPENSÃO DE CONTRATO ATÉ ', DataFimAcordo+DuracaoTotal-DiasAbatidosTotal); SENAO 'FUNCIONÁRIO SEM ESTABILIDADE POR REDUÇÃO DE JORNADA/SALÁRIO OU SUSPENSÃO DE CONTRATO CONFORME MP 936.' FIMSE; FIMSE; |
...
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas