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
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
date
do 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
,addDateTime
e assim por diante.addWorkDays(
epochDate(1659484800)
,numWorkDays
) -
Campos calculados: qualquer campo calculado do QuickSight que retorne um valor de
date
.calcFieldStartDate = addDateTime(
10
, “DD
”,startDate
) addWorkDays(calcFieldStartDate
,numWorkDays
) -
Parâmetros: qualquer parâmetro de
datetime
do QuickSight.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 QuickSight que retorna uma saída de número inteiro de outra, por exemplo
decimalToInt
,abs
e assim por diante.addWorkDays(
initDate
,decimalToInt(sqrt (abs(numWorkDays)) )
) -
Campo calculado: qualquer campo calculado do QuickSight que retorna um valor de
date
.someOtherIntegerCalcField =
(num_days * 2) + 12
addWorkDays(initDate
,someOtherIntegerCalcField
) -
Parâmetro: qualquer parâmetro de
datetime
do QuickSight.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
)Error
At 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
)Error
Expression 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
