[入門] Power Apps 如何處理重複資料

處理資料時,我們難免會遇到資料重複的問題。

不管是使用者輸入資料後產生或是我們準備好的資料因 Select Column 後產生的重複資料, 因此處理重複資料很重要。

本文將說明如何移除資料裡的重複資料。

正文

若我們需要處理重複資料我們僅需要使用 Distinct 這個方法即可達到。

設計方法

若我們想針對一個 Column 編寫如下:

Distinct(DataSource, ColumnName)

ColumnName 為我們需要檢視重複的欄位名稱。

若我們想針對一筆 Row 編寫如下:

Distinct(SourceData, ThisRecord)

範例

我們使用兩個 Gallery 進行對比, 一個顯示原始資料, 另一個顯示處理後的資料。 然後再新增一個 Button(另一個是我方便進行測試與演示)。 

新增好物件後我們將要處理的資料放在 Button 的 OnSelect 上, 如下:

ClearCollect(
    SourceData,
    { Name: "A", Cost: 123 },
    { Name: "A", Cost: 456 },
    { Name: "A", Cost: 789 },
    { Name: "B", Cost: 123 },
    { Name: "B", Cost: 456 },
    { Name: "C", Cost: 123 },
    { Name: "A", Cost: 123 },
    { Name: "B", Cost: 789 },
    { Name: "C", Cost: 123 }
);

然後我們在左邊設定我們的原始資料, 並簡單在 Gallery 內新增兩個 Label 設計顯示

"Name:" & ThisItem.Name

Cost 顯示如 Name, 僅修將 Name 修改為 Cost。

完成左邊設計後, 我們在右邊 Gallery 簡單使用 Distinct 方法設計資料處理, 如下:

Distinct(SourceData, ThisRecord)

設定好資料來源後我們如左邊一樣簡單設計顯示, 但這裡我們需要在顯示的設計裡新增一個 Value。 

因為我們使用 Collect 處理後的結果, 所以需要在顯示指定的 Column 前補上一個 Value。

如下 Name:

"Name: " & ThisItem.Value.Name

結果:

結語

以上為我們如何簡單處理重複資料, 而 Distinct 方法使用並不難, 所以我們可經常使用在讓使用者的選擇資料情境上。

比方說我們有一張人員清單經常維護, 裏面含單位且相同單位的人員不止一位。

若我們直接將單位寫在 Power Apps 內共使用者選擇可能需要經常維護 Power Apps; 而若我們在 Power Apps 內僅使用 Select 資料表的單位 Column 會有重複資料。

因此我們僅補上使用 Distinct 即為很好地處理重複資料以供使用者選擇。

參考資料

 

以上內容為我個人的見解, 並感謝您的閱讀, 謝謝

分級: 入門是認識, 基本是運用, 進階是混合結合
範本是已可下載或可使用的範例, 至於教程當然是學習的結晶