訓練
模組
Use Power Query to load data in Dataverse - Training
Learn how to synchronize data from different sources to a Microsoft Dataverse table using Power Query and create dataflows in Power Apps.
在 Power Query 中,您可以結合來自指定數據源的多個檔案。 本文說明當您想要合併的檔案是 CSV 檔案時,體驗的運作方式。 詳細資訊: 合併檔案概觀
提示
您可以從此下載鏈接下載本文中使用的範例檔案,以遵循此範例。 您可以將這些檔案放在您選擇的數據源中,例如本機資料夾、SharePoint 資料夾、Azure Blob 記憶體、Azure Data Lake 儲存體,或其他提供文件系統檢視的數據源。
為了簡單起見,本文中的範例會使用資料夾連接器。 詳細資訊: 資料夾
若要合併檔案,它們都必須具有相同的結構和相同的擴展名。 此範例中使用的所有檔案都有相同的結構和擴展名(.csv)。
每個月有 12 個 CSV 檔案,一個用於 2019 年日曆年度。 下圖顯示 1 月檔案的前 15 個數據列。
數據列數目會因檔案而異,但前四個數據列中所有檔案都有標頭區段。 它們具有第五個數據列的數據行標頭,而數據表的數據會從第六個數據列開始,並繼續進行所有後續的數據列。
目標是將所有 12 個檔案合併成單一數據表。 這個合併數據表包含數據表頂端的標頭數據列,並包含標題數據列之後,整個年份的來源名稱、日期、國家/地區、單位和營收數據。
聯機到裝載您要合併之檔案的資料夾時,在此範例中,該資料夾的名稱是 CSV 檔案—您會在左上角顯示您的資料夾路徑的數據表預覽對話方塊。 數據預覽會顯示檔案系統檢視。
在此範例中,選取 [ 合併]。
注意
在不同的情況下,您可以選取 [轉換數據 ] 來進一步篩選和轉換您的數據,然後再合併檔案。 只有在您確定資料夾只包含您想要合併的檔案時,才建議選取 [合併 ]。
在數據表預覽中選取 [合併 ] 之後, [合併檔案 ] 對話框隨即出現。
注意
Power Query 會根據清單中找到的第一個檔案,自動偵測要使用的連接器。 若要深入瞭解 CSV 連接器,請移至 [文字/CSV]。
在此範例中,保留所有預設設定 (範例檔案設定為 First 檔案,以及 [檔案來源]、[分隔符] 和 [數據類型偵測] 的預設值)。
現在,選取 右下角的 [轉換數據 ] 以移至輸出查詢。
在 [合併檔案] 對話框中選取 [轉換數據] 之後,您將會回到您最初從連線至本機資料夾建立的查詢中的 Power Query 編輯器。 輸出查詢現在包含最左邊數據行中的來源檔名,以及其餘數據行中每個來源檔案的數據。
不過,數據不是正確的圖形。 您需要先從每個檔案中移除前四個數據列,再合併它們。 若要在合併每個檔案之前進行這項變更,請在畫面左側的 [查詢] 窗格中選取 [轉換範例檔案查詢]。
在此轉換範例檔案查詢中,Date 數據行中的值表示數據是 4 月的月份,其格式為年月 (YYYYY-MM-DD) 格式。 4 月2019.csv是數據表預覽中顯示的第一個檔案。
您現在必須套用一組新的轉換來清除資料。 在合併每個檔案的數據之前,每個轉換都會自動轉換成 Helper 查詢群組內的函式,這些函式會套用至資料夾中的每個檔案。
需要新增至轉換範例檔案查詢的轉換如下:
拿掉頂端資料列:若要執行這項作業,請選取表格左上角的數據表圖示功能表,然後選取 [ 移除頂端數據列]。
在 [ 移除頂端數據列 ] 對話框中,輸入 4,然後選取 [ 確定]。
選取 [ 確定] 之後,您的數據表將不再有前四個數據列。
使用第一列做為標頭:再次選取數據表圖示,然後選取 [使用第一列做為標頭]。
該作業的結果會將數據表的第一個數據列升階為新的數據行標頭。
完成此作業之後,Power Query 預設會嘗試自動偵測數據行的數據類型,並新增新的 已變更數據行類型 步驟。
當您回到 CSV 檔案 查詢時,您會發現最後一個步驟會提供錯誤,指出找不到數據表的數據行 'Column1'。此錯誤背後的原因是查詢先前的狀態正在對名為 Column1 的數據行執行作業。 但由於對轉換範例檔案查詢所做的變更,此數據行已不存在。 詳細信息: 處理 Power Query 中的錯誤
您可以從 [套用的步驟] 窗格移除查詢的最後一個步驟,方法是選取步驟名稱左側的 X 刪除圖示。 刪除此步驟之後,您的查詢會顯示正確的結果。
不過,請注意,任何衍生自檔案的數據行(日期、國家/地區、單位、營收)都沒有指派給他們的特定數據類型。 使用下表,將正確的數據類型指派給每個數據行。
資料行名稱 | 資料類型 |
---|---|
Date | Date |
Country | Text |
單位 | 整數 |
營收 | 貨幣 |
定義每個資料行的數據類型之後,您就可以載入資料表。
注意
若要瞭解如何定義或變更數據行數據類型,請移至 [數據類型]。
若要驗證已合併所有檔案,您可以在 Source.Name 數據行標題上選取篩選圖示,這會顯示已合併之檔案的所有名稱。 如果您收到警告「清單可能不完整」,請選取 功能表底部的 [載入更多 ],以在數據行中顯示更多可用的值。
選取 [載入更多] 之後,將會顯示所有可用的檔名。
訓練
模組
Use Power Query to load data in Dataverse - Training
Learn how to synchronize data from different sources to a Microsoft Dataverse table using Power Query and create dataflows in Power Apps.