
## 什麼是Dataverse?

`Dataverse`是一個用於共享、儲存、引用、探索和分析研究資料的數據管理系統，同時也代表著透過該數據管理系統而建立的資料庫。
> `Dataverse`的數據管理系統中定義了三個重要的層次：`Dataverse`、資料集(`dataset`) 和文件(`file`)
>
> - 資料集是由一個或多個文件及詮釋資料(`metadata`)所組成的集合
> - 而文件是組成資料集的最小單位，它可以是資料使用說明、資料檔、問卷或純文字檔等任何形式的檔案

- `Microsoft Dataverse` 的資料會存放在一組資料表中, 資料表中的每個資料列都是用來儲存特定類型的資料，例如姓名、年齡和薪水等
- `Microsoft Dataverse` 包含一組適用於一般案例的基本標準資料表，但也可以建立組織專屬的自訂資料表，然後使用 Power Query 將資料填入其中
- 應用程式製作者可以接著使用 Power Apps 來建置使用這項資料的豐富應用程式
- `Microsoft Dataverse` 中的標準及自訂資料表可提供安全的雲端型儲存空間選項, 資料表允許您建立著重於業務的組織資料定義，以供應用程式內使用
- `Microsoft Dataverse` 不需要編寫或只需編寫很少的程式碼，因此從知識工作者到專業開發人員，每個人都可以輕鬆使用它

### 使用Microsoft Dataverse的好處

- **便於管理** : 不論是中繼資料(`metadata`) 或 一般data都存在雲端, 所以不用擔心如何儲存資料
- 輕鬆資料保護 : 資料以安全的方式儲存, User只有在你授予他們使用權限時才能看到, 可以使用角色權限管理控制組織/公司/團隊 內不同User對資料的存取
- **存取你的 `Dynamics 365` 資料** : `Dynamics 365` 應用程式的資料也存在 `Dataverse` 中, 可以快速組建使用`Dynamics 365` 資料的應用程式, 並使用 Power Apps 拓展應用程式
- **豐富的中繼資料(`metadata`)** : 資料類型及資料關聯皆直接在Power Apps中使用
- **邏輯和驗證** : 定義 計算結果欄位、商業規則、工作流程、業務流程以確保資料品質及推動商務程序進展
- **生產力工具** : 資料表可在 Microsoft Excel 增益集中用來提高生產力並確保資料可及性

### Dynamics 365 和 Dataverse

- Dynamics 365 的應用程式：
  - Dynamics 365 Sales
  - Dynamics 365 Customer Service
  - Dynamics 365 Talent

以上皆使用 `Dataverse` 來儲存和保護所使用的資料，這讓其組建應用程式時，可用 Power Apps 及 `Dataverse` 來直接連結 Dynamics 365 中已使用的核心商務資料，而不需要進行整合

- **根據 Dynamics 365 資料建置應用程式** : Power Apps 中或使用可擴充的平台針對您的業務資料快速建置應用程式，該平台可讓專業開發人員以程式設計方式資料和中繼資料進行互動，套用商務規則，建立自訂連接器，並與外部資料整合
- **管理可重複使用的商務規則與邏輯** : `Dataverse` 資料表中定義的商務規則與邏輯會套用至使用 Power Apps 建立的應用程式，以確保資料一致性，不論使用者如何存取資料，或透過哪些應用程式存取
- **Dynamics 365 和 Power Apps 中可重複使用技能** : 在 Power Apps 或 Dynamics 365 的熟練使用者現在可以在 Dataverse 平台上利用這些技能, 而現在，建立表格、表單和圖表是跨應用程式執行的一般工作

### 邏輯和驗證

`Dataverse` 中的資料表可使用豐富的伺服器端邏輯和驗證，以確保資料品質，並讓建立及使用資料表內資料的每個應用程式，能減少重複程式碼

- 商務規則：對多個資料行和資料表驗證資料，並對所有應用程式建立的資料，提供警告和錯誤訊息
- 商務程序流程 : 引導使用者，以確保他們以一致的方式輸入資料，並且每次都遵循相同的步驟
  > 目前只有模型導向應用程式支援商務程序流程
- 工作流程 : 可使其自動化商務程序，不需要使用者互動
- 使用程式碼的商務規則 : 支援進階開發人員案例，以直接透過程式碼擴充應用程式

## 參考資料

- [MSDN - Power Apps](https://bit.ly/3bYU7SA)
- [SRDA's blog - 10分鐘帶你認識Dataverse與 R「dataverse」套件](https://bit.ly/3Atcb1a)
