Manual de fórmulas
As fórmulas servem para dar maior flexibilidade ao sistema, e através delas podem ser feitos vários ajustes e automatizações.
A sintaxe da fórmula foi desenvolvida da forma mais simples possível, afim de possibilitar que usuários menos experientes consigam desenvolver suas fórmulas.
Sintaxe
Declaração
As variáveis são declaradas automaticamente pelo compilador, que assume como tipo de dados o primeiro valor atribuído à mesma.
Estrutura condicional:
se expressão lógica bloco de código executado se a expressão lógica for verdadeira senao bloco de código executado se a expressão lógica for falsa fimse
Estrutura de laço:
percorra objeto bloco de código executado enquanto houver objetos fimpercorra
Nota: A estrutura de laço atualmente só funciona para o objeto dependente e para formulas da folha.
Operadores aritméticos:
+ Adição - Subtração * Multiplicação / Divisão
Operadores lógicos:
> Maior < Menor >= Maior ou igual <= Menor ou igual <> Diferente
Agrupadores lógicos:
e => Exemplo: a = b e c > d ou => Exemplo: a > b ou c <= d
Tipos de dados:
Numérico => Exemplos: 3 ; 45.08 Carácter => Exemplo: 'abc' Lógico => Exemplos: verdadeiro ; falso Data ( Formatos: {dd/mm/aaaa} ou {d/m/aaaa} ) => Exemplos: {25/04/2008} ; {1/1/2008}
Variáveis
Fórmulas gerais
Nome | Tipo | Descrição |
---|---|---|
resultado | lógico/numérico | Resultado da fórmula |
dataAtual | Data | Data atual |
Fórmulas específicas para o layout
Nome | Tipo | Descrição |
---|---|---|
registroAtual | carácter | Linha atual do layout |
valorAtual | carácter | valor que está sendo processado ( apenas retorno do layout ) |
Fórmulas específicas para a folha
Nome | Tipo | Descrição |
---|---|---|
pisoSalarial | numérico | Piso salarial do colaborador |
valorInformado | numérico | Valor informado no evento |
salarioMinimo | numérico | Salário mínimo vigente |
salarioMes | numérico | Salário contratual mês do funcionário |
salarioDia | numérico | Salário contratual dia do funcionário |
salarioHora | numérico | Salário contratual hora do funcionário |
salarioBaseMes | numérico | Salário base mês do funcionário |
salarioBaseDia | numérico | Salário base dia do funcionário |
salarioBaseHora | numérico | Salário base hora do funcionário |
horasMes | numérico | Carga horária mensal |
horasSemana | numérico | Carga horária semanal |
horasDsr | numérico | Carga horária de descanso remunerado |
NumFeriados | numérico | Quantidade de feriados no mes |
numDsr | numérico | Quantidade de dsr no mês |
valorSemana1 | numérico | Quantidade de dsr da primeira semana |
feriadoSemana1 | numérico | Quantidade de feriado da primeira semana |
valorSemana2 | numérico | Quantidade de dsr da segunda semana |
feriadoSemana2 | numérico | Quantidade de feriado da segunda semana |
valorSemana3 | numérico | Quantidade de dsr da terceira semana |
feriadoSemana3 | numérico | Quantidade de feriado da terceira semana |
valorSemana4 | numérico | Quantidade de dsr da quarta semana |
feriadoSemana4 | numérico | Quantidade de feriado da quarta semana |
valorSemana5 | numérico | Quantidade de dsr da quinta semana |
feriadoSemana5 | numérico | Quantidade de feriado da quinta semana |
totalVantagens | numérico | Total de vantagens |
totalDescontos | numérico | Total de descontos |
totalLiquido | numérico | Total líquido |
baseInssNormal | numérico | Base de cálculo de INSS |
BaseInssFerias | numérico | Base de cálculo de INSS sobre férias |
baseInssDecimo | numérico | Base de cálculo de INSS sobre 13º salário |
basePrevEspecialNormal | numérico | Base de cálculo de Previdência especial |
basePrevEspecialFerias | numérico | Base de cálculo de Previdência especial sobre férias |
basePrevEspecialDecimo | numérico | Base de cálculo de Previdência especial sobre 13º salário |
baseIrrfNormal | numérico | Base de cálculo de IRRF |
baseIrrfFerias | numérico | Base de cálculo de IRRF sobre férias |
baseIrrfDecimo | numérico | Base de cálculo de IRRF sobre 13º salário |
baseFgtsNormal | numérico | Base de cálculo de FGTS |
baseFgtsDecimo | numérico | Base de cálculo de FGTS sobre 13º salário |
baseSalarioFamilia | numérico | Base de cálculo do salário família |
baseRais | numérico | Remuneração base para a RAIS |
dtProcInicio | data | Data início do período de processamento |
dtProcFim | data | Data final do período de processamento |
qtdDependenteIR | numérico | Quantidade de dependentes de IRRF |
qtdDependenteSF | numérico | Quantidade de dependentes de salário família |
quotasPensao | Numérico | Quantidade de quotas para cálculo de pensão |
competenciaMes | numérico | Mês da competência atual |
competenciaAno | numérico | Ano da competência atual |
diasUteis | numérico | Variável leva em consideração data de admissão no período ou data de demissão e no final é subtraída da variável diasNaoUteis |
diasNaoUteis | numérico | Variável que retorna o número de dias não úteis levando em consideração os feriados inclusive |
diasCalculo | numérico | Número de dias para cálculo da folha, dependendo dos parâmetros pode ser o número de dias do mês ou 30 (trinta dias) |
diasMes | numérico | Número de dias do mês |
diasAfastado | numérico | Número de dias afastado no período |
diasTrabalhados | numérico | Número de dias trabalhados no período |
diasLicencaMaternidade | numérico | Dias em licença maternidade no período |
diasAtestado | numérico | Dias de atestado médico no período |
diasFerias | numérico | Dias em gozo de férias no período processado |
diasGozo | numérico | Número de dias de gozo das férias |
retornoDeFerias | lógico | Indica se o colaborador está retornando de férias no período processado |
abonoPecuniario | lógico | Indica se o colaborador de férias vendeu 1/3 de suas férias |
processamento | carácter | Código do processamento atual: fer – Férias; res – Rescisão; adt – Adiantamento; sem – Folha semanal; qui – Folha quinzenal; a13 – Adiantamento de 13° salário; f13 – Folha de 13° salário; c13 – Folha complemento de 13° salário; fol – Folha mensal; \\cfo – Folha complementar |
Fórmulas específicas para integrações
Nome | Tipo | Descrição |
---|---|---|
competenciaMes | numérico | Mês da competência de geração |
competenciaAno | numérico | Ano da competência de geração |
dataPgtoMes | numérico | Mês da competência do processo |
dataPgtoAno | numérico | Ano da competência do processo |
codigoHierarquia | carácter | Código da hierarquia |
codigoCentroCusto | carácter | Código do centro de custo |
Funções
Fórmulas gerais
Nome | Parâmetros | Tipo de retorno | Descrição |
---|---|---|---|
maximo | valor1 numérico … valorN numérico | numérico | Maior valor entre os valores informados |
minimo | valor1 numérico … valorN numérico | numérico | Menor valor entre os valores informados |
media | valor1 numérico … valorN numérico | numérico | Média aritmética dos valores informados |
modulo | dividendo numérico divisor numérico | numérico | Módulo de uma divisão |
inteiro | valor numérico | numérico | Parte inteira de um decimal |
arredondar | valor numérico | numérico | Arredonda para 2 casas decimais |
dia | dataX data | numérico | Captura o dia de uma data |
mes | dataX data | numérico | Captura o mês de uma data |
ano | dataX data | numérico | Captura o ano de uma data |
idade | dataNasc data | numérico | Idade (data de nascimento até a data atual) |
idadeDataBase | dataNasc data dataReferência data | numérico | Idade (data de nascimento até uma data de referência) |
somaDia | dataX data dias numérico | data | Adiciona dias a uma data |
somaMes | dataX data meses numérico | data | Adiciona meses a uma data |
somaAno | dataX data anos numérico | data | Adiciona anos a uma data |
dataParaTexto | dataX | carácter | Converte data em carácter |
textoParaData | caracter | data | Converte texto para data ( data válida ) conforme especificação acima |
numeroParaTexto | numérico | carácter | Converte número para texto |
textoParaNumero | carácter | numérico | Converte texto para número |
subTexto | carácter valor1 numérico(inteiro) valor2 numérico(inteiro) | carácter | Retorna um pedaço do texto especificado no primeiro parâmetro iniciando do segundo parâmetro e terminando após x caracteres passado no terceiro parâmetro |
tamanho | carácter | numérico | Retorna o tamanho do texto passado com parâmetro |
nomeMes | Numérico | Carácter | Retorna o nome do mês |
contido | Str1 Carácter Str2 Carácter | Lógico | Retorna verdadeiro se str1 estiver contido em str2 |
diasEntre | Data1 data Data2 data | numérico | Retorna o número de dias entre duas datas |
mesesEntre | Data1 data Data2 data | numérico | Retorna o número de meses entre duas datas |
Fórmulas específicas para a folha
Nome | Parâmetros | Tipo de retorno | Descrição |
---|---|---|---|
valorCalculado | evento1 carácter … eventoN carácter | numérico | Valor de um evento calculado |
referenciaCalculado | evento carácter | numérico | Referência de um evento calculado |
valorExtra | evento carácter | numérico | Valor de um evento informado no movimento extra |
valorFixo | evento carácter | numérico | Valor de um evento informado no movimento fixo ( para processo atual ) |
valorFixoGeral | Evento carácter | numérico | Valor de um evento informado no fixo em qualquer processo |
pensaoAlimenticia | baseCalc numérico percentual numérico quotas numérico | numérico | Calcula a pensão alimentícia |
calcularEvento | Evento carácter Referencia numérico (opcional) Valor numérico | numérico | Grava o evento especificado no primeiro parâmetro para o processo atual. Caso não coloque referência o mesmo ficará com o valor zerado |
removerEvento | Evento Carácter | numérico | Remove do cálculo um evento já processado |
valorFicha | Evento Ano inicial Mês inicial Ano final Mês final | Carácter Numérico Numérico Numérico Numérico | Retorna o valor de um determinado evento na ficha financeira de acordo com o período informado |
informadoFixo | Evento Carácter | lógico | Retorna se o evento for informado no fixo |
informadoExtra | Evento Carácter | lógico | Retorna se o evento for informado no extra |
valorBeneficioColaborador | evento Carácter | numérico | Retorna o valor total utilizado pelo colaborador naquele beneficio valor este apenas vindo da movimentação mensal |
CodigoSaque | Numérico | Carácter | Retorna o código do afastamento |
causaRescisao | Numérico | Carácter | Retorna o código corresponde a causa da rescisão |
Objetos
Específicos para o layout
Nome | Propriedades | Tipo | Descrição |
---|---|---|---|
dados | Todos os campos da tabela informada no registro atual | Tipo do campo especificado | Objeto específico da remessa do layout |
Específicas para integrações
Nome | Propriedades | Tipo | Descrição |
---|---|---|---|
Evento | Todos os campos | Tabela de eventos |
Específicas para a folha
Nome | Propriedades | Tipo | Descrição |
---|---|---|---|
colaborador | ID | numérico | ID |
tipoPessoa | Carácter | Tipo da colaborador | |
codigo | Carácter | Código | |
nome | Carácter | Nome | |
apelido | Carácter | Apelido | |
portal_nivelAcesso | numérico | Nível de acesso ao portal web | |
portal_senha | Carácter | Senha ao portal web | |
dataNascimento | data | Data de nascimento | |
estadoCivil | Carácter | Estado civil | |
cpf | Carácter | CPF | |
pis | Carácter | PIS | |
end_logradouro | Carácter | Logradouro | |
end_numero | Carácter | Número da casa/prédio | |
end_cep | Carácter | CEP | |
end_complemento | Carácter | Complemento do endereço | |
end_bairro | Carácter | Bairro | |
end_cidade | Carácter | Cidade | |
end_uf | Carácter | Estado | |
idHorarioTrabalho | numérico | ID do horário de trabalho | |
racaCor | Carácter | Raça/Cor | |
deficiente | Carácter | Deficiência física | |
codNacionalidade | Carácter | Nacionalidade | |
anoChegada | numérico | Ano de chegada | |
idEscolaridade | numérico | Grau de escolaridade | |
sexo | Carácter | Sexo | |
rg_Numero | Carácter | Identidade - Número | |
rg_Orgao | Carácter | Identidade - Órgão expedidor | |
rg_DataEmissao | data | Identidade - Data de emissão | |
reservista_Numero | Carácter | Reservista | |
naturalidade | Carácter | Naturalidade | |
nomePai | Carácter | Nome do Pai | |
nomeMae | Carácter | Nome da Mãe | |
fone_DDD | Carácter | DDD Telefone fixo | |
fone_Numero | Carácter | Telefone fixo | |
celular_DDD | Carácter | DDD Telefone celular | |
celular_Numero | Carácter | Celular | |
Carácter | |||
emailEmpresa | Carácter | E-mail na empresa | |
cracha | Carácter | Número do crachá | |
idAgencia | numérico | ID da Agência bancária | |
contaCorrente_Numero | Carácter | Conta corrente - Número | |
contaCorrente_DV | Carácter | Conta corrente - Dígito | |
contaCorrente_Tipo | Carácter | Conta corrente - Tipo | |
ctps_Numero | Carácter | CTPS - Número | |
ctps_Serie | Carácter | CTPS - Série | |
ctps_DataEmissao | data | CTPS - Data de emissão | |
ctps_Uf | Carácter | CTPS - UF | |
eleitor_Numero | Carácter | Título de eleitor - Número | |
eleitor_Zona | Carácter | Título de eleitor - Zona | |
eleitor_Secao | Carácter | Título de eleitor - Seção | |
eleitor_Municipio | Carácter | Título de eleitor - Município | |
habilitacao_Numero | Carácter | Habilitação - Número | |
habilitacao_DataEmissao | data | Habilitação - Data de emissão | |
habilitacao_DataValidade | data | Habilitação - Validade | |
habilitacao_DataPrimeira | data | Habilitação - Data da 1ª habilitação | |
habilitacao_Categoria | Carácter | Habilitação - Categoria | |
conselho_Numero | Carácter | Conselho | |
conselho_Sigla | Carácter | Conselho - Sigla | |
ufOrigem | Carácter | Estado de origem | |
tipoSanguineo | Carácter | Sangue - Tipo | |
fatorRh | Carácter | Sangue - Fator RH | |
IdAreaGeografica | numérico | ID da área geográfica | |
remuneracao | numérico | Salário | |
tipoSalario | Carácter | Tipo de salário | |
idSindicato | numérico | ID do Sindicato | |
dataAdmissao | data | Data de admissão | |
codVinculo | Carácter | Vínculo empregatício | |
codOcorrencia | Carácter | Ocorrência | |
codCategoria | Carácter | Categoria | |
codCargo | Carácter | Código do Cargo | |
codFuncao | Carácter | ID da Função | |
codDepartamento | Carácter | Código do Departamento | |
codHierarquia | Carácter | Código da Hierarquia | |
sindicato_MesDesconto | numérico | Mês de desconto sindical | |
percAdiantamento | numérico | Valor do adiantamento | |
idCargaHoraria | numérico | ID da Carga horária | |
tipoAdmissao | Carácter | Tipo de admissão | |
fgts_Agencia | numérico | FGTS - Agência | |
fgts_DataOpcao | data | FGTS - Data de opção | |
fgts_contaCorrente_Numero | Carácter | FGTS - Conta corrente | |
fgts_contaCorrente_DV | Carácter | FGTS - Dígito da conta corrente | |
pat | Carácter | PAT | |
alvaraJudicial | Carácter | Alvará judicial | |
bancoHoras | Carácter | Banco de horas | |
estabilidade_DataFim | data | Estabilidade - Data de término | |
estabilidade_Motivo | Carácter | Estabilidade - Motivo | |
dataTransferenciaEntrada | data | Data de entrada (transferência) | |
dataAdmissaoServPub | data | Data de admissão do servidor público | |
ponto_nivelAcesso | numérico | ID do nível de acesso | |
idGrupoBatimento | numérico | ID do grupo de batimento | |
idGrupoPagamento | numérico | ID do grupo de pagamento | |
pir_codfornecedor | Carácter | Código do Fornecedor | |
grupoPagamento | ID | numérico | ID |
nome | Carácter | Nome do grupo | |
tipoFolha | Carácter | Tipo da folha | |
variosAdiantamentos | Carácter | Vários adiantamentos | |
adiant_Desconto | Carácter | Desconto do adiantamento | |
adiant_Diamaximo | numérico | Dia máximo do adiantamento | |
adiant_Percentual | numérico | Percentual de adiantamento | |
adiant_Provento | Carácter | Provento de adiantamento | |
adiant13_Provento | Carácter | Adiantamento do 13º (Provento) | |
adiant13_Desconto | Carácter | Adiantamento do 13º (Desconto) | |
arred_Desconto | Carácter | Desconto do arredondamento | |
arred_Provento | Carácter | Provento de arredondamento | |
arred_Valor | numérico | Valor do arredondamento | |
contribSindical_Evento | Carácter | Contribuição sindical | |
emprestimo_Desconto | Carácter | Desconto empréstimo | |
emprestimo_Provento | Carácter | Provento de empréstimo | |
irrf_Decimo | Carácter | IRRF sobre décimo | |
irrf_Evento | Carácter | IRRF | |
irrf_Ferias | Carácter | IRRF sobre férias | |
evento_adicionalFerias | Carácter | Adicional de férias | |
evento_adicionalFerInd | Carácter | Adicional de férias indenizadas | |
evento_avisoPrevioInd | Carácter | Aviso prévio indenizado | |
evento_avisoPrevioTrab | Carácter | Aviso prévio trabalhado | |
evento_decimo | Carácter | Décimo terceiro salário | |
evento_decimoIndenizado | Carácter | Décimo terceiro indenizado | |
evento_difSalMaternidade | Carácter | Diferença salário maternidade | |
evento_ferias | Carácter | Férias | |
evento_feriasIndenizadas | Carácter | Férias indenizadas | |
evento_feriasProporcionais | Carácter | Férias proporcionais | |
evento_indenizacao479 | Carácter | Indenização Art.479 | |
evento_licencaRemunerada | Carácter | Licença remunerada | |
evento_PensaoAlimenticia | Carácter | Pensão alimentícia | |
evento_pis | Carácter | PIS | |
evento_SalarioFamilia | Carácter | Salário família | |
evento_SalarioHorista | Carácter | Salário horista | |
evento_SalarioMaternidade | Carácter | Salário maternidade | |
evento_SalarioMensalista | Carácter | Salário mensalista | |
evento_saldoFeriasColetivas | Carácter | Saldo férias coletivas | |
evento_saldoSalario | Carácter | Saldo de salário | |
evento_ValeRefeicao | Carácter | Vale refeição | |
evento_ValeTransporte | Carácter | Vale transporte | |
ferias_abonoPecuniario | Carácter | Abono pecuniário (Férias) | |
ferias_adicionalAbono | Carácter | Abono pecuniário (1/3 de Férias) | |
ferias_difAbonoPecuniario | Carácter | Diferença abono pecuniário (Férias) | |
ferias_difAdicionalAbono | Carácter | Diferença adicional abono férias | |
ferias_Diferenca | Carácter | Diferença (Férias) | |
ferias_DiferencaAdicional | Carácter | Diferença adicional férias | |
ferias_Liquido | Carácter | Líquido de férias | |
prevSocial_Decimo | Carácter | Previdência Social (Décimo) | |
prevSocial_Evento | Carácter | Previdência Social | |
prevSocial_Ferias | Carácter | Previdência Social (Férias) | |
rescisao_Liquido | Carácter | Líquido de rescisão | |
salarioProporcionalDiasMes | Carácter | Salário proporcional aos dias do mês | |
sindicato | Todos os campos | Tabela de sindicato | |
dependente | Todos os campos | Tabela de dependentes | |
evento | Todos os campos | Tabela de eventos |
Exemplos de Fórmula
Correção de Prova
A fórmula de correção de Prova estará atrelada ao(s) evento (s) que referem-se a esse provento:
se competenciames=4 ou competenciames=7 ou competenciames=11 resultado:=valorinformado*totalvantagens/100 senao resultado:=0 fimse
Interpretação:
Para os colaboradores que tiverem informado nos seus movimentos um evento que contenha essa fórmula o cálculo será o seguinte:
Nos meses Abril, Julho ou Novembro o sistema irá calcular o valor informado no movimento do Colaborador x o Total de vantagens/100.
Em termos práticos, supondo que o colaborador Jose João possui um total de Proventos igual a R$ 1.500,00, e tenha entre os movimentos fixos lançados o evento Correção de prova, com valor 10, o cálculo do provento será:
R$1.500,00 * 10 / 100= R$ 150,00
Outro Exemplo:
Refeição com valor de desconto diferenciado de acordo com o Salário
SE SALARIOMES>=900.00 RESULTADO:=30.00 SENAO SE SALARIOMES>=600.00 RESULTADO:=12.00 SENAO SE SALARIOMES>400.00 RESULTADO:=8.00 SENAO RESULTADO:=5.00 FIMSE FIMSE FIMSE
Horas Extras
basecalc:= valorcalculado('0105','0109','0110','0111','0112','0113','0114','0115','0118')
basecalc:= basecalc + gratificacaoFixa dias := colaborador.tempoServico + colaborador.tempoServmesatual data := somadia( colaborador.dataadmissao, dias ) anos := idadeDataBase( colaborador.dataadmissao, data ) se anos >= 5 percentual := Minimo( anos, 35 ) baseCalc := baseCalc + ( salarioMes * percentual / 100 ) fimse se colaborador.idgrupopagamento<>2 basecalc := basecalc + salariomes fimse resultado:= basecalc/horasmes*valorinformado*evento.coeficiente
Interpretação:
Cálculo composto utilizando bases que podem variar dependendo do tempo de serviço do colaborador na empresa(Data de admissão maior ou igual a 5 anos)
PENSAO(BRUTO - INSS-IRRF)
resultado:=pensaoalimenticia(totalvantagens-valorcalculado ('0510','0520'),valorinformado,0,1)
QUINQUÊNIO
tempoServico:=colaborador.tempoServico dias := tempoServico + colaborador.tempoServmesatual data := somadia( colaborador.dataadmissao, dias ) anos := idadeDataBase( colaborador.dataadmissao, data ) quinquenio := inteiro( anos / 5 ) adicional := modulo( anos, 5 ) percentual := ( quinquenio * 5 ) + adicional se quinquenio > 0 se percentual > 35 percentual := 35 fimse se valorcalculado('0108')>0 resultado := valorcalculado('0001')*percentual/100 senao resultado:=salariomes*percentual/100 fimse senao resultado:=0 fimse
Contribuição Sindical – Sindicatos em eventos diferentes
basecalc:=valorcalculado('0102','0103','0104','0105','0108','0109','0110','0111','0112','0113','0114','0115','0116','0117','0118','0119','0137')
se colaborador.idgrupopagamento<>2 basecalc:=basecalc+salariomes fimse contribuicao:=basecalc/30 Evento a:='0531' Evento b:='0532'