Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
addWorkDays
addWorkDays
Ajoute ou soustrait un nombre déterminé de jours ouvrables à une valeur de date donnée. La fonction renvoie une date pour un jour ouvrable, qui tombe un nombre désigné de jours ouvrables après ou avant une valeur de date d'entrée donnée.
Syntaxe
addWorkDays(
initDate
,numWorkDays
)
Arguments
- initDate
-
Il s'agit d'une date valide non NULL qui sert de date de début pour le calcul.
-
Champ du jeu de données – Tout champ
date
du jeu de données auquel vous ajoutez cette fonction. -
Fonction date – Toute date produite par une autre fonction
date
, par exempleparseDate
,epochDate
,addDateTime
, etc.addWorkDays(
epochDate(1659484800)
,numWorkDays
) -
Champs calculés : tout champ QuickSight calculé renvoyant une
date
valeur.calcFieldStartDate = addDateTime(
10
, “DD
”,startDate
) addWorkDays(calcFieldStartDate
,numWorkDays
) -
Paramètres — N'importe quel QuickSight
datetime
paramètre.addWorkDays($
paramStartDate
,numWorkDays
) -
Toute combinaison des valeurs d'argument énoncées ci-dessus.
-
- numWorkDays
-
Un entier non NULL qui sert de date de fin pour le calcul.
-
Littéral – Un entier littéral saisi directement dans l'éditeur d'expression.
-
Champ du jeu de données – Tout champ de date du jeu de données
-
Fonction ou calcul scalaire : toute QuickSight fonction scalaire renvoyant un entier en sortie depuis une autre
decimalToInt
, par exempleabs
, etc.addWorkDays(
initDate
,decimalToInt(sqrt (abs(numWorkDays)) )
) -
Champ calculé : tout champ QuickSight calculé renvoyant une
date
valeur.someOtherIntegerCalcField =
(num_days * 2) + 12
addWorkDays(initDate
,someOtherIntegerCalcField
) -
Paramètre — N'importe quel QuickSight
datetime
paramètre.addWorkDays(
initDate
, $param_numWorkDays
) -
Toute combinaison des valeurs d'argument énoncées ci-dessus.
-
Type de retour
Entier
Valeurs de sortie
Les valeurs de sortie attendues sont les suivantes :
-
Nombre entier positif (lorsque start_date < end_date)
-
Nombre entier négatif (lorsque start_date > end_date)
-
NULL lorsque l'un ou les deux arguments reçoivent une valeur nulle de la fonction
dataset field
.
Erreurs d'entrée
Les valeurs d'argument non autorisées provoquent des erreurs, comme le montrent les exemples suivants.
-
L'utilisation d'un littéral NULL comme argument dans l'expression n'est pas autorisée.
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. -
L'utilisation d'une chaîne littérale comme argument, ou de tout autre type de données autre qu'une date, dans l'expression n'est pas autorisée. Dans l'exemple suivant, la chaîne
"2022-08-10"
ressemble à une date, mais il s'agit en fait d'une chaîne de caractères. Pour l'utiliser, vous devez utiliser une fonction qui convertit le type de données en date.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.
Exemple
Un entier positif en tant qu'argument numWorkDays
produira une date dans le futur de la date d'entrée. Un entier négatif comme argument numWorkDays
donnera une date résultante dans le passé de la date d'entrée. Une valeur nulle pour l'argument numWorkDays
donne la même valeur que la date d'entrée, qu'elle tombe ou non un jour ouvrable ou un week-end.
La fonction addWorkDays
opère à la granularité : DAY
. La précision ne peut être préservée à une granularité inférieure ou supérieure au niveau DAY
.
addWorkDays(startDate, endDate)
Supposons qu'il existe un champ nommé employmentStartDate
avec les valeurs suivantes :
2022-08-10 2022-08-06 2022-08-07
En utilisant le champ ci-dessus et les calculs suivants, addWorkDays
renvoie les valeurs modifiées comme indiqué ci-dessous :
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
L'exemple suivant calcule la prime totale au prorata à verser à chaque employé pour deux ans, en fonction du nombre de jours de travail effectif de chaque employé.
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