Power Apps 的 UI 缺陷:選擇全部 Dataverse 欄位後,「既存の列を表示」入口竟然消失
Copyright Notice: This article is an original work licensed under the CC 4.0 BY-NC-ND license.
If you wish to repost this article, please include the original source link and this copyright notice.
Source link: https://v2know.com/article/1333
在 Power Apps 的 Dataverse 資料表畫面中,可以透過 「その他の○件」 按鈕打開 「既存の列を表示」 對話框,選擇要顯示在「列とデータ」區域中的欄位。
然而,這個功能存在一個相當尷尬的介面設計問題: 一旦選擇「すべて選択」並儲存,原本用來打開對話框的按鈕便會直接消失。
問題發生的操作步驟
- 在 Power Apps 中打開一張 Dataverse 資料表。
- 進入顯示資料的「列とデータ」區域。
- 點擊欄位標題右側的「その他の○件」。
- 打開「既存の列を表示」對話框。
- 勾選「すべて選択」。
- 點擊「保存」。
完成上述操作後,所有可選欄位都會出現在資料預覽區域中。 問題也正是在這一步之後發生。
為什麼按鈕會消失?
Microsoft 並沒有為「既存の列を表示」提供一個固定存在的按鈕。 它的入口實際上是欄位標題旁邊的:
「その他の15件」或「+17 more」之類的剩餘欄位數量按鈕
這個數字表示目前還有多少個欄位尚未顯示。
當使用者選擇全部欄位後,尚未顯示的欄位數量就會變成零。因此, 「その他の○件」這個按鈕也會隨之消失。
從程式邏輯上看,這似乎很合理: 既然不存在尚未顯示的欄位,就不需要顯示「其他欄位」的入口。
但問題在於,這個入口同時也是 唯一可以重新打開「既存の列を表示」對話框的入口。
也就是說,Power Apps 將以下兩種用途錯誤地綁在了同一個按鈕上:
- 提示還有多少個欄位尚未顯示;
- 打開欄位顯示設定,讓使用者重新選擇或取消選擇欄位。
當第一種用途不再需要時,按鈕被隱藏;但第二種用途也因此一起消失了。
使用者會遇到什麼結果?
選擇全部欄位並儲存後,使用者將無法從原本的資料表畫面再次打開同一個對話框。
因此會出現一個非常荒謬的狀態:
可以把所有欄位顯示出來,卻沒有辦法再從相同畫面把其中一部分欄位隱藏回去。
即使右上角仍然存在「編集」或「フォームとビューを更新する」等功能, 它們也不是「既存の列を表示」對話框的另一個固定入口。
進入資料表設計器、檢視設計器或「スキーマ > 列」,可以修改資料表結構或檢視設定, 但這些操作和「列とデータ」區域中的顯示欄位選擇並不是完全相同的功能。
這算不算 Power Apps 的缺陷?
至少從使用者介面與操作流程的角度來看, 這完全可以被視為一個 UI 缺陷。
問題並不是資料損壞,也不是 Dataverse 的欄位被刪除。 真正的問題是:
- 設定對話框沒有固定入口;
- 入口是否顯示,取決於是否還存在未顯示的欄位;
- 當全部欄位都被選中後,使用者失去了修改該設定的途徑;
- 介面沒有事先警告「全部選擇後將無法重新打開此畫面」。
需要注意的是,本文所說的「缺陷」是根據實際可重現的介面行為作出的判斷, 並不代表 Microsoft 已經正式將它登錄為已知 Bug。
目前有沒有其他入口?
截至本文撰寫時,在相同的 Dataverse 資料表 Hub 畫面中, 沒有發現另一個固定存在的 「表示する列を変更」 或 「既存の列を表示」 按鈕。
Microsoft 的官方操作文件同樣是引導使用者點擊 「+17 more」之類的剩餘欄位數量,而不是從其他選單打開該對話框。
因此,一旦所有欄位都已經顯示,原本的官方操作入口也就不復存在。
暫時的應對方式
在 Microsoft 改善這個介面之前,最穩妥的做法是:
- 不要在「既存の列を表示」中直接勾選「すべて選択」;
- 至少保留一個不需要顯示的欄位,使「その他の○件」入口繼續存在;
- 僅勾選目前實際需要查看或編輯的欄位;
- 若目的只是調整 Model-driven App 的列表欄位,應改到 View 設計器中操作;
- 若目的只是查看資料表的完整欄位定義,應使用「スキーマ > 列」。
如果已經選擇全部欄位,之後若資料表中再次出現未顯示的可選欄位, 「その他の○件」入口有可能重新出現。 但目前並沒有一個可靠、固定且由官方文件說明的「重新打開」方法。
理想的改善方式
Microsoft 其實只需要做一個很小的修改,就能解決這個問題。 例如:
- 讓「表示する列を変更」按鈕永久顯示;
- 即使剩餘欄位數量為零,也顯示「その他の0件」;
- 在欄位標題的「…」選單中增加「表示列を設定」;
- 在「すべて選択」儲存前顯示警告;
- 允許點擊目前顯示的欄位數量,重新打開相同對話框。
這些做法都比目前「一旦全選,設定入口就直接消失」更加符合一般使用者的操作直覺。
總結
Power Apps Dataverse 的「既存の列を表示」本身並不是刪除或建立欄位的功能, 它只是控制哪些既存欄位要顯示在「列とデータ」預覽區域中。
但由於該功能只能透過「その他の○件」進入,當使用者選擇全部欄位後, 未顯示欄位數量變成零,入口也會一起消失。
結果就是:使用者可以進行「全部顯示」,卻無法再從相同畫面進行「取消顯示」。
這不是什麼複雜的技術限制,而是一個相當典型的 UI 邏輯漏洞。 在問題被修正之前,建議不要輕易選擇「すべて選択」, 至少保留一個未顯示欄位,以免把唯一的設定入口一併藏掉。
參考資料
- Microsoft Learn:Create and edit tables using Power Apps
- Microsoft Learn:Update forms and views using table designer
本文介面名稱以 Power Apps 日文版顯示內容為準。不同語言或版本中的文字可能略有差異。
This article was last edited at