Συναρτήσεις Now, Today, IsToday, UTCNow, UTCToday, IsUTCToday

Ισχύει σε: Εφαρμογές καμβά Ροές επιφάνειας εργασίας Στήλες τύπων Dataverse Εφαρμογές βάσει μοντέλου Power Platform CLI

Επιστρέφει την τρέχουσα ημερομηνία και ώρα και ελέγχει αν μια τιμή ημερομηνίας/ώρας είναι σήμερα.

Σημείωμα

Οι εντολές PAC CLI pac power-fx δεν υποστηρίζουν τις συναρτήσεις UTCNow, UTCToday και IsUTCToday.

Description

Η συνάρτηση Now επιστρέφει την τρέχουσα ημερομηνία και ώρα ως τιμή ημερομηνίας/ώρας.

Η συνάρτηση Today επιστρέφει την τρέχουσα ημερομηνία ως τιμή ημερομηνίας/ώρας. Το μέρος της ώρας είναι μεσάνυχτα. Η συνάρτηση Today έχει την ίδια τιμή όλη την ημέρα, από τα μεσάνυχτα σήμερα μέχρι τα μεσάνυχτα αύριο.

Η συνάρτηση IsToday ελέγχει αν μια τιμή ημερομηνίας/ώρας είναι ανάμεσα στα μεσάνυχτα σήμερα και τα μεσάνυχτα αύριο. Αυτή η συνάρτηση επιστρέφει μια δυαδική τιμή (true ή false).

Οι συναρτήσεις Now, Today και IsToday λειτουργούν με την τοπική ώρα του τρέχοντος χρήστη.

Οι συναρτήσεις UTCNow, UTCToday και IsUTCToday είναι οι ίδιες με τα τμήματα μέτρησης που δεν είναι UTC αλλά λειτουργούν με ανεξάρτητες τιμές ζώνης ώρας και χρησιμοποιούν την παγκόσμια ώρα (UTC).

Σημείωμα

  • Οι συναρτήσεις UTCNow, UTCToday και IsUTCToday είναι διαθέσιμες μόνο σε στήλες τύπου Microsoft Dataverse for Teams και μόνο για πεδία και τιμές που είναι ανεξάρτητες από ώρα.
  • Οι συναρτήσεις Now, Today και IsToday δεν είναι διαθέσιμες σε στήλες τύπου Dataverse for Teams καθώς οι αξιολογήσεις γίνονται χωρίς να γνωρίζετε την τοπική ζώνη ώρας του τρέχοντος χρήστη.
    Περισσότερες πληροφορίες: Εργασία με στήλες πίνακα τύπου στο Dataverse for Teams

Δείτε Date, Time και DateTime στην τεκμηρίωση τύπων δεδομένων και Εργασία με ημερομηνίες και ώρες για περισσότερες πληροφορίες.

Αόριστες συναρτήσεις

Οι συναρτήσεις Now, Today, UTCNow και UTCToday είναι αόριστες. Αυτές οι συναρτήσεις επιστρέφουν μια διαφορετική τιμή για κάθε αξιολόγηση.

Όταν χρησιμοποιείται σε έναν τύπο ροής δεδομένων, μια αόριστη συνάρτηση θα επιστρέψει μόνο μια διαφορετική τιμή εάν υπολογιστεί ξανά ο τύπος στον οποίο εμφανίζεται. Αν δεν αλλάξει τίποτα άλλο στον τύπο, θα έχει την ίδια τιμή κατά τη διάρκεια εκτέλεσης της εφαρμογής σας.

Για παράδειγμα, ένα Στοιχείο ελέγχου Label με Label1.Text = Now() δεν θα αλλάξει ενώ είναι ενεργή η εφαρμογή σας. Μόνο το κλείσιμο και το άνοιγμα της εφαρμογής εκ νέου θα έχει ως αποτέλεσμα μια νέα τιμή.

Η συνάρτηση θα υπολογιστεί ξανά εάν είναι μέρος ενός τύπου στον οποίο έχει αλλάξει κάτι άλλο. Για παράδειγμα, αν τροποποιήσουμε το παράδειγμά μας έτσι ώστε να περιλαμβάνει ένα στοιχείο ελέγχου ρυθμιστικού με Label1.Text = DateAdd( Now(), Slider1.Value, Minutes ), θα ανακτάται η τρέχουσα ώρα κάθε φορά που αλλάζει η τιμή του στοιχείου ελέγχου Slider και υπολογίζεται ξανά η ιδιότητα κειμένου της ετικέτας.

Όταν χρησιμοποιούνται σε έναν τύπο συμπεριφοράς, οι αόριστες συναρτήσεις θα υπολογίζονται κάθε φορά που υπολογίζεται ο τύπος συμπεριφοράς. Δείτε παρακάτω ένα παράδειγμα.

Σύνταξη

Χρήση τοπικής ώρας χρήστη

Now()

Today()

IsToday( DateTime )

  • DateTime - Υποχρεωτικό. Η τιμή ημερομηνίας/ώρας προς δοκιμή.

Χρήση παγκόσμιας ώρας (UTC)

UTCNow()

UTCToday()

IsUTCToday( TimeZoneIndependentTime )

  • TimeZoneIndependentDateTime - Υποχρεωτικό. Η τιμή ημερομηνίας/ώρας που είναι ανεξάρτητη από τη ζώνη ώρας και θα ελεγχθεί.

Παραδείγματα

Για τα παραδείγματα σε αυτήν την ενότητα, η τρέχουσα ώρα είναι 8:58 μμ στις 11 Ιουλίου 2021 στη Ζώνη ώρας Ειρηνικού (UTC-8) και η γλώσσα είναι en-us.

Τύπος Περιγραφή Αποτέλεσμα
Text( Now(), "mm/dd/yyyy hh:mm:ss" ) Επιστρέφει την τρέχουσα ημερομηνία και ώρα στη ζώνη ώρας του χρήστη και τα εμφανίζει ως συμβολοσειρά. "07/11/2021 20:58:00"
Text( Today(), "mm/dd/yyyy hh:mm:ss" ) Επιστρέφει την τρέχουσα ημερομηνία μόνο, αφήνοντας το τμήμα χρόνου ως μεσάνυχτα, και την εμφανίζει ως συμβολοσειρά. "07/12/2021 00:00:00"
IsToday( Now() ) Ελέγχει αν η τρέχουσα ημερομηνία και ώρα είναι ανάμεσα στα μεσάνυχτα σήμερα και τα μεσάνυχτα αύριο. true
IsToday( Today() ) Ελέγχει αν η τρέχουσα ημερομηνία είναι ανάμεσα στα μεσάνυχτα σήμερα και τα μεσάνυχτα αύριο. true
Text( DateAdd( Now(), 12 ), "mm/dd/yyyy hh:mm:ss" ) Επιστρέφει την τρέχουσα ημερομηνία και ώρα, προσθέτει 12 ώρες στο αποτέλεσμα και το εμφανίζει ως συμβολοσειρά. "07/23/2021 20:58:00"
Text( DateAdd( Today(), 12 ), "mm/dd/yyyy hh:mm:ss" ) Επιστρέφει την τρέχουσα ημερομηνία, προσθέτει 12 ώρες στο αποτέλεσμα και το εμφανίζει ως συμβολοσειρά. "07/23/2021 00:00:00"
IsToday( DateAdd( Now(), 12 ) ) Ελέγχει αν η τρέχουσα ημερομηνία και ώρα, συν 12 ημέρες, είναι ανάμεσα στα μεσάνυχτα σήμερα και τα μεσάνυχτα αύριο. false
IsToday( DateAdd( Today(), 12 ) ) Ελέγχει αν η τρέχουσα ημερομηνία, συν 12 ημέρες, είναι ανάμεσα στα μεσάνυχτα σήμερα και τα μεσάνυχτα αύριο. ψευδής
Hour( UTCNow() ) Επιστρέφει την τρέχουσα ημερομηνία και ώρα σε UTC και εξάγει μόνο την ώρα, η οποία είναι 8 ώρες πριν από την τοπική ώρα. 4
Day( UTCToday() ) Επιστρέφει την τρέχουσα ημερομηνία μόνο σε UTC και εξάγει μόνο την ημέρα, η οποία είναι 1 ημέρα πριν από την τοπική ώρα. 12
IsUTCToday( UTCNow() ) Ελέγχει αν η τρέχουσα ημερομηνία και ώρα είναι ανάμεσα στα μεσάνυχτα σήμερα και τα μεσάνυχτα αύριο, όλα σε ώρα UTC. αληθές
IsUTCToday( UTCToday() ) Ελέγχει αν η τρέχουσα ημερομηνία είναι ανάμεσα στα μεσάνυχτα σήμερα και τα μεσάνυχτα αύριο, όλα σε ώρα UTC. αληθές

Εμφάνιση ενός ρολογιού που ενημερώνονται σε πραγματικό χρόνο

  1. Προσθέστε ένα στοιχείο ελέγχου Timer, ορίστε την ιδιότητα Duration σε 1000 και ορίστε την ιδιότητα Repeat σε true.

    Ο χρονοδιακόπτης θα εκτελεστεί για ένα δευτερόλεπτο, θα ξεκινήσει αυτόματα από την αρχή και θα συνεχίσει με αυτό το μοτίβο.

  2. Ορίστε την ιδιότητα OnTimerEnd του στοιχείου ελέγχου σε αυτόν τον τύπο:

    Set( CurrentTime, Now() )

    Όταν ξεκινάει αυτόματα από την αρχή ο χρονοδιακόπτης (μετά από κάθε δευτερόλεπτο), αυτός ο τύπος ορίζει την καθολική μεταβλητή CurrentTime στην τρέχουσα τιμή της συνάρτησης Now.

    Μια οθόνη που περιέχει ένα στοιχείο ελέγχου χρονοδιακόπτη με τον τύπο OnTimerEnd = Set(CurrentTime, Now()).

  3. Προσθέστε ένα στοιχείο ελέγχου Label και ορίστε την ιδιότητά του Text σε αυτόν τον τύπο:

    Text( CurrentTime, LongTime24 )

    Χρησιμοποιήστε τη συνάρτηση Text για να μορφοποιήσετε την ημερομηνία και την ώρα όπως επιθυμείτε ή ορίστε αυτήν την ιδιότητα σε CurrentTime, για να εμφανίζονται οι ώρες και τα λεπτά αλλά όχι τα δευτερόλεπτα.

    Μια οθόνη που περιέχει ένα Στοιχείο ελέγχου Label με την ιδιότητα Text ορισμένη ως Text( CurrentTime, LongTime24).

  4. Κάντε προεπισκόπηση της εφαρμογής πατώντας το πλήκτρο F5 και έπειτα ξεκινήστε τον χρονοδιακόπτη κάνοντας κλικ ή πατώντας τον.

    Η ετικέτα εμφανίζεται συνεχώς την τρέχουσα ώρα μέχρι και τα δευτερόλεπτα.

    Τέσσερις οθόνες που εμφανίζουν τέσσερις τιμές ώρας (13:50:22, 13:50:45, 13:51:03 και 13:51:25).

  5. Ορίστε την ιδιότητα AutoStart του χρονοδιακόπτη σε true και την ιδιότητα Visible σε false.

    Ο χρονοδιακόπτης είναι αόρατος και ξεκινά αυτόματα.

  6. Ορίστε την ιδιότητα OnStart της οθόνης έτσι ώστε η μεταβλητή CurrentTime να έχει μια έγκυρη τιμή, όπως σε αυτό το παράδειγμα:

    Set(CurrentTime, Now())

    Η ετικέτα εμφανίζεται μόλις ξεκινήσει η εφαρμογή (πριν ο χρονοδιακόπτης εκτελεστεί για ένα πλήρες δευτερόλεπτο).