共用方式為


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

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

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

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

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

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

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

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

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

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

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

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

嘗試不同的時區

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

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

提示

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

顯示使用者的時區

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

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

將 [僅限日期] 格式變更為 [日期和時間]

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

請勿使用 2 位數的年份

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

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

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

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

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

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

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

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

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

  • 拿掉時間選擇器。

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

    注意事項

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

另請參閱

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