Udostępnij przez


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żna zobaczyć, że strefa czasowa nie jest oczekiwana lub że można 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 convertTimeZone, która konwertuje syngaturę czasową 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 i 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ą ma zostać przekonwertowana data.

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

Jest to przykład użycia w wyrażeniach zawartości dynamicznej. Tutaj sygnatura czasowa triggerBody()?['Date'] to zawartość dynamiczna, którą chcesz sformatować. Źródłowa strefa czasowa to UTC. Docelowa strefa czasowa to Eastern Standard Time. Format to ciąg formatu niestandardowego HH:mm.

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

Aby dowiedzieć się więcej o tej funkcji wyrażenia, przejdź do sekcji convertTimeZone.

Aby dowiedzieć się więcej o parametrze ciągu formatu, przejdź do sekcji Standardowe ciągi formatu daty i godziny oraz Niestandardowe ciągi formatu daty i godziny.

Typowe scenariusze 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”.

    Aby dowiedzieć się więcej o tym, jak poprawnie sformatować ciąg daty i godziny, przejdź do sekcji 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.

Konwertowanie syngatury czasowej na lub z czasu 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

W niektórych łącznikach mogą wystąpić ograniczenia dotyczące sposobu wyświetlania strefy czasowej. Aby dowiedzieć się więcej o poszczególnych łącznikach, przejdź do omówienie dokumentacji łączników.