Se ContratoIntermitente=1 ou ContratoVerdeAmarelo Entao Retornar Fim Se PercReducaoMP936<> 0 e HorasMensaisRedMP936 <> 0 Entao Se HorasMensaisRais<= HrMensaisAnteriorMP936 entao Temp12=((HorasMensaisRedMP936/(100-PercReducaoMP936))*100) Senao Temp12=HorasMensaisRais Fim Senao Temp12=HorasMensaisRais Fim Temp30 = DiasTrabExterior Se Escopo13SalarioP1 ou Escopo13SalarioP2 ou Escopo13SalarioCP ou Escopo13SalarioP1Dom ou Escopo13SalarioP2Dom ou Escopo13SalarioCPDom Entao Se ContratoEstagiario Entao Retornar Fim ExecutaEmAfastGrupo1 = Verdadeiro ExecutaEmAfastGrupo2 = Verdadeiro Fim Se ParamValorRef<>0 Entao Resultado = ParamValorRef ParamValorRef=0 Se Avos13Salario = 0 Entao Avos13Salario = 1 Senao Avos13Salario = Avos13Salario Fim Valor2Parcela13Salario=Round(Valor2Parcela13Salario+Resultado) Retornar Fim Se Mensalista Entao Temp1=Salario Fim Se Horista Entao Temp1=(Salario*temp12) Fim Se Comissionado Entao Se (Salario=0) e (ValorMediaVarComissao13>0) Entao Temp1=ValorMediaVarComissao13 Fim Se ((Salario=0) e (ValorMediaVarComissao13=0)) ou ((Salario+ValorMediaVarComissao13)0) e (ValorMediaVarComissao13>0)) ou ((Salario>0) e (ValorMediaVarValor13>0) e (ValorMediaVarComissao13<=0)) Entao Temp1=Salario+ValorMediaVarComissao13 Fim Fim Se DocenteMensalista Entao Temp1=Salario*1.05 Fim Se DocenteAulista Entao Temp1=UltimoSalarioAulista Fim Se Tarefeiro Entao Temp1=UltimoSalarioTarefeiro Fim Se ConsiderarVlrRemuneracaoCalcMedHE = 1 Entao ValorRemuneracaoParaMediaHora=ValorRemuneracao+Temp1 Senao ValorRemuneracaoParaMediaHora=Temp1 Fim Temp6=SalarioHora Se Comissionado Entao Se Salario<>0 Entao Temp6=Salario/temp12 Senao Temp6 = PisoSalarialSindicato /temp12 Fim Fim Temp7=ValorRemuneracaoParaMediaHora/temp12 Se ConsiderarVlrRemuneracaoCalcMedHE=1 Entao Temp13=Round((ValorMediaVarHora13/Temp6)*Temp7) Senao Temp13=ValorMediaVarHora13 Fim //Se PercReducaoMP936<>0 e Horista=0 Entao // Temp8=Temp8*(1-(PercReducaoMP936/100)) //Fim // é para não somar a Média de Comissão como Valor Remuneração Se Comissionado Entao Se (Salario=0) e (ValorMediaVarComissao13>0) Entao Temp1=0 Fim Se ((Salario=0) e (ValorMediaVarComissao13=0)) ou ((Salario+ValorMediaVarComissao13)0) e (ValorMediaVarComissao13>0)) ou ((Salario>0) e (ValorMediaVarValor13>=0) e (ValorMediaVarComissao13<=0)) Entao Temp1=Salario Fim Temp18 = 1 Fim Se Escopo13SalarioP1Dom ou Escopo13SalarioP2Dom ou OptanteSimplesMicroempreendedor Entao Temp11=Avos13Salario senao Temp11=Avos13Salario-AvosAfast13MaternidadeEmpregador Fim Se Temp11<0 Entao Temp11=0 Fim Se ((ConsiderarVlrRemuneracaoCalcMedHE = 0) e (Mensalista ou DocenteMensalista ou (Comissionado=1 e Salario>PisoSalarialSindicato))) Entao Temp13 = Temp13 / SalarioHora * Temp7 Senao Temp13 = Temp13 Fim Temp1 = (ValorMediaVarComissao13+Temp13+ValorMediaVarValor13) Se (DataCompetenciaAno>= 2021) e (DiasDeducaoSalarioMaternidade<>0) Entao //@temp29 indica que o cálculo da maternidade será considerado com base nos dias Temp29 = 1 //@Temp28 guarda os dias de Dedução de salário Materinadade no Ano Temp28 = DiasDeducaoSalarioMaternidade //@Temp27 guarda o valor da Maternidade baseado em dias para abatimento no Calculo Temp27 = ((Temp1 / 30 ) /12) * Temp28 //@Temp26 Guarda o valor Integral sem a Materinadade Temp26 =((temp1 / 12) * Avos13Salario) //Temp25 = Guarda a proporção sobre o PisoSalarialSindicato Temp25 = ((PisoSalarialSindicato / Avos13Salario)/30) * Temp28 Fim Resultado=round((((Temp1/12)*Temp11) * (1-Temp29)) + ((Temp26 - Temp27)*temp29)) Se Resultado<0 Entao Resultado = 0 Fim Se Comissionado Entao //@Temp9 guarda o resultado para comparar com o Piso do Sindicato Temp9=Resultado //Temp10 Guarda o calculo sobre o Piso para comissionado para comparar na condição posterior Temp10=((PisoSalarialSindicato/12*Temp11) * (1-Temp29)) + ((((PisoSalarialSindicato/12)*Avos13Salario)-Temp25)*Temp29) Se Temp10>Temp9 Entao Resultado=Temp10 Fim Se Temp1=0 Entao Temp1=PisoSalarialSindicato Fim Fim Temp2=((Temp1/12)*(AvosMaternidade13)*(1-Temp29)) //+ ((Temp26 - Temp27) * Temp29) Temp3=(Temp1/12)*(AvosAcidente13) Temp5=((Temp1/12)*AvosMaterAdocao13) Temp8 = ((temp1 / 12) * AvosServMilitar13) //Base13FGTSServicoMilitar = Base13FGTSServicoMilitar + Temp8 BaseInss13Salario=BaseInss13Salario+Temp2+Temp5 Base13FGTSAcidenteTrabalho = Base13FGTSAcidenteTrabalho + Temp3 Valor2Parcela13Salario=Round(Valor2Parcela13Salario+Resultado) ParamValorRef=(Temp11 * (1-Temp29)) + (Avos13Salario *Temp29) //Se EscopoRescisaoDom=0 Entao // BaseFGTS13Salario = 0 // Retornar // Senao // BaseFgts13Salario=BaseFgts13Salario // Retornar //Fim //BaseFgts13Salario=BaseFgts13Salario+Temp2+Temp3-BaseFgtsMaternidade13-BaseFgtsAcidente13+Temp5+Temp8 BaseFgts13Salario=BaseFgts13Salario+Temp2+Temp3+Temp8-BaseFgtsMaternidade13-BaseFgtsAcidente13-Base13FGTSServicoMilitar+Temp5