Skip to main content

Fonctions Date et heure de workflow

Une fonction DateHeure exécute une action ou un calcul sur une valeur de date et d'heure. Utilisez une fonction DateHeure pour ajouter ou soustraire des intervalles, trouver la date actuelle, trouver le premier ou le dernier jour du mois, extraire un composant d'une valeur de date/heure ou convertir une valeur vers un format différent.

Prise en charge de la date

Designer Cloud ne peut pas traiter les dates antérieures au 1er janvier 1400.

Designer Cloud représente les dates et les heures au format ISO yyyy-mm-jj HH:MM:SS. Si une valeur DateHeure n'est pas dans ce format, elle sera lue comme une chaîne par Designer Cloud. Pour convertir une colonne en vue de son utilisation et de sa manipulation au format DateHeure, utilisez la fonction DateTimeParse de l'éditeur d'expressions ou l'outil DateHeure.

Certaines fonctions DateHeure vous obligent à définir le format de date. Les chaînes de format consistent en des spécificateurs et des séparateurs.

Spécificateurs

Les spécificateurs commencent toujours par un symbole de pourcentage (%), suivi d’une lettre sensible à la casse. Les données doivent inclure au moins une année à deux chiffres.

Spécificateur

Sortie de DateTimeFormat

Entrée prise en charge avec DateTimeParse

%a

Nom abrégé du jour de la semaine (« Lun »)

Toute abréviation valide d'un jour de la semaine (« lun », « mar », « jeu »). Renvoie une erreur uniquement si le texte donné n'est pas un jour de la semaine. Notez qu'Designer Cloud ne vérifie pas si le nom du jour correspond bien à la date indiquée.

%A

Nom complet du jour de la semaine (« Lundi »)

Nom du jour ou toute abréviation valide d'un jour de la semaine (« lun », « mar », « jeu »). Renvoie une erreur uniquement si le texte donné n'est pas un jour de la semaine. Notez qu'Designer Cloud ne vérifie pas si le nom du jour correspond bien à la date indiquée.

%b

Nom abrégé du mois (« Sep »)

Toute abréviation valide d'un nom de mois (« Sep », « SEPT. »). Renvoie une erreur uniquement si le texte donné n'est pas le nom d'un mois.

%B

Nom complet du mois (« Septembre »)

Nom de mois ou toute abréviation valide d'un nom de mois (« Sep », « SEPT. »). Renvoie une erreur uniquement si le texte donné n'est pas le nom d'un mois.

%c

Date et heure des paramètres régionaux de l'ordinateur.

Non pris en charge

%C

Nombre représentant le siècle (« 20 »)

Non pris en charge

%d

Jour du mois (« 01 »)

1 ou 2 chiffres, sans espaces (« 1 » ou « 01 »).

%D

Équivalent de %m/%d/%y

Non pris en charge

%e

Jour du mois, le 0 initial étant remplacé par un espace («  1 »).

1 ou 2 chiffres, sans espaces (« 1 » ou « 01 »).

%h

Identique à %b ("Sep")

Toute abréviation valide d'un nom de mois (« Sep », « SEPT. »). Renvoie une erreur uniquement si le texte donné n'est pas le nom d'un mois.

%H

Heure au format 24 heures, de 00 à 23.

Jusqu'à 2 chiffres pour l'heure, de 0 à 23. Non compatible avec %p ou %P.

%I

(« i » en majuscules)

Heure au format 12 heures, de 01 à 12.

Jusqu'à 2 chiffres pour l'heure, de 1 à 12. Doit être suivi de %p ou %P.

%j

Jour de l’année, de 001 à 365 (ou 366 en années bissextiles)

Jour de l’année à 3 chiffres, de 001 à 365 (ou 366 en années bissextiles)

%k

24 heures, le zéro au début est une espace, de «  0 » à « 23 ».

Jusqu'à 2 chiffres pour l'heure.

%l

(la lettre « l » en minuscules)

12 heures, le zéro au début est une espace, de «  1 » à « 12 ».

Non pris en charge

%M

Minutes, de 00 à 59

Jusqu'à 2 chiffres pour les minutes.

%m

Numéro du mois, de 01 à 12.

Numéro représentant le mois à 1 ou 2 chiffres, de 1 ou 01 à 12.

%p

« AM » ou « PM »

Insensible à la casse (« aM » ou « Pm »). Doit suivre %I (« I » majuscule, heure au format 12 heures).

%P

« am » ou « pm »

Insensible à la casse (« aM » ou « Pm »). Doit suivre %I (« I » majuscule, heure au format 12 heures).

%S

Secondes, de 00 à 59

Jusqu'à 2 chiffres pour les secondes.

%T

Heure en notation 24 heures. Équivalent de %H:%M:%S

Non pris en charge

%u

Jour de la semaine sous forme de décimale, de 1 à 7, le lundi étant représenté par 1.

Non pris en charge

%U

Renvoie le numéro de la semaine, de 00 à 53 (le dimanche étant considéré comme premier jour de la semaine).

Non pris en charge

%w

Jour de la semaine sous forme de nombre, de 0 à 6, le dimanche étant représenté par 0.

Non pris en charge

%W

Renvoie le numéro de la semaine, de 00 à 53 (le lundi étant considéré comme premier jour de la semaine).

Non pris en charge

%x

Date des paramètres régionaux de l'ordinateur.

Non pris en charge

%X

Heure de l'horloge au format 12 heures, incluant AM ou PM (« 11:51:02 AM »).

Heures:Minutes:Secondes [AM / PM]

%y

Deux derniers chiffres de l'année (« 16 »).

4 chiffres maximum peuvent être lus. La lecture s'arrête à la fin de la chaîne ou dès la détection d'un séparateur. Les chiffres sont ensuite associés à une plage allant de l'année actuelle moins 66 à l'année actuelle plus 33. Par exemple, en 2016, la plage va de 1950 à 2049.

Limitation des dates à 6 chiffres

Étant donné que jusqu'à 4 chiffres sont lus pour l'année, les formats pour lesquels il n'y a que 2 chiffres sans séparateur, comme un horodateur à 6 chiffres (par exemple, %y%m%d pour des dates ressemblant à 170522 pour le 22 mai 2017), sont toujours lus comme des données à 4 chiffres. Pour contourner cette limitation, vous pouvez...

  • Utilisez 4 chiffres pour l'année (par exemple, saisissez 2017 au lieu de 17), en fonction de la plage de dates.

  • Utilisez l'outil RegEx pour insérer une espace après les 2 premiers chiffres de la chaîne.

%Y

Les quatre chiffres de l'année (« 2016 »).

2 ou 4 chiffres sont lus. 2 chiffres sont associés à une plage allant de l'année actuelle moins 66 à l'année actuelle plus 33. Par exemple, en 2016, la plage va de 1950 à 2049.

%z

Décalage par rapport à l'heure UTC (« -600 »).

Non pris en charge

%Z

Nom complet du fuseau horaire (« Mountain Daylight Time »).

Non pris en charge

Séparateurs

Les séparateurs sont insérés entre les spécificateurs date/heure pour former une chaîne de format.

Séparateur

Sortie de DateTimeFormat

Entrée prise en charge avec DateTimeParse*

/

/

/ ou -

-

-

/ ou -

espace

Une espace

Toute séquence de caractères d'espace vide.

%n

Une nouvelle ligne

Non pris en charge

%t

Une tabulation

Non pris en charge

autre

Autres caractères, tels que virgule, point et deux-points.

Autres caractères, tels que virgule, point et deux-points.

* Avec DateTimeParse, les barres obliques (/) et les tirets (-) peuvent être utilisés de façon interchangeable. Toutefois, les virgules, deux-points et tous les autres séparateurs doivent correspondre exactement aux données entrantes.

Paramètres de langue

Les éléments suivants sont les valeurs compatibles du paramètre « l » (langue) pris en charge par les fonctions DateTimeFormat et DateTimeParse.

Nom de la langue en anglais

Nom de la langue dans la langue

Code de langue

Anglais

English

fr

Italien

Italiano

it

Français

Français

fr

Allemand

Deutsch

de

Japonais

日本語

ja

Espagnol

Español

es

Portugais

Português

pt

Chinois

简体中文

zh

Outre les valeurs ci-dessus, les valeurs d'au moins 2 caractères commençant par l'une des valeurs ci-dessus sont également acceptées. Par exemple, eng, engl, engli, etc. pour l'anglais ou esp, espa, sp, spa, span, etc. pour l'espagnol.

DateTimeAdd

DateTimeAdd(dt,i,u): ajoute un intervalle spécifique à une valeur de date/heure.

Paramètres

dt : données de date/heure, exprimées par une colonne sélectionnée ou une valeur de date/heure spécifiée entre guillemets.

i : nombre entier positif ou négatif de temps à ajouter ou à soustraire.

u : unité de date/heure, spécifiée entre guillemets (années, mois, jours, heures, minutes ou secondes).

Exemple

DateTimeAdd(DateTimeToday(), -1, "days") renvoie la date d'hier.

DateTimeAdd(DateTimeFirstOfMonth(), 1, "months") renvoie le premier du mois suivant.

DateTimeAdd("2016-01-30", 1, "month") renvoie 2016-02-29 (parce que février n’a pas 30 jours, mais cette année avait un 29 février).

DateTimeAdd("2016-03-30", -1, "month") renvoie 2016-02-29 (parce que février n’a pas 30 jours, mais cette année avait un 29 février).

En savoir plus

  • Toute fraction de la durée est tronquée. Par exemple, il n'est pas possible d'ajouter « 1,5 heure ». Ajoutez plutôt « 90 minutes ».

  • L’ajout d’une unité ne modifie pas la valeur des petites unités. Par exemple, l’ajout d’heures ne modifie pas la valeur des minutes ou des secondes. L’ajout de mois ne modifie pas le jour ou l’heure, sauf si le mois résultant ne comprend pas ce jour. Dans ce cas, le système affiche le dernier jour du mois en question.

DateTimeDay

DateTimeDay(dt): renvoie la valeur numérique du jour du mois d'une valeur de date/heure.

Paramètres

dt : données de date/heure, exprimées par une colonne sélectionnée ou une valeur de date/heure spécifiée entre guillemets.

Exemple

DateTimeDay("2017-03-24 11:43:23")renvoie 24.

DateTimeDiff

DateTimeDiff(dt1,dt2,u): soustrait le deuxième argument du premier et renvoie la différence sous forme de nombre entier. La durée est retournée sous la forme d'un nombre, et non d'une chaîne, dans les unités de temps spécifiées.

Paramètres

dt : données de date/heure, exprimées par une colonne sélectionnée ou une valeur de date/heure spécifiée entre guillemets.

u : unité de date/heure, spécifiée entre guillemets (années, mois, jours, heures, minutes ou secondes).

Exemple

DateTimeDiff("2016-02-15 00:00:00", "2016-01-15 00:00:01", "Months")renvoie 1 (car le début et la fin sont le même jour du mois).

DateTimeDiff("2012-02-29","2011-03-01","years")renvoie 0 (même si 2012-02-29 est 365 jours après 2011-03-01, le 29 février vient avant le 1er mars, par conséquent, « une année » n'est pas encore achevée).

DateTimeDiff("2016-02-14", "2016-01-15", "Months")renvoie 0 (parce que les jours de février sont inférieurs aux jours de janvier.)

DateTimeDiff("2016-02-14 23:59:59", "2016-01-15 00:00:00", "Months")renvoie 0 (même s’il ne manque qu'une seconde pour arriver au jour souhaité)

DateTimeDiff('2017-02-28', '2016-02-29', 'Months')renvoie 11 (même si le 28 février est le dernier jour du mois de février 2017, 28 est moins que 29).

En savoir plus

  • Pour les différences de mois et d’année, un mois est uniquement pris en considération quand le jour de fin atteint le jour de début, en ignorant l’heure du jour.

  • Pour la précision des paramètres Jour, Heure, Minute et Seconde, le résultat est calculé avec exactitude, puis les fractions sont tronquées, non arrondies. Par conséquent…

    DateTimeDiff(‘2016-01-01 00:59:59’, ‘2016-01-01 00:00:00’, ‘Hours’)est zéro.

    DateTimeDiff(‘2016-01-01 23:59:59’, ‘2016-01-01 00:00:00’, ‘Days’)est zéro.

  • Les noms de précisions peuvent être abrégés pour ne contenir que leurs trois premiers caractères (« sec » et « min » par exemple) et ne sont pas sensibles à la casse.

  • Faites attention lorsque vous enregistrez les différences temporelles en secondes. Int32 ne peut enregistrer qu'une différence de 68 ans en secondes ou de 4082 ans en minutes. Vous pouvez utiliser des données de type Double ou Int64 pour conserver les intervalles entre toutes les dates prises en charge.

DateTimeFirstOfMonth

DateTimeFirstOfMonth(): renvoie le premier jour du mois, à minuit.

DateTimeFormat

DateTimeFormat(dt,f,l): convertit des données de date/heure du format ISO en un autre format spécifié (f), dans une langue spécifiée (l), pour une utilisation par une autre application. La sortie générée est un type de données chaîne.

Paramètres

dt : données de date/heure, exprimées par une colonne sélectionnée ou une valeur de date/heure spécifiée entre guillemets.

f : le format dans lequel les données sont converties, exprimé par une chaîne de format.

l : paramètre de langue facultatif. Par défaut, la langue est définie sur celle sélectionnée dans Designer Cloud. Par exemple, si la langue est définie sur Français, la fonction indique DateTimeParse(dt,f,"Français") par défaut.

Exemples

DateTimeFormat([DateTime_Out],"%d-%m-%Y")renvoie 22-04-2008 pour la date du 22 avril 2008 (format ISO : 2008-04-22).

DateTimeFormat([DateTime_Out],"%A","Spanish")renvoie « martes » pour la date ISO 2020-07-14 (où le 14 juillet est un mardi).

DateTimeHour

DateTimeHour(dt): renvoie la partie horaire d'une valeur de date/heure.

Paramètres

dt : données de date/heure, exprimées par une colonne sélectionnée ou une valeur de date/heure spécifiée entre guillemets.

Exemple

DateTimeHour("2017-03-24 11:43:23")renvoie 11.

DateTimeHour("2017-03-24")renvoie 0, car minuit est l’heure prise en compte quand aucune heure n’est indiquée avec une date.

DateTimeLastOfMonth

DateTimeLastOfMonth(): renvoie le dernier jour du mois en cours, avec l'horloge définie à une seconde avant la fin du jour (23:59:59).

Designer Cloud utilise la date et l'heure auxquelles la formule est analysée pour la première fois. Dans le cadre d’un traitement par lots, cette même heure est utilisée pour chaque nouvel ensemble de données. Cela permet de garantir la cohérence des résultats en cas d'un long processus.

DateTimeMinutes

DateTimeMinutes(dt): renvoie la partie minutes d'une valeur de date/heure.

Paramètres

dt : données de date/heure, exprimées sous la forme d'une colonne sélectionnée ou d'une valeur de date/heure spécifiée entre guillemets.

Exemple

DateTimeMinutes("2017-03-24 11:43:23")renvoie 43.

DateTimeMonth

DateTimeMonth(dt): renvoie la valeur numérique du mois d'une valeur de date/heure.

Paramètres

dt : données de date/heure, exprimées par une colonne sélectionnée ou une valeur de date/heure spécifiée entre guillemets.

Exemple

DateTimeMonth("2017-03-24 11:43:23")renvoie 3.

DateTimeMonth("11:43:23")renvoie [Null], parce que les données entrantes ne sont pas valides.

DateTimeParse

DateTimeParse(dt, f): convertit une chaîne de date (string) dans un format (f) et une langue (l) spécifiés au format ISO standard (yyyy-mm-dd HH:MM:SS avec une précision date/heure facultative le cas échéant). Si le format spécifié est moins précis, la sortie est tronquée.

Paramètres

  • dt : les données de chaîne date/heure, exprimées par un champ sélectionné ou une chaîne de date/heure entre guillemets. Les données entrantes doivent être de type Chaîne et peuvent se présenter dans tout format de date/heure, tant que ce format est conforme à celui que vous définissez pour le paramètre f.

  • f : format des données de chaîne de date entrantes que vous convertissez, exprimées dans une chaîne de format entre guillemets.

Exemple

  • DateTimeParse("2016/28-03","%Y/%d-%m") renvoie 2016-03-28.

  • DateTimeParse('Oct 4, 22 11:59:57.99', '%b %d, %y %H:%M:%S') renvoie « 2022-10-04 11:59:57 ». Cette fonction supprime les chiffres de fin.

DateTimeQuarter

DateTimeQuarter(dt,[Q1Start]): renvoie la valeur numérique du trimestre qui contient une valeur date/heure (AAAA-MM-JJ). Utilisez le paramètre numérique facultatif pour indiquer le mois de début du premier trimestre (Q1).

Paramètres

dt : données de type date/heure

Q1Start : paramètre numérique facultatif pour indiquer le mois de début du premier trimestre (1 à 12).

Exemple

DateTimeQuarter("2023-01-03") renvoie 1. Aucune erreur ne se produit, car le deuxième paramètre est facultatif.

DateTimeQuarter("2023-05-03", 1) renvoie 2.

DateTimeQuarter("2023-05-03", 7) renvoie 4. Le paramètre facultatif indique que le premier trimestre commence en juillet.

DateTimeQuarter("2023-05-03 12:04:55", 7) renvoie 4. Le paramètre facultatif indique que le premier trimestre commence en juillet, et l'horodatage est ignoré.

DateTimeQuarter("2023-01-03", 13) Renvoie Null. Le deuxième paramètre doit être une valeur numérique comprise entre 1 et 12.

DateTimeQuarter("2023-01-03", 0) Renvoie Null. Le deuxième paramètre doit être une valeur numérique comprise entre 1 et 12.

DateTimeQuarter("2023-01-03", -1) Renvoie Null. Le deuxième paramètre doit être une valeur numérique comprise entre 1 et 12.

DateTimeQuarter("12:00:55") Renvoie Null.

DateTimeSeconds

DateTimeSeconds(dt): renvoie la partie secondes d'une valeur de date/heure.

Paramètres

dt : données de date/heure, exprimées par une colonne sélectionnée ou une valeur de date/heure spécifiée entre guillemets.

DateTimeTrim

DateTimeTrim(dt, f): retire les parties inutiles d'une valeur de date/heure et renvoie la valeur de date/heure modifiée.

Paramètres

  • dt : données de date/heure, exprimées par une colonne sélectionnée ou une valeur de date/heure spécifiée entre guillemets.

  • f : type d'ajustement. Plusieurs options sont possibles :

    • firstofmonth : ajustement au début du mois (ce qui fait la même chose que « month »).

    • lastofmonth : ajustement jusqu'à une seconde avant la fin du dernier jour du mois.

    • year : ajustement à minuit le 1er janvier.

    • month : ajustement à minuit le premier jour du mois.

    • day : ajustement au jour (à minuit). Cette option permet de convertir une valeur de date/heure en jour, en remettant l'heure à zéro (pas une date).

    • hour : ajustement à l'heure.

    • minute : ajustement à la minute.

    • Secondes : ajustement aux secondes et aux fractions de seconde de la section Mots-clés des unités de date/heure.

L'ajustement d'une valeur de date/heure n'arrondit pas la valeur renvoyée. Par exemple, l’heure 15:59:59 ajustée à l’heure devient 15:00:00 et non 16:00:00.

Exemple

  • DateTimeTrim("2016-12-07 16:03:00","year") renvoie 2016-01-01 00:00:00.

  • DateTimeTrim('2016-12-07 11:59:57.99','msec') renvoie 11:59:57.990.

  • DateTimeTrim('2016-12-07 11:59:57.99',4) renvoie 11:59:57.9900.

  • DateTimeTrim('2016-12-07 11:59:57.123456789','milliseconds') renvoie 11:59:57.123.

DateTimeYear

DateTimeYear(dt): renvoie la valeur numérique de l'année d'une valeur de date/heure.

Paramètres

dt : données de date/heure, exprimées par une colonne sélectionnée ou une valeur de date/heure spécifiée entre guillemets.

Exemple

DateTimeYear("2017-03-24 11:43:23")renvoie 2017.

ToDate

ToDate(x): convertit une chaîne, un nombre ou une valeur de date/heure en une date.

  • Une chaîne entrante doit être au format YYYY-MM-DD. Par exemple, 2020-10-31.

  • Un nombre entrant doit être au format de date d'Excel, où le nombre représente le nombre de jours écoulés depuis le 01-01-1900. Par exemple, 7000 correspond au 03-01-1919.

  • Une valeur de date/heure entrante doit être au format YYYY-MM-DD hh:mm:ss. Par exemple, 2020-10-31 12:00:00.

Exemples

ToDate(2020-10-31) renvoie 2020-10-31 comme date.

ToDate(7000) renvoie 1919-03-01 comme date.

ToDate(2020-10-31 12:00:00) renvoie 2020-10-31 comme date.

ToDateTime

DateTimeTrim(ToDateTime(x), t) : convertit une valeur de chaîne, de nombre ou de date en date/heure. La fonction ToDateTime ne supporte pas une précision supérieure à quelques secondes. Elle limite les valeurs Excel à la représentation des secondes (5 chiffres, jusqu'à 99 999).

  • Une chaîne entrante doit être au format YYYY-MM-DD hh:mm:ss. Par exemple, 2020-10-31 12:00:00.

  • Un nombre entrant doit être au format de date/heure d'Excel, où le nombre représente le nombre de jours écoulés depuis le 01-01-1900. Par exemple, 7000.354167 correspond au 03-01-1919 à 8:30 AM.

Exemple

  • ToDateTime('2020-10-31') renvoie 2020-10-31 00:00:00 comme valeur de date/heure.

  • ToDateTime(7000.354167) renvoie 1919-03-01 08:30:00 comme valeur de date/heure.

  • ToDateTime('2020-10-31 12:00:00') renvoie 2020-10-31 12:00:00 comme valeur de date/heure.