Fonctions Now, Today, IsToday, UTCNow, UTCToday et IsUTCToday
S’applique à : Applications canevas
Flux de bureau
Colonnes de formule Dataverse
Applications pilotées par modèle
Power Pages
Power Platform CLI
Renvoie la date et l’heure actuelles, et vérifie si une valeur de date/heure correspond au jour présent.
Note
Les commandes pac power-fx de PAC CLI ne prennent pas en charge les fonctions UTCNow, UTCToday et IsUTCToday.
Description
La fonction Now renvoie la date et l’heure actuelles sous la forme d’une valeur de date/heure.
La fonction Today renvoie la date actuelle sous la forme d’une valeur de date/heure. La partie heure correspond à minuit. Today présente la même valeur tout au long d’une journée, de minuit ce jour là à minuit le lendemain.
La fonction IsToday vérifie si une valeur de date/heure est comprise entre minuit ce jour là et minuit le lendemain. Cette fonction retourne une valeur booléenne (true ou false).
Les fonctions Now,Today et IsToday fonctionnent avec l’heure locale de l’utilisateur actuel.
Les fonctions UTCNow, UTCToday et IsUTCToday sont les mêmes que leurs homologues non UTC mais fonctionnent avec des valeurs indépendantes du fuseau horaire et utilisent le Temps universel coordonné (UTC).
Note
- Les fonctions UTCNow, UTCToday et IsUTCToday ne sont disponibles que dans les colonnes de formule Microsoft Dataverse for Teams, et uniquement pour les champs et les valeurs indépendants du temps.
-
Les fonctions Now, Today et IsToday ne sont pas disponibles dans les colonnes de formule Dataverse for Teams car les évaluations sont faites sans connaître le fuseau horaire local de l’utilisateur actuel.
Pour plus d’informations : Travailler avec des colonnes de table de formules dans Dataverse for Teams
Consultez Date, Heure et DateHeure dans la documentation des types de données et Utilisation des dates et des heures pour plus d’informations.
Fonctions volatiles
Now, Today, UTCNow et UTCToday sont des fonctions volatiles. Ces fonctions renvoient une valeur différente pour chaque évaluation.
Quand elle est utilisée dans une formule de flux de données, une fonction volatile retourne une valeur différente seulement si la formule dans laquelle elle apparaît est réévaluée. Si rien d’autre ne change dans la formule, elle aura la même valeur pendant toute l’exécution de votre application.
Par exemple, un contrôle d’étiquette Label1.Text = Now() ne change pas pendant que votre application est active. Seule la fermeture de l’application suivie de sa réouverture aboutit à une nouvelle valeur.
La fonction est réévaluée si elle fait partie d’une formule où quelque chose d’autre a changé. Par exemple, si nous modifions notre exemple en y intégrant un contrôle Slider avec Label1.Text = DateAdd( Now(), Slider1.Value, Minutes ), l’heure actuelle est extraite chaque fois que la valeur du contrôle Slider change et la propriété Text de l’étiquette est réévaluée.
Quand elles sont utilisées dans une formule de comportement, les fonctions volatiles sont évaluées chaque fois que la formule de comportement est évaluée. Un exemple est donné ci-dessous.
Syntaxe
Utilisation du fuseau horaire local de l’utilisateur
Now()
Today()
IsToday( DateHeure )
- DateHeure : obligatoire. Valeur de date/heure à tester.
Utilisation du Temps universel coordonné (UTC)
UTCNow()
UTCToday()
IsUTCToday( TimeZoneIndependentTime )
- TimeZoneIndependentDateTime : obligatoire. La valeur date/heure indépendante du fuseau horaire à tester.
Examples
Pour les exemples de cette section, l’heure actuelle est 20h58 au 11 juillet 2021 dans le fuseau horaire du Pacifique (UTC-8) et la langue est en-us.
Formule | Description | Résultat |
---|---|---|
Text( Now(), "mm/dd/yyyy hh:mm:ss" ) | Récupère la date et l’heure actuelles dans le fuseau horaire de l’utilisateur et affiche le résultat sous forme de chaîne. | « 11/07/2021 20:58:00 » |
Text( Today(), "mm/dd/yyyy hh:mm:ss" ) | Récupère la date actuelle, la partie heure restant définie sur minuit, et l’affiche sous forme de chaîne. | « 12/07/2021 00:00:00 » |
IsToday( Now() ) | Vérifie si la date et l’heure actuelles sont comprises entre minuit ce jour là et minuit le lendemain. | true |
IsToday( Today() ) | Vérifie si la date actuelle est comprise entre minuit ce jour là et minuit le lendemain. | true |
Text( DateAdd( Now(), 12 ), "mm/dd/yyyy hh:mm:ss" ) | Récupère la date et l’heure actuelles, y ajoute 12 jours et affiche le résultat sous forme de chaîne. | « 23/07/2021 20:58:00 » |
Text( DateAdd( Today(), 12 ), "mm/dd/yyyy hh:mm:ss" ) | Récupère la date, y ajoute 12 jours et affiche le résultat sous forme de chaîne. | « 23/07/2021 00:00:00 » |
IsToday( DateAdd( Now(), 12 ) ) | Vérifie si la date et l’heure actuelles plus 12 jours sont comprises entre minuit ce jour là et minuit le lendemain. | false |
IsToday( DateAdd( Today(), 12 ) ) | Vérifie si la date actuelle plus 12 jours est comprise entre minuit ce jour là et minuit le lendemain. | faux |
Hour( UTCNow() ) | Récupère la date et l’heure actuelles en UTC et extrait uniquement l’heure, soit 8 heures d’avance sur l’heure locale. | 4 |
Day( UTCToday() ) | Récupère la date actuelle uniquement en UTC et extrait le jour, qui est en avance d’un jour sur l’heure locale. | 12 |
IsUTCToday( UTCNow() ) | Vérifie si la date et l’heure actuelles sont comprises entre minuit ce jour là et minuit le lendemain, le tout en temps UTC. | true |
IsUTCToday( UTCToday() ) | Vérifie si la date actuelle est comprise entre minuit ce jour et minuit le lendemain, le tout en temps UTC. | true |
Affiche une horloge qui se met à jour en temps réel
Ajoutez un contrôle Timer, définissez sa propriété Duration sur 1000 et définissez sa propriété Repeat sur true.
Le minuteur s’exécute pendant une seconde, redémarre automatiquement et continue sur ce schéma.
Définissez la propriété OnTimerEnd sur cette formule :
Set( CurrentTime, Now() )
Chaque fois que le minuteur redémarre (après chaque seconde), cette formule définit la variable globale CurrentTime sur la valeur actuelle de la fonction Now.
Ajoutez un contrôle Label et définissez sa propriété Text sur cette formule :
Text( CurrentTime, LongTime24 )
Utilisez la fonction Text pour mettre en forme la date et l’heure comme vous le souhaitez, ou définissez simplement cette propriété sur CurrentTime pour afficher les heures et les minutes, mais pas les secondes.
Affichez un aperçu de l’application en appuyant sur F5, puis cliquez ou appuyez sur le minuteur pour le démarrer.
L’étiquette montre en permanence l’heure actuelle, arrondie à la seconde.
Définissez la propriété AutoStart du minuteur sur true et sa propriété Visible sur false.
Le minuteur est invisible et démarre automatiquement.
Définissez la propriété OnStart de l’écran de façon à ce que la variable CurrentTime ait une valeur valide, comme dans cet exemple :
Set(CurrentTime, Now())
L’étiquette apparaît dès que l’application démarre (avant que le minuteur s’exécute pour une seconde complète).