Exemplo: criar fórmulas de taxa de pagamento
Para simplificar, os exemplos usam vírgulas como separadores para os termos. Algumas configurações de navegador requerem que você use ponto e vírgula como separador.
Neste exemplo, a fórmula da taxa de pagamento faz referência aos valores inseridos nas suposições
Mês do aumento
e Pct de aumento
(percentual).Algumas coisas que você deve entender sobre o cálculo da taxa de pagamento:
- A coluna Taxa de pagamento é um elemento de Saldo original (cumulativo), planejado por delta mensal, o que significa que a entrada de dados do lado do planejamento é transportada para todos os períodos na versão. Os cálculos que você fizer no elemento serão adicionados ao saldo do mês anterior na conta.
- Sintaxe para instruções IF emAdaptive Planningdiferem do Excel:
- Adaptive Planningexemplo:if(ACCT.A6=1 and ACCT.B6=0,X,0)
- Exemplo do Excel:if(and(A6=1, B6=0),X,0)
- Existem três referências de tempo básicas no cálculo da taxa de pagamento. Cada referência atribui um número a cada mês na versão e pode ser usada para comparar uma coluna de data com um número de mês atribuído na versão.
- Month: a cada mês é atribuído um número (1-12) após o ano-calendário que se repete em toda a versão.
- Fiscalmonth: a cada mês é atribuído um número de 1 a 12 após o exercício fiscal da empresa que se repete em toda a versão.
- Versionmonth: a cada mês é atribuído um número. O primeiro mês da versão é 0. Os números continuam ao longo do tempo (sem repetição). Números positivos indicam os próximos meses. Números negativos (-) indicam os meses anteriores.
O cálculo da taxa de pagamento é:
IF((VersionMonth(this) > 0) AND ROW.Headcount>0 AND (((VersionMonth(this) - VersionMonth(ROW.StartDate) > 1) AND ASSUM.RaiseMonth = 0 AND FiscalMonth(this) = FiscalMonth(ROW.StartDate)) OR (ASSUM.RaiseMonth = Month(this))), ROW.PayRate[time=THIS-1]*ASSUM.RaisePct, 0)
A tabela a seguir apresenta a decomposição de cada instrução no cálculo:
Instrução | Descrição |
|---|---|
VersionMonth(this)>0
| Essa instrução verifica se o número do mês atribuído em qualquer período específico de sua versão é realmente posterior ao primeiro mês da versão. Isso evita conceder aumento no primeiro mês da versão. Presume-se que você inseriu o salário de um colaborador no primeiro mês como salário inicial. |
ROW.Headcount>0
| Verifica se o colaborador está empregado para aplicar o aumento da taxa de pagamento. Headcount é baseado na coluna de datas de início e de término do colaborador. É um acionador binário com um resultado de 0 ou 1 para indicar se o colaborador está empregado (ou não) em cada período. |
VersionMonth(this)-VersionMonth(ROW.StartDate)>1
| Verifica a cada mês em que a fórmula é aplicada para garantir que um aumento salarial não seja aplicado antes da data de início do colaborador. O VersionMonth atribuído a cada período é verificado em relação ao exclusivo VersionMonth atribuído à data de início do colaborador. Se a diferença for maior que um (o período ocorre após a data de início do colaborador), o colaborador pode obter um aumento, desde que todos os outros and as declarações são atendidas. |
ASSUM.RaiseMonth = 0
| Verifica mensalmente se o RaiseMonth suposição é 0 . Para aumentos de aniversário, o mês do aumento deve ser zero. |
FiscalMonth(this)=FiscalMonth(ROW.StartDate)
| Verifica cada um FiscalMonth e o compara com os atribuídos FiscalMonth para a data de início do colaborador. Por exemplo: se a data de início do colaborador é 8/12/2016 e o exercício fiscal da organização for igual ao ano-calendário, o mês atribuído para FiscalMonth(ROW.StartDate) seria 8. Em janeiro de cada ano, FiscalMonth(this) retorna um 1 . Fevereiro retorna um 2 e assim por diante. Esta frase é verdadeira somente quando o FiscalMonth é igual a FiscalMonth da data de início do colaborador. É assim que, ano após ano, é possível calcular algo em uma data de aniversário. |
ASSUM.RaiseMonth = Month(this)
| Verifica se o número que você inseriu para o RaiseMonth suposição corresponde ao número do mês atual. Por exemplo: se você quer que o aumento ocorra em abril de 2017, insira um 4 na suposição RaiseMonth em abril de 2017. |
ROW.PayRate[time=THIS-1]*ASSUM.RaisePct
| Define a cláusula True. Se as declarações anteriores são verdadeiras (todas as and declarações e uma das or declarações), todos os IF as condições são atendidas, e o aumento (ASSUM.PaisePct ) é aplicado.O PayRate a fórmula a faz referência ao período anterior [time=THIS-1] , em vez do período atual. Os motivos para isso são:
|
0
| Define a cláusula False. Quando um (ou mais) dos IF as condições não são atendidas, o aumento é 0 e nada é adicionado ao saldo. |
Lida como uma frase, esta fórmula seria:
"Se este for um mês dentro desta versão de orçamento e o colaborador estiver contratado e o período for posterior ao início do colaborador e a suposição tiver um valor zero e o mês atual for igual à data de início do colaborador, ou o mês atual corresponder ao valor no mês atual da suposição, dê um aumento. Caso contrário, não dê o aumento."
Opções alternativas de aumento
Normalmente as organizações não dão aumento no mês de aumento
ou
na data de aniversário. A maioria das organizações usaria uma versão mais simples deste cálculo de aumento. Opção 1:
aplicar aumentos no mês de aumento. A fórmula é:if(VersionMonth(this)>0 and ROW.Headcount>0 and VersionMonth(this)-VersionMonth(ROW.StartDate)>1 and ASSUM.RaiseMonth=fiscalmonth(this), ROW.PayRate[time=THIS-1]*ASSUM.RaisePct, 0
As alterações no cálculo incluem:
Instrução | Descrição |
|---|---|
ROW.Headcount>0
| Como antes, o Headcount precisa ser maior que zero em vez de igual a 1 . Isso permite que o cálculo funcione para todas as linhas de um colaborador da divisão que possa ter menos de um headcount em uma linha específica. |
ASSUM.RaiseMonth=FiscalMonth(this)
| O RaiseMonth é comparado ao mês fiscal da empresa. Isso permite que o colaborador que preenche a suposição pense em termos do exercício fiscal da empresa em vez de um ano-calendário forçado. |
fiscalmonth(this) = fiscalmonth(ROW.StartDate)) or ASSUM. RaiseMonth = Month(this)
| Não há or para a data de aniversário. O aumento é aplicado somente no mês de aumento. |
Opção 2:
aplicar aumentos em uma data de aniversário. A fórmula é:if(VersionMonth(this)> 0 AND ROW.Headcount>0 AND VersionMonth(this)-VersionMonth(ROW.StartDate)> 1 AND FiscalMonth(this)=FiscalMonth(ROW.StartDate), ROW.PayRate[time=THIS-1]*ASSUM.RaisePct, 0)
Consulte Exemplos de fórmulas - Pessoal, cálculos de taxas de pagamento para obter opções de taxas de pagamento adicionais.