Udostępnij za pośrednictwem


Rozwiązywanie problemów z datą i godziną w aplikacjach kanwy usługi Power Apps

Kiedy wartości daty i godziny są wyłączone w ciągu dnia lub kilku godzin, może to być spowodowane przez strefy czasowej lub korekty oszczędzania światła dziennego. Ten artykuł zawiera porady dotyczące rozwiązywania problemów, takich jak:

  • W polu Data i godzina jest wyświetlany czas UTC zamiast czasu lokalnego lub odwrotnie.
  • Wartość Tylko data zawiera nieprawidłową datę dla niektórych użytkowników i stref czasowych.
  • Wprowadzenie daty zmiany światła dziennego powoduje wyłączenie daty o jeden dzień lub godzinę.

Ustal, czy jest to problem z serwerem lub klientem

Aplikacje kanwy to aplikacje internetowe. Pobierają dane z usług w chmurze (serwerów). Te same dane mogą zasilać wiele aplikacji (klientów). Błędy mogą wystąpić na serwerze lub kliencie.

Jeśli wartość daty i godziny w źródle danych jest nieoczekiwana, prawdopodobnie będzie ona wyświetlana niepoprawnie wszędzie, a nie tylko w aplikacjach kanwy. W związku z tym sprawdzenie przechowywanej wartości jest ważnym pierwszym krokiem.

Sprawdź, czy poprawna wartość jest przechowywana na serwerze

Wartości daty i godziny są zwykle przechowywane jako UTC. W przypadku tabel Usługi Dataverse można wyświetlić nieprzetworzone wartości daty i godziny za pomocą zapytania internetowego interfejsu API. Inne źródła danych, takie jak Microsoft List lub Excel, można znaleźć w odpowiedniej dokumentacji.

Sprawdzanie ustawień korekty strefy czasowej źródła danych i kontrolki selektora dat

Niektóre źródła danych zostały już dostosowane dla stref czasowych. Ponadto kontrolka Selektor dat może również dostosować strefy czasowe za pomocą właściwości DateTimeZone.

Typowym błędem jest niezgodność ustawień źródła danych i kontroli. Na przykład gdy kolumna tabeli Dataverse jest niezależna od strefy czasowej, ale selektor daty DateTimeZone jest ustawiony na Wartość lokalna, wartość UTC z serwera będzie wyświetlana zgodnie ze strefą czasową użytkownika. Dotyczy to również odwrotnej sytuacji. Wartość lokalna użytkownika z usługi Dataverse będzie wyświetlana jako UTC, gdy wartość DateTimeZone jest ustawiona na UTC.

Należy pamiętać, że ten potencjalny konflikt nie występuje w przypadku aplikacji opartych na modelu, ponieważ nie można dostosować obsługi stref czasowych dla poszczególnych kontrolek.

Wypróbuj inną strefę czasową

Aby dowiedzieć się, czy zmiany strefy czasowej i światła dziennego powodują nieoczekiwane wartości, spróbuj zmienić strefę czasową użytkownika.

Aplikacje kanwy używają systemowej strefy czasowej. Aby uzyskać informacje na temat sposobu jej zmiany, zobacz odpowiednią dokumentację w systemach Windows, Android, iOS lub macOS.

Napiwek

Poniższe metody zawierają więcej szczegółów, aby ułatwić badanie problemów z datą i godziną.

Pokaż strefę czasową użytkownika

Strefę czasową użytkownika można zweryfikować za pomocą funkcji TimeZoneOffset. Daje liczbę minut między UTC a strefą czasową użytkownika. Jeśli na przykład użytkownik jest w czasie standardowym pacyficznego, zwróci wartość 480. Jest to to samo przesunięcie, które kontrolka selektora dat i Power Fx są używane do dostosowywania stref czasowych i letnich oszczędności.

Za pomocą tego przesunięcia można obliczyć, czy wartości daty i godziny zostały prawidłowo dostosowane.

Zmień format "Tylko data" na "Data i godzina"

Jeśli wartość tylko do daty jest wyłączona przez dzień, warto pokazać część czasu, aby sprawdzić, czy korekty strefy czasowej mogą być przyczyną.

Nie używaj 2-cyfrowych lat

Dwucyfrowy rok jest niejednoznaczny. Na przykład 40 może oznaczać 1940, 2040 lub 2140. Sposób, w jaki system interpretuje 2-cyfrowe lata, i prawdopodobnie zmieni się w czasie.

Trudno jest również zbadać, kiedy nie są wyświetlane pełne wartości daty i godziny. Z tych powodów zdecydowanie zaleca się używanie 4-cyfrowych lat, zwłaszcza podczas wprowadzania dat.

Typowe problemy z kolumnami data i godzina usługi Dataverse

W kolumnie "Tylko data" jest wyświetlana nieprawidłowa data dla niektórych użytkowników

Ten problem może wystąpić w przypadku zachowań niezależnych od strefy czasowej i lokalnych ustawień użytkownika, które zawsze mają składnik czasu. Korekty strefy czasowej( według usługi Dataverse lub aplikacji kanwy) mogą przenosić datę do przodu lub do tyłu o jeden dzień.

Aby rozwiązać ten problem, pokaż składnik czasu wartości i sprawdź ustawienia korekty strefy czasowej.

Formularz pokazuje selektor czasu dla kolumny, mimo że jego format to "Tylko data"

Ten problem może wystąpić w przypadku zachowań niezależnych od strefy czasowej i lokalnych ustawień użytkownika, które zawsze mają składnik czasu. Jeśli dodasz taką kolumnę do formularza, w formularzu zostanie założona, że potrzebujesz również czasu.

Jeśli nie chcesz, aby użytkownicy widzieli ani edytowali składnik czasu wartości,

  • Usuń selektor czasu.

  • W przypadku kolumn lokalnych użytkownika, które nie wymagają korekt strefy czasowej, zmień ich zachowanie na Tylko data.

    Uwaga 16.

    Różni się to od formatu Tylko data. Jest to stała zmiana i nie można jej cofnąć. Inne aplikacje, wtyczki lub przepływy pracy, które wcześniej skorygowały kolumnę dla stref czasowych, mogą nie działać poprawnie.

Zobacz też

Zachowanie i format kolumny Dataverse Date and Time