共用方式為


針對 Power Apps 畫布應用程式中的日期和時間問題進行疑難解答

當日期和時間值在一天或幾個小時前關閉時,可能是由時區或日光節約調整所造成。 本文提供疑難解答問題的秘訣,例如:

  • [ 日期和時間] 字段會顯示UTC,而不是當地時間,反之亦然。
  • [ 僅限 日期] 值會顯示某些使用者和時區的錯誤日期。
  • 輸入日光節約切換日期會導致日期關閉一天或一小時關閉。

判斷其是否為伺服器或客戶端問題

畫布應用程式是 Web 應用程式。 他們會從雲端服務(伺服器)取得數據。 相同的數據可以支援多個應用程式(用戶端)。 伺服器或用戶端上可能會發生錯誤。

如果數據源中的日期和時間值非預期,它可能會不正確地出現在任何地方,而不只是在畫布應用程式中。 因此,確認預存值是重要的第一個步驟。

檢查正確的值是否儲存在伺服器上

日期和時間值通常會儲存為UTC。 針對 Dataverse 資料表,您可以使用 Web API 查詢來檢視原始日期和時間值。 如需其他數據源,例如 Microsoft List 或 Excel,請參閱其各自的檔。

檢查數據源的時區調整設定和日期選擇器控制件

某些數據源已針對時區進行調整。 此外, 日期選擇器控件 也可以使用其 DateTimeZone 屬性來調整時區。

常見的錯誤是數據源和控件設定不符。 例如,當 Dataverse 數據表數據行是 Time-Zone Independent,但日期選擇器之 DateTimeZone 設定為 Local 時,伺服器的 UTC 值將會根據使用者的時區顯示。 反之亦然。 當 DateTimeZone 設定為 UTC 時,Dataverse 的使用者本機值會顯示為 UTC

請注意,模型驅動應用程式不會發生這種潛在的衝突,因為無法自定義個別控件的時區處理。

嘗試不同的時區

若要找出時區和日光節約調整是否造成非預期的值,請嘗試變更使用者的時區。

畫布應用程式會使用系統時區。 如需如何變更的資訊,請參閱 Windows、Android、iOS 或 macOS 中的個別檔。

提示

下列方法提供更多詳細數據,讓您更輕鬆地調查日期和時間問題。

顯示使用者的時區

您可以使用 TimeZoneOffset 函式來驗證使用者的時區。 它會提供UTC與用戶時區之間的分鐘數。 例如,如果用戶位於太平洋標準時間,則會傳回 480。 這是日期選擇器控件和Power Fx用來調整時區和日光節約的相同位移。

使用此位移,您可以計算日期和時間值是否已正確調整。

將 [僅限日期] 格式變更為 “Date and Time”

如果僅日期值一天關閉,則顯示時間部分會很有説明,以查看時區調整是否可能是原因。

請勿使用 2 位數年份

2 位數的年份模棱兩可。 例如,40 可能表示 1940、2040 或 2140。 系統如何解譯 2 位數年份,而且可能會隨著時間而改變。

當未顯示完整的日期和時間值時,也很難調查。 基於這些原因,強烈建議使用4位數年份,尤其是在輸入日期時。

Dataverse 日期和時間數據行的常見問題

[僅限日期] 資料行會顯示某些用戶的錯誤日期

時區獨立和使用者本機調整行為可能會發生 此問題,這些行為一律具有時間元件。 Dataverse 或畫布應用程式的時區調整可以往前或往後移動日期一天。

若要解決此問題,請顯示值的時間元件,並 檢查時區調整設定

窗體會顯示資料行的時間選擇器,即使其格式為 「僅限日期」

時區獨立和使用者本機調整行為可能會發生 此問題,這些行為一律具有時間元件。 如果您將這類數據行新增至窗體,窗體會假設您也需要一段時間。

如果您不想讓使用者查看或編輯值的時間元件,

  • 拿掉時間選擇器。

  • 針對 不需要時區調整的使用者本機 數據行,將其調整行為變更為 [僅限日期]。

    注意

    這與 [僅限 日期] 格式不同。 這是永久變更,無法復原。 先前調整時區數據行的其他應用程式、外掛程式或工作流程可能無法正常運作。

另請參閱

Dataverse 日期和時間數據行的行為和格式