Konwertowanie strefy czasowej

W tym artykule przedstawiono kroki procesu konwersji strefy czasowej na określoną strefę czasową w ramach wyzwalacza lub akcji Power Automate.

Podczas przekazywania dat i godzin za pośrednictwem wyzwalaczy i akcji w przepływach Power Automate może się okazać, że strefa czasowa jest inna niż oczekiwana, albo że chcesz przekonwertować strefę czasową (często w uniwersalnym czasie koordynowanym (UTC)) na czas lokalny. Można to zrobić, używając akcji Konwertuj strefę czasową lub wyrażenia convertTimeZone.

Daty są przekazywane przez usługi w różnych formatach lub strefach czasowych, więc każdy łącznik może korzystać z innego formatu daty i godziny lub strefy czasowej. Niektóre usługi wyłącznie używają czasu UTC, aby uniknąć nieporozumień.

Konwertowanie strefy czasowej przy użyciu akcji

Power Automate ma wbudowaną operację o nazwie Konwertuj strefę czasową.

  1. Zaloguj się do usługi Power Automate.

  2. Znajdź przepływ i wybierz opcję Edytuj, aby dodać akcję.

  3. W polu Wyszukaj wpisz konwertowanie strefy czasowej i wybierz wbudowaną operację Konwertuj strefę czasową.

    Zrzut ekranu przedstawiający czynność przekształcenia strefy czasowej w przepływie.

  4. Dodaj wymagane i opcjonalne dane wejściowe dla operacji Konwertuj strefę czasową.

    • Czas podstawowy: data i godzina, którą chcesz przekonwertować.
    • Źródłowa strefa czasowa: strefa czasowa, w której znajduje się obecnie data/godzina.
    • Docelowa strefa czasowa: strefa czasowa, na którą ma zostać przekonwertowana data.
    • Ciąg formatu (opcjonalnie): ciąg określający żądany format konwertowanego czasu.

    Sposoby znalezienia bieżącej strefy czasowej można znaleźć w sekcji Typowe scenariusze formatów w tym artykule.

Konwertowanie strefy czasowej przy użyciu wyrażenia

Power Automate ma funkcję wyrażenia , convertTimeZonektóra konwertuje znacznik czasu ze źródłowej strefy czasowej na docelową strefę czasową.

Zrzut ekranu pokazujący, że Power Automate ma funkcję wyrażenia służącą do konwertowania strefy czasowej.

Poniżej podano przykład funkcji w konsoli:

convertTimeZone(timestamp: string, sourceTimeZone: string, destinationTimeZone: string, format?: string)

Funkcja używa następujących parametrów:

  • timestamp: data/godzina, którą chcesz przekonwertować.
  • sourceTimeZone: strefa czasowa, w której obecnie znajduje się data/godzina.
  • destinationTimeZone: strefa czasowa, na którą ma zostać przekonwertowana data.
  • format (opcjonalnie): format strefy czasowej, na którą chcesz przekonwertować datę.

Przykład: konwertowanie strefy czasowej

W tym przykładzie strefa czasowa jest konwertowana na określoną strefę czasową i format.

convertTimeZone('2018-01-01T80:00:00.0000000Z', 'UTC', 'Pacific Standard Time', 'D')

Zwraca ona wynik: Monday, January 1, 2018.

Przykład: użycie zawartości dynamicznej

W tym przykładzie pokazano, jak używać zawartości dynamicznej w wyrażeniu. Sygnatura triggerBody()?['Date'] czasowa to zawartość dynamiczna, którą chcesz sformatować. Źródłowa strefa czasowa to UTC. Docelowa strefa czasowa to Eastern Standard Time. Formatem jest niestandardowy ciąg formatu HH:mm.

convertTimeZone(triggerBody()?['Date'],'UTC','Eastern Standard Time','HH:mm')

Dowiedz się więcej o tej funkcji wyrażenia w funkcji convertTimeZone.

Dowiedz się więcej o parametrze ciągu formatującego w standardowych ciągach formatu daty i godziny oraz niestandardowych ciągach formatu daty i godziny.

Najczęstsze scenariusze dotyczące formatów

W tej sekcji opisano różne scenariusze i sposób stosowania odpowiedniego formatu.

Odszyfrowywanie daty/godziny

  • Daty i godziny mogą mieć różne formaty. Jeśli data/godzina ma na końcu Z, oznacza to, że jest to czas UTC.

    Przykład: 2020-04-10T01:28:14.0406387Z

  • Może zostać wyświetlony komunikat o błędzie z informacją o tym, że ciąg daty i godzina nie ma poprawnego formatu.

    Przykład: „Ciąg daty i godziny musi mieć format ISO8601”.

Dowiedz się więcej o tym, jak poprawnie sformatować ciąg daty/godziny w funkcji convertTimeZone.

Sprawdzanie strefy czasowej danych wyjściowych

Jeśli nie ma pewności, w jakim formacie znajduje się aktualnie strefa czasowa daty i godziny, można uruchomić przepływ i wyświetlić format wyjściowy daty i godziny.

W tym przykładzie operacja Pobierz prognozę na dzisiaj podaje dane wyjściowe w postaci sygnatury czasowej określającej moment otrzymania prognozy.

Zrzut ekranu przedstawiający przykład sprawdzania formatu wyjściowego daty i godziny.

Ta data/godzina używa formatu ISO-8601. Ta operacja podaje wyjściową datę/godzinę w strefie czasowej UTC.

Konwertuj znacznik czasu na UTC lub z UTC

Aby przekonwertować sygnaturę czasową ze źródłowej strefy czasowej na UTC lub z UTC na docelową strefę czasową, użyj funkcji wyrażenia convertFromUtc i convertToUtc.

Ograniczenia

Niektóre łączniki mają ograniczenia dotyczące sposobu wyświetlania strefy czasowej. Aby dowiedzieć się więcej na temat każdego łącznika, zobacz Omówienie dokumentacji łącznika.