As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
addWorkDays
addWorkDays adiciona ou subtrai um número designado de dias úteis a um determinado valor de data. A função retorna a data de um dia útil, que corresponde aos dias úteis designados após ou antes de um determinado valor de data de entrada.
Sintaxe
addWorkDays(initDate,numWorkDays)
Argumentos
- initDate
-
Uma data válida não nula que atua como a data de início do cálculo.
-
Campo do conjunto de dados: qualquer campo de
datedo conjunto de dados ao qual você está adicionando essa função. -
Função de data: qualquer saída de data de outra função de
date, por exemploparseDate,epochDate,addDateTimee assim por diante.addWorkDays(epochDate(1659484800),numWorkDays) -
Campos calculados — Qualquer campo calculado do Quick Suite que retorne um
datevalor.calcFieldStartDate = addDateTime(10, “DD”,startDate) addWorkDays(calcFieldStartDate,numWorkDays) -
Parâmetros — Qualquer
datetimeparâmetro do Quick Suite.addWorkDays($paramStartDate,numWorkDays) -
Qualquer combinação dos valores dos argumentos acima indicados.
-
- numWorkDays
-
Um número inteiro não NULO que atua como a data final do cálculo.
-
Literal: um número inteiro literal digitado diretamente no editor de expressões.
-
Campo do conjunto de dados: qualquer campo de data do conjunto de dados
-
Função ou cálculo escalar — Qualquer função escalar do Quick Suite que retorna uma saída inteira de outra, por exemplo
decimalToIntabs, e assim por diante.addWorkDays(initDate,decimalToInt(sqrt (abs(numWorkDays)) )) -
Campo calculado — Qualquer campo calculado do Quick Suite que retorne um
datevalor.someOtherIntegerCalcField =(num_days * 2) + 12addWorkDays(initDate,someOtherIntegerCalcField) -
Parâmetro — Qualquer
datetimeparâmetro do Quick Suite.addWorkDays(initDate, $param_numWorkDays) -
Qualquer combinação dos valores dos argumentos acima indicados.
-
Tipo de retorno
Inteiro
Valores de saída
Os valores de saída esperados incluem os seguintes:
-
número inteiro positivo (quando start_date < end_date);
-
número inteiro negativo (quando start_date > end_date);
-
NULL, quando um ou ambos os argumentos obtêm um valor nulo do
dataset field.
Erro de entrada
Valores de argumentos não permitidos causam erros, conforme mostrado nos exemplos a seguir.
-
Não é permitido usar um NULL literal como argumento na expressão.
addWorkDays(NULL,numWorkDays)ErrorAt least one of the arguments in this function does not have correct type. Correct the expression and choose Create again. -
Não é permitido usar um literal de string como argumento, ou qualquer outro tipo de dados que não seja uma data, na expressão. No exemplo a seguir, a string
"2022-08-10"parece uma data, mas na verdade é uma string. Para usá-la, você precisaria usar uma função que converta em um tipo de dados de data.addWorkDays("2022-08-10",10)ErrorExpression addWorkDays("2022-08-10", numWorkDays) for function addWorkDays has incorrect argument type addWorkDays(String, Number). Function syntax expects Date, Integer.
Exemplo
Um número inteiro positivo como argumento numWorkDays produzirá uma data futura da data de entrada. Um número inteiro negativo como argumento numWorkDays produzirá uma data resultante no passado da data de entrada. Um valor zero para o argumento numWorkDays produz o mesmo valor da data de entrada, independentemente de ela cair em um dia útil ou em um fim de semana.
A função addWorkDays opera na granularidade: DAY. A precisão não pode ser preservada em nenhuma granularidade inferior ou superior ao nível DAY.
addWorkDays(startDate, endDate)
Vamos supor que haja um campo chamado employmentStartDate com os seguintes valores:
2022-08-10 2022-08-06 2022-08-07
Usando o campo acima e os cálculos a seguir, addWorkDays retorna os valores modificados, conforme mostrado abaixo:
addWorkDays(employmentStartDate,7) 2022-08-19 2022-08-16 2022-08-16 addWorkDays(employmentStartDate,-5) 2022-08-02 2022-08-01 2022-08-03 addWorkDays(employmentStartDate,0) 2022-08-10 2022-08-06 2022-08-07
O exemplo a seguir calcula o bônus total proporcional a ser pago a cada funcionário por dois anos, com base em quantos dias cada funcionário realmente trabalhou.
last_day_of_work = addWorkDays(employment_start_date,730) total_days_worked = netWorkDays(employment_start_date,last_day_of_work) total_bonus =total_days_worked*bonus_per_day