共用方式為


在 Azure Logic Apps 中執行資料作業

適用於:Azure Logic Apps (使用量 + 標準)

本操作指南說明如何透過下列方式在邏輯應用程式工作流程中使用資料:

  • 根據包含不同資料類型的多個輸入建立字串或 JavaScript 物件標記法 (JSON) 物件。 其後,您可以使用此字串作為單一輸入,而無須重複輸入相同的內容。
  • 根據 JavaScript 物件標記法 (JSON) 物件屬性建立易記的權杖,以便在您的工作流程中輕鬆使用這些屬性。
  • 根據陣列建立 HTML 或 CSV 資料表。
  • 根據指定的篩選條件或條件,根據其他陣列來建立陣列。
  • 根據另一個陣列中所有項目的指定屬性建立陣列。
  • 根據陣列中的所有項目建立字串,並使用指定的字元來分隔這些項目。

必要條件

  • Azure 帳戶和訂用帳戶。 如果您沒有訂用帳戶,請註冊一個免費的 Azure 帳戶

  • 用於執行資料作業的邏輯應用程式工作流程。 「取用」和「標準」邏輯應用程式工作流程都支援本指南中所述的資料作業。

    所有資料作業只能當成動作使用。 因此,在使用這些動作之前,您的工作流程必須先以觸發程序啟動,作為第一個步驟,並包含建立輸出以供資料作業使用的任何其他動作。

資料作業動作

下列各節彙整了您可以使用的資料作業,並根據作業所操作的來源資料類型進行編排,但每項描述會依字母順序顯示。

JSON 動作

下列動作可協助您使用 JavaScript 物件標記法 (JSON) 格式的資料。

動作 描述
組成 從可具有各種資料類型的多個輸入建立訊息或字串。 其後,您可以使用此字串作為單一輸入,而無須重複輸入相同的內容。 例如,您可以從多種輸入建立單一 JSON 訊息。
剖析 JSON 為 JSON 內容中的屬性建立易記的權杖,以便在您的邏輯應用程式中輕鬆使用這些屬性。

若要建立更複雜的 JSON 轉換,請參閱使用 Liquid 範本執行進階的 JSON 轉換

陣列動作

下列動作可協助您使用陣列中的資料。

動作 描述
建立 CSV 資料表 從陣列建立逗號分隔值 (CSV) 資料表。
建立 HTML 資料表 從陣列建立 HTML 資料表。
篩選陣列 根據指定的篩選條件或條件,從陣列建立陣列子集。
聯結 從陣列中的所有項目建立字串,並使用指定的字元來分隔每個項目。
選取 從不同陣列中所有項目的指定屬性建立陣列。

撰寫動作

若要從多個輸入建構單一輸出 (例如 JSON 物件),您可以使用名為撰寫的動作。 您的輸入可具有多種不同類型,例如整數、布林值、陣列、JSON 物件,以及 Azure Logic Apps 所支援的任何其他原生類型,例如二進位檔與 XML。 接著,您可以在撰寫動作之後的動作中使用其輸出。 撰寫動作也可讓您在建立邏輯應用程式的工作流程時,無需重複輸入相同的內容。

例如,您可以從多個變數建構 JSON 訊息,例如,以字串變數儲存人員的名字和姓氏,並以整數變數儲存人員的年齡。 在此範例中,撰寫指令會接受下列輸入:

{ "age": <ageVar>, "fullName": "<lastNameVar>, <firstNameVar>" }

並建立下列輸出:

{"age":35,"fullName":"Owens,Sophia"}

若要嘗試撰寫動作,請使用工作流程設計工具進行下列步驟。 或者,如果您偏好在程式碼檢視編輯器中工作,您可以將本指南中的範例撰寫將變數初始化動作定義複製到您自己的邏輯應用程式基礎工作流程定義中:資料作業程式碼範例 - 撰寫。 如需基礎 JSON 工作流程定義中撰寫動作的詳細資訊 ,請參閱撰寫動作

  1. Azure 入口網站或 Visual Studio Code 中,從設計工具開啟邏輯應用程式工作流程。

    此範例會使用 Azure 入口網站和範例工作流程搭配週期性觸發程序,後面接著數個名為將變數初始化動作的變數。 這些動作依設定會建立兩個字串變數和一個整數變數。

    作業 屬性和值
    初始化變數 - 名稱:firstNameVar
    - 型別:字串
    - :Sophia
    初始化變數 - 名稱:lastNameVar
    - 型別:字串
    - :Owens
    初始化變數 - 名稱:ageVar
    - 型別:整數
    - :35

    顯示 Azure 入口網站、使用量工作流程設計工具和 [撰寫] 動作的範例工作流程的螢幕擷取畫面。

  2. 遵循下列一般步驟來新增名為撰寫資料作業動作

  3. 在設計工具上,如果尚未選取,請選取 [撰寫] 動作。 在 [輸入] 方塊中,輸入用於建立輸出的輸入。

    針對此範例,請遵循下列步驟:

    1. 在 [輸入] 方塊中,輸入下列範例 JSON 物件,包括如下所示的間距:

      {
          "age": ,
          "fullName": " , "
      }
      
    2. 在 JSON 物件中,將游標放在對應的位置,選取動態內容清單 (閃電圖示),然後從清單中選取對應的變數:

      JSON 屬性 變數
      age ageVar
      fullName "lastNameVarfirstNameVar"

      下列範例顯示已新增和尚未新增的變數:

      顯示使用量工作流程、撰寫動作、動態內容清單,以及要使用之選取輸入的螢幕擷取畫面。

      下列範例顯示已完成的樣本撰寫動作:

      顯示使用量工作流程和已完成範例撰寫動作的螢幕擷取畫面。

  4. 儲存您的工作流程您 在設計師工具列上選取儲存

測試工作流程

若要確認撰寫動作建立的結果是否符合預期,請將包含撰寫動作輸出的通知傳送給自己。

  1. 在您的工作流程中,新增可將撰寫動作的結果傳送給您自己的動作。

    此範例接下來會使用名為傳送電子郵件的 Office 365 Outlook 動作。

  2. 在此動作中,針對您想要顯示結果的每個方塊,選取各個方塊內部,然後選取動態內容清單。 從該清單中,選取 [撰寫] 動作底下的 [輸出]

    針對此範例,結果會出現在電子郵件的內文中,因此請將 [輸出] 欄位新增至 [主體] 方塊。

    顯示工作流程設計工具的螢幕擷取畫面,名為 [傳送電子郵件] 的動作,以及上述 [撰寫] 動作的輸出。

  3. 儲存您的工作流程,然後手動執行工作流程。

    • 使用量工作流程:在設計工具列選上,選取 [執行]>[執行]
    • 標準工作流程:在工作流程導覽功能表上,選取 [概觀]。 在 [概觀] 頁面工具列上,選取 [執行] > [執行]

如果您使用 Office 365 Outlook 動作,下列範例會顯示結果:

顯示來自 [撰寫] 動作結果之電子郵件的螢幕擷取畫面。

建立 CSV 資料表動作

若要從陣列中的 JavaScript 物件標記法 (JSON) 物件建立含有其屬性和值的逗號分隔值 (CSV) 資料表,請使用名為 [建立 CSV 資料表] 的動作。 接著,您可以在建立 CSV 資料表動作之後的動作中使用產生的資料表。

若要嘗試建立 CSV 資料表動作,請使用工作流程設計工具進行下列步驟。 或者,如果您偏好在程式碼檢視編輯器中工作,您可以將本指南中的範例建立 CSV 資料表將變數初始化動作定義複製到您自己的邏輯應用程式基礎工作流程定義中:資料作業程式碼範例 - 建立 CSV 資料表。 如需在基礎 JSON 工作流程定義中建立 CSV 資料表動作的詳細資訊,請參閱資料表動作

  1. Azure 入口網站或 Visual Studio Code 中,從設計工具開啟邏輯應用程式工作流程。

    此範例會使用 Azure 入口網站和範例工作流程搭配週期性觸發程序,後面接著將變數初始化動作。 此動作依設定會建立一個變數,且其初始值為陣列,含有 JSON 格式的一些屬性和值。

    作業 屬性和值
    初始化變數 - 名稱:myJSONArray
    - 型別:陣列
    - [ { "Description": "Apples", "Product_ID": 1 }, { "Description": "Oranges", "Product_ID": 2 }]

    顯示使用量工作流程設計工具,以及名為 [建立 CSV 資料表] 動作之範例工作流程的螢幕擷取畫面。

  2. 遵循下列一般步驟來新增名為建立 CSV 資料表資料作業動作

  3. 在設計工具上,如果尚未選取,請選取 [建立 CSV 資料表] 動作。 在 [來源] 方塊中,輸入用來建立資料表的陣列或運算式。

    針對此範例,請選取 [來源] 方塊內部,並選取動態內容清單 (閃電圖示)。 從該清單中,選取 myJSONArray 變數:

    顯示使用量工作流程、名為 [建立 CSV 資料表] 的動作,以及要使用之選取輸入的螢幕擷取畫面。

    提示

    若要為 JSON 物件中的屬性建立易記的權杖,以便您可以選取這些屬性作為輸入,請先使用名為剖析 JSON 的動作,再使用建立 CSV 資料表動作。

    下列螢幕擷取畫面顯示已完成的範例建立 CSV 資料表動作:

    顯示使用量工作流程和名為 [建立 CSV 資料表] 之已完成範例動作的螢幕擷取畫面。

  4. 儲存您的工作流程您 在設計師工具列上選取儲存

自訂資料表格式

根據預設,Columns 屬性會設定為根據陣列項目自動建立資料表資料行。 若要指定自訂的標頭和值,請遵循下列步驟:

  1. 如果 [資料行] 屬性未出現在動作資訊方塊中,請從 [進階參數] 清單中選取 [資料行]

  2. 開啟 [資料行] 清單,然後選取 [自訂]

  3. Header 屬性中,指定要改用的自訂標頭文字。

  4. Value 屬性中,指定要改用的自訂值。

若要從陣列傳回值,您可以使用 函式搭配 [建立 CSV 資料表]item() 動作。 在 For_each 迴圈中,您可以使用items()函式

例如,假設您所需的資料表資料行只有屬性值,而沒有陣列中的屬性名稱。 若要只傳回這些值,請遵循下列步驟,在設計工具檢視或程式碼檢視中進行處理。

此範例會傳回下列結果:

Apples,1
Oranges,2

在設計工具檢視中進行處理

在 [建立 CSV 資料表] 動作中,將 [標頭] 資料 行保留空白。 在 [值] 資料行中的每個資料列上,取值您所需的每個陣列屬性。 [值] 下的每個資料列都會傳回所指定陣列屬性的所有值,並成為資料表中的資料行。

  1. 針對每個所需的陣列屬性,在 [標題] 資料行中選取編輯方塊內部,接著選取函數圖示,隨即會開啟運算式編輯器。 請確定已選取 [函式] 清單。

  2. 在運算式編輯器中,輸入下列運算式,但將 <array-property-name> 取代為所需值的陣列屬性名稱。 當您完成每個運算式時,請選擇 [新增]

    語法: item()?['<array-property-name>']

    範例:

    • item()?['Description']
    • item()?['Product_ID']

    顯示工作流程設計工具、名為 [建立 CSV 資料表] 的動作,以及如何取值名為 [描述] 之陣列屬性的螢幕擷取畫面。

    如需詳細資訊,請參閱 item() 函式

  3. 對每個陣列屬性重複上述步驟。 完成時,您的動作會如下列範例所示:

    顯示名為 [建立 CSV 資料表] 的動作,以及名為 item() 之函式的螢幕擷取畫面。

在程式碼檢視中進行處理

在動作的 JSON 定義中,於 columns 陣列內,將 header 屬性設定為空字串。 針對每個 value 屬性,取值您所需的每個陣列屬性。

  1. 從設計工具切換至程式碼檢視。

    • 取用:在設計工具的工具列上,選取 [程式碼檢視]。
    • 標準:在工作流程導覽功能表上,於 [設計工具] 底下,選取 [程式碼]
  2. 在程式碼編輯器中,尋找動作的 columns 陣列。 針對您想要的每個陣列值資料列,請新增空白的 header 屬性,並為 value 屬性新增下列運算式:

    語法:

    {
       "header": "",
       "value": "@item()?['<array-property-name>']"
    }
    

    範例:

    "Create_CSV_table": {
       "inputs": {
          "columns": [
             { 
                "header": "",
                "value": "@item()?['Description']"
             },
             { 
                "header": "",
                "value": "@item()?['Product_ID']"
             }
          ],
          "format": "CSV",
          "from": "@variables('myJSONArray')"
       }
    }
    
  3. 切換回設計工具檢視以檢閱結果。

測試工作流程

若要確認建立 CSV 資料表動作建立的結果是否符合預期,請將包含建立 CSV 資料表動作輸出的通知傳送給自己。

  1. 在您的工作流程中,新增可將建立 CSV 資料表動作的結果傳送給您自己的動作。

    此範例接下來會使用名為傳送電子郵件的 Office 365 Outlook 動作。

  2. 在此動作中,針對您想要顯示結果的每個方塊,選取各個方塊內部,隨即會開啟動態內容清單。 從該清單中,在 [建立 CSV 資料表] 動作下,選取 [輸出]

    顯示工作流程的螢幕擷取畫面,其中包含名為 [傳送電子郵件] 的動作。Body 屬性包含名為 [建立 CSV 資料表] 之先前動作的 [輸出] 欄位。

  3. 儲存您的工作流程,然後手動執行工作流程。

    • 使用量工作流程:在設計工具列選上,選取 [執行]>[執行]
    • 標準工作流程:在工作流程導覽功能表上,選取 [概觀]。 在 [概觀] 頁面工具列上,選取 [執行] > [執行]

如果您使用 Office 365 Outlook 動作,下列範例會顯示結果:

顯示名為 [建立 CSV 資料表] 動作結果之電子郵件的螢幕擷取畫面。

注意

如果您的資料表以不正確的格式傳回,請參閱如何檢查資料表資料格式設定

建立 HTML 資料表動作

若要從陣列中的 JavaScript 物件標記法 (JSON) 物件建立含有其屬性和值的 HTML 資料表,請使用 [建立 HTML 資料表] 動作。 接著,您可以在建立 HTML 資料表動作之後的動作中使用產生的資料表。

若要嘗試建立 HTML 資料表動作,請使用工作流程設計工具進行下列步驟。 或者,如果您偏好在程式碼檢視編輯器中工作,您可以將本指南中的範例建立 HTML 資料表將變數初始化動作定義複製到您自己的邏輯應用程式基礎工作流程定義中:資料作業程式碼範例 - 建立 HTML 資料表。 如需在基礎 JSON 工作流程定義中建立 HTML 資料表動作的詳細資訊,請參閱資料表動作

  1. Azure 入口網站或 Visual Studio Code 中,從設計工具開啟邏輯應用程式工作流程。

    此範例會使用 Azure 入口網站和範例工作流程搭配週期性觸發程序,後面接著將變數初始化動作。 此動作依設定會建立一個變數,且其初始值為陣列,含有 JSON 格式的一些屬性和值。

    作業 屬性和值
    初始化變數 - 名稱:myJSONArray
    - 型別:陣列
    - [ { "Description": "Apples", "Product_ID": 1 }, { "Description": "Oranges", "Product_ID": 2 }]

    顯示 Azure 入口網站、使用量工作流程設計工具,以及名為 [建立 HTML 資料表] 動作之樣本工作流程的螢幕擷取畫面。

  2. 遵循下列一般步驟來新增名為建立 HTML 資料表資料作業動作

  3. 在設計工具上,如果尚未選取,請選取 [建立 HTML 資料表] 動作。 在 [來源] 方塊中,輸入用來建立資料表的陣列或運算式。

    針對此範例,請選取 [來源] 方塊內部,並選取動態內容清單 (閃電圖示)。 從該清單中,選取 myJSONArray 變數:

    顯示使用量工作流程、名為 [建立 HTML 資料表] 的動作,以及要使用之選取輸入的螢幕擷取畫面。

    提示

    若要為 JSON 物件中的屬性建立易記的權杖,以便您可以選取這些屬性作為輸入,請先使用名為剖析 JSON 的動作,再使用建立 HTML 資料表動作。

    下列螢幕擷取畫面顯示已完成的範例建立 HTML 資料表動作:

    顯示使用量工作流程和名為 [建立 HTML 資料表] 之已完成範例動作的螢幕擷取畫面。

  4. 儲存您的工作流程您 在設計師工具列上選取儲存

自訂資料表格式

根據預設,Columns 屬性會設定為根據陣列項目自動建立資料表資料行。 若要指定自訂的標頭和值,請遵循下列步驟:

  1. 如果 [資料行] 屬性未出現在動作資訊方塊中,請從 [進階參數] 清單中選取 [資料行]

  2. 開啟 [資料行] 清單,然後選取 [自訂]

  3. Header 屬性中,指定要改用的自訂標頭文字。

  4. Value 屬性中,指定要改用的自訂值。

若要從陣列傳回值,您可以使用 函式搭配 [建立 HTML 資料表]item() 動作。 在 For_each 迴圈中,您可以使用items()函式

例如,假設您所需的資料表資料行只有屬性值,而沒有陣列中的屬性名稱。 若要只傳回這些值,請遵循下列步驟,在設計工具檢視或程式碼檢視中進行處理。

此範例會傳回下列結果:

Apples,1
Oranges,2

在設計工具檢視中進行處理

在 [建立 HTML 資料表] 動作中,將 [標頭] 資料行保留空白。 在 [值] 資料行中的每個資料列上,取值您所需的每個陣列屬性。 [值] 下的每個資料列都會傳回所指定陣列屬性的所有值,並成為資料表中的資料行。

  1. 針對每個所需的陣列屬性,在 [標題] 資料行中選取編輯方塊內部,接著選取函數圖示,隨即會開啟運算式編輯器。 請確定已選取 [函式] 清單。

  2. 在運算式編輯器中,輸入下列運算式,但將 <array-property-name> 取代為所需值的陣列屬性名稱。 當您完成每個運算式時,請選擇 [新增]

    語法: item()?['<array-property-name>']

    範例:

    • item()?['Description']
    • item()?['Product_ID']

    顯示工作流程設計工具、名為 [建立 HTML 資料表] 的動作,以及如何取值名為 [描述] 之陣列屬性的螢幕擷取畫面。

    如需詳細資訊,請參閱 item() 函式

  3. 對每個陣列屬性重複上述步驟。 完成時,您的動作會如下列範例所示:

    顯示名為 [建立 HTML 資料表] 的動作,以及名為 item() 之函式的螢幕擷取畫面。

在程式碼檢視中進行處理

在動作的 JSON 定義中,於 columns 陣列內,將 header 屬性設定為空字串。 針對每個 value 屬性,取值您所需的每個陣列屬性。

  1. 從設計工具切換至程式碼檢視。

    • 取用:在設計工具的工具列上,選取 [程式碼檢視]。
    • 標準:在工作流程導覽功能表上,於 [設計工具] 底下,選取 [程式碼]
  2. 在程式碼編輯器中,尋找動作的 columns 陣列。 針對您想要的每個陣列值資料列,請新增空白的 header 屬性,並為 value 屬性新增下列運算式:

    語法:

    {
       "header": "",
       "value": "@item()?['<array-property-name>']"
    }
    

    範例:

    "Create_HTML_table": {
       "inputs": {
          "columns": [
             { 
                "header": "",
                "value": "@item()?['Description']"
             },
             { 
                "header": "",
                "value": "@item()?['Product_ID']"
             }
          ],
          "format": "HTML",
          "from": "@variables('myJSONArray')"
       }
    }
    
  3. 切換回設計工具檢視以檢閱結果。

測試工作流程

若要確認建立 HTML 資料表動作建立的結果是否符合預期,請將包含建立 HTML 資料表動作輸出的通知傳送給自己。

  1. 在您的工作流程中,新增可將建立 HTML 資料表動作的結果傳送給您自己的動作。

    此範例接下來會使用名為傳送電子郵件的 Office 365 Outlook 動作。

  2. 在此動作中,針對您想要顯示結果的每個方塊,選取各個方塊內部,接著選取閃電圖示以開啟動態內容清單。 從該清單中,在 [建立 HTML 資料表] 動作下,選取 [輸出]

    顯示工作流程的螢幕擷取畫面,其中包含名為 [傳送電子郵件] 的動作。Body 屬性包含名為 [建立 HTML 資料表] 之先前動作的 [輸出] 欄位。

  3. 儲存您的工作流程,然後手動執行工作流程。

    • 使用量工作流程:在設計工具列選上,選取 [執行]>[執行]
    • 標準工作流程:在工作流程導覽功能表上,選取 [概觀]。 在 [概觀] 頁面工具列上,選取 [執行] > [執行]

如果您使用 Office 365 Outlook 動作,下列範例會顯示結果:

顯示名為 [建立 HTML 資料表] 動作結果之電子郵件的螢幕擷取畫面。

篩選陣列動作

若要根據子集項目符合特定準則的現有陣列建立子集陣列,請使用篩選陣列動作。 接著,您可以在篩選陣列動作的後續動作中使用篩選出的陣列。

若要嘗試篩選陣列動作,請使用工作流程設計工具進行下列步驟。 或者,如果您偏好在程式碼檢視編輯器中工作,您可以將本指南中的範例篩選陣列將變數初始化動作定義複製到您自己的邏輯應用程式基礎工作流程定義中:資料作業程式碼範例 - 篩選陣列。 如需基礎 JSON 工作流程定義中篩選陣列動作的詳細資訊,請參閱查詢動作

注意

任何在您的條件中使用篩選文字,都會區分大小寫。 此外,此動作不可變更陣列中各個項目的格式或元件。

若要讓動作使用篩選陣列動作的陣列輸出,這些動作必須將陣列作為輸入,或者您可能必須將輸出陣列轉換為其他相容的格式。

如果您呼叫 HTTP 端點並接收 JSON 回應,請使用 [剖析 JSON] 動作來處理 JSON 回應。 否則,[篩選陣列] 動作只能讀取回應本文,而無法讀取 JSON 承載的結構。

  1. Azure 入口網站或 Visual Studio Code 中,從設計工具開啟邏輯應用程式工作流程。

    此範例會使用 Azure 入口網站和範例工作流程搭配週期性觸發程序,後面接著將變數初始化動作。 此動作依設定會建立初始值包含一些範例整數值的陣列。

    作業 屬性和值
    初始化變數 - 名稱:myIntegerArray
    - 型別:陣列
    - [1,2,3,4]

    注意

    雖然此範例使用簡單的整數陣列,但在可根據物件的屬性和值進行篩選的 JSON 物件陣列中,此動作將特別有用。

    顯示 Azure 入口網站、使用量工作流程設計工具,以及名為 [篩選陣列] 動作之範例工作流程的螢幕擷取畫面。

  2. 遵循下列一般步驟來尋找名為篩選陣列資料作業動作

  3. 在設計工具上,如果尚未選取,請選取 [篩選陣列] 動作。 在 [來源] 方塊中,輸入要當成篩選條件的陣列或運算式。

    針對此範例,請選取 [來源] 方塊內部,然後選取閃電圖示,隨即會開啟動態內容清單。 從該清單中,選取先前建立的變數:

    顯示使用量工作流程、名為 [篩選陣列] 的動作,以及選取的使用輸出螢幕擷取畫面。

  4. 針對條件,請指定要比較的陣列項目、選取比較運算子,並指定比較值。

    此範例使用 item() 函式來存取陣列中的每個項目,而篩選陣列動作會搜尋值大於一的陣列項目。 下列螢幕擷取畫面顯示已完成的範例篩選陣列動作:

    顯示使用量工作流程和名為 [篩選陣列] 之已完成範例動作的螢幕擷取畫面。

  5. 儲存您的工作流程您 在設計師工具列上選取儲存

測試工作流程

若要確認篩選陣列動作建立的結果是否符合預期,請將包含篩選陣列動作輸出的通知傳送給自己。

  1. 在您的工作流程中,新增可將篩選陣列動作的結果傳送給您自己的動作。

    此範例接下來會使用名為傳送電子郵件的 Office 365 Outlook 動作。

  2. 在此動作中,完成下列步驟:

    1. 針對您要顯示結果的每個方塊選取其內部,接著選取函式圖示,隨即會開啟運算式編輯器。 請確定已選取 [函式] 清單。

    2. 若要從篩選陣列動作取得陣列輸出,請輸入下列運算式,該運算式會根據篩選陣列動作名稱使用 body() 函式,然後選取 [新增]

      body('Filter_array')

      顯示工作流程的螢幕擷取畫面,其中包含名為 [傳送電子郵件] 的動作。Body 屬性包含 body() 函式,其會從先前名為篩選陣列的動作取得本文內容。

      解析的運算式會指定在傳送時,在電子郵件本文中顯示篩選陣列的輸出:

      顯示 [傳送電子郵件] 的標準工作流程和已完成之範例動作的螢幕擷取畫面。

  3. 儲存您的工作流程,然後手動執行工作流程。

    • 使用量工作流程:在設計工具列選上,選取 [執行]>[執行]
    • 標準工作流程:在工作流程導覽功能表上,選取 [概觀]。 在 [概觀] 頁面工具列上,選取 [執行] > [執行]

如果您使用 Office 365 Outlook 動作,下列範例會顯示結果:

顯示名為 [篩選陣列] 動作結果之電子郵件的螢幕擷取畫面。

[聯結] 動作

若要建立包含陣列中所有項目的字串,並以特定分隔符號字元分隔這些項目,請使用 [聯結] 動作。 接著,您可以在聯結動作的後續動作中使用該字串。

若要嘗試聯結動作,請使用工作流程設計工具進行下列步驟。 或者,如果您偏好在程式碼檢視編輯器中工作,您可以將本指南中的範例聯結將變數初始化動作定義複製到您自己的邏輯應用程式基礎工作流程定義中:資料作業程式碼範例 - 聯結。 如需基礎工作流程定義中聯結動作的詳細資訊,請參閱聯結動作

  1. Azure 入口網站或 Visual Studio Code 中,從設計工具開啟邏輯應用程式工作流程。

    此範例會使用 Azure 入口網站和範例工作流程搭配週期性觸發程序,後面接著將變數初始化動作。 此動作依設定會建立一個變數,其初始值是包含一些範例整數值的陣列。

    作業 屬性和值
    初始化變數 - 名稱:myIntegerArray
    - 型別:陣列
    - [1,2,3,4]

    顯示 Azure 入口網站、使用量工作流程設計工具,以及名為 [聯結] 動作之範例工作流程的螢幕擷取畫面。

  2. 遵循下列一般步驟來尋找名為聯結資料作業動作

  3. 在設計工具上,如果尚未選取,請選取 [聯結] 動作。 在 [來源] 方塊中,提供您要聯結為字串的項目所屬陣列。

  4. 在 [來源] 方塊中,提供您要聯結為字串的項目所屬陣列。

    針對此範例,請選取 [來源] 方塊內部,然後選取閃電圖示,隨即會開啟動態內容清單。 從該清單中,選取先前建立的變數:

    顯示使用量工作流程、名為 [聯結] 的動作,以及要聯結為字串之選取陣列輸出的螢幕擷取畫面。

  5. 在 [聯結對象] 方塊中,輸入要用來分隔每個陣列項目的字元。

    此範例使用冒號 (:) 作為 [聯結對象] 屬性的分隔符號。

    顯示使用量工作流程和名為 [聯結] 之已完成範例動作的螢幕擷取畫面。

  6. 儲存您的工作流程您 在設計師工具列上選取儲存

測試工作流程

若要確認聯結動作建立的結果是否符合預期,請將包含聯結動作輸出的通知傳送給自己。

  1. 在您的工作流程中,新增可將聯結動作的結果傳送給您自己的動作。

    此範例接下來會使用名為傳送電子郵件的 Office 365 Outlook 動作。

  2. 在此動作中,針對您想要顯示結果的每個方塊,選取各個方塊內部,接著選取閃電圖示以開啟動態內容清單。 從該清單中,選取 [聯結] 動作底下的 [輸出]

    顯示工作流程的螢幕擷取畫面,其中包含名為 [針對聯結動作傳送電子郵件] 的已完成動作。

  3. 儲存您的工作流程,然後手動執行工作流程。

    • 使用量工作流程:在設計工具列選上,選取 [執行]>[執行]
    • 標準工作流程:在工作流程導覽功能表上,選取 [概觀]。 在 [概觀] 頁面工具列上,選取 [執行] > [執行]

如果您使用 Office 365 Outlook 動作,下列範例會顯示結果:

顯示來自 [聯結] 動作結果之電子郵件的螢幕擷取畫面。

剖析 JSON 動作

若要參考或存取 JavaScript 物件標記法 (JSON) 內容中的屬性,您可以使用 [剖析 JSON] 動作為這些屬性建立易記的欄位或權杖。 如此一來,當您為工作流程後續動作指定輸入時,便可從動態內容清單中選取這些屬性。 針對此動作,您可以提供 JSON 結構描述,或從範例 JSON 內容或承載產生 JSON 結構描述。

若要嘗試剖析 JSON 動作,請使用工作流程設計工具進行下列步驟。 或者,如果您偏好在程式碼檢視編輯器中工作,您可以將本指南中的範例剖析 JSON將變數初始化動作定義複製到您自己的邏輯應用程式基礎工作流程定義中:資料作業程式碼範例 - 剖析 JSON。 如需與基礎工作流程定義中的這個動作有關的詳細資訊,請參閱剖析 JSON 動作

  1. Azure 入口網站或 Visual Studio Code 中,從設計工具開啟邏輯應用程式工作流程。

    此範例會使用 Azure 入口網站和範例工作流程搭配週期性觸發程序,後面接著將變數初始化動作。 此動作依設定會建立變數,其初始值是下列 JSON 物件,包含屬性和值:

    {
        "Member": {
            "Email": "Sophia.Owen@fabrikam.com",
            "FirstName": "Sophia",
            "LastName": "Owen"
        }
    }
    

    顯示 Azure 入口網站、使用量工作流程設計工具,以及名為 [剖析 JSON] 動作之範例工作流程的螢幕擷取畫面。

  2. 遵循下列一般步驟來尋找名為剖析 JSON資料作業動作

  3. 在設計工具上,如果尚未選取,請選取 [剖析 JSON] 動作。 在 [內容] 方塊中,輸入您要剖析的 JSON 物件。

    針對此範例,請選取 [內容] 方塊內部,然後選取閃電圖示,隨即會開啟動態內容清單。 從該清單中,選取先前建立的變數:

    顯示使用量工作流程、名為 [剖析 JSON] 的動作,以及要剖析之所選 JSON 物件變數的螢幕擷取畫面。

  4. 在 [結構描述] 方塊中,輸入描述待剖析 JSON 物件或承載的 JSON 結構描述。

    在此範例中,請針對範例 JSON 物件使用下列結構描述:

    {
        "type": "object",
        "properties": {
            "Member": {
                "type": "object",
                "properties": {
                    "Email": {
                        "type": "string"
                    },
                    "FirstName": {
                        "type": "string"
                    },
                    "LastName": {
                        "type": "string"
                    }
                }
            }
        }
    }
    

    顯示您想要剖析之 JSON 物件的使用量工作流程、名為 [剖析 JSON] 的動作,以及 JSON 結構描述的螢幕擷取畫面。

    如果您沒有結構描述,可以從 JSON 物件產生結構描述:

    1. 在 [剖析 JSON] 動作的 [結構描述] 方塊底下,選取 [請使用範例承載產生結構描述]

    2. 在 [輸入或貼上範例 JSON 承載] 方塊中提供 JSON 內容或物件,然後選取 [完成],例如:

      {
          "Member": {
             "Email": "Sophia.Owens@fabrikam.com",
             "FirstName": "Sophia",
             "LastName": "Owens"
          }
      }
      

      顯示使用量工作流程、名為 [剖析 JSON] 的動作,以及名為 [輸入] 或貼上範例 JSON 承載之方塊的螢幕擷取畫面,其中包含用來產生結構描述的 JSON 範例。

  5. 儲存您的工作流程您 在設計師工具列上選取儲存

測試工作流程

若要確認剖析 JSON 動作建立的結果是否符合預期,請將包含剖析 JSON 動作輸出的通知傳送給自己。

  1. 在您的工作流程中,新增可將剖析 JSON 動作的結果傳送給您自己的動作。

    此範例接下來會使用名為傳送電子郵件的 Office 365 Outlook 動作。

  2. 在此動作中,針對您想要顯示結果的每個方塊,選取各個編輯方塊的內部,接著選取閃電圖示以開啟動態內容清單。 在該清單的 [剖析 JSON] 動作下,請選取已剖析 JSON 物件內的屬性。

    此範例會選取下列屬性:Body FirstNameBody LastNameBody Email

    顯示標準工作流程的螢幕擷取畫面,其動作中有名為 [傳送電子郵件] 的 JSON 屬性。

    完成時,您的傳送電子郵件動作會類似下列範例:

    顯示工作流程的螢幕擷取畫面,其中包含名為 [傳送電子郵件以執行剖析 JSON] 的已完成動作。

  3. 儲存您的工作流程,然後手動執行工作流程。

    • 使用量工作流程:在設計工具列選上,選取 [執行]>[執行]
    • 標準工作流程:在工作流程導覽功能表上,選取 [概觀]。 在 [概觀] 頁面工具列上,選取 [執行] > [執行]

如果您使用 Office 365 Outlook 動作,下列範例會顯示結果:

顯示名為 [剖析 JSON] 動作結果之電子郵件的螢幕擷取畫面。

選取動作

根據預設,選取動作會建立一個陣列,其中包含根據現有陣列值建置的 JSON 物件。 例如,您可以為整數陣列中的每個值建立 JSON 物件,只要指定每個 JSON 物件所必須具有的屬性,並將來源陣列中的值對應至這些屬性即可。 雖然您可以變更元件 JSON 物件,但輸出陣列的項目數一律會與來源陣列相同。 若要使用選取動作的輸出陣列,後續動作必須接受陣列作為輸入,或者您可能必須將輸出陣列轉換為其他相容的格式。

若要嘗試選取動作,請使用工作流程設計工具進行下列步驟。 或者,如果您偏好在程式碼檢視編輯器中工作,您可以將本指南中的範例選取將變數初始化動作定義複製到您自己的邏輯應用程式基礎工作流程定義中:資料作業程式碼範例 - 選取。 如需與基礎工作流程定義中的這個動作有關的詳細資訊,請參閱選取動作

提示

如需建立數位的範例,其中包含從 JSON 物件陣列中的值建置的字串或整數,請參閱資料作業程式代碼範例中的 SelectInitialize 變數動作定義 - Select

  1. Azure 入口網站或 Visual Studio Code 中,從設計工具開啟邏輯應用程式工作流程。

    此範例會使用 Azure 入口網站和範例工作流程搭配週期性觸發程序,後面接著將變數初始化動作。 此動作依設定會建立一個變數,且其初始值為包含一些範例整數的陣列。

    作業 屬性和值
    初始化變數 - 名稱:myIntegerArray
    - 型別:陣列
    - [1,2,3,4]

    顯示 Azure 入口網站、使用量工作流程設計工具,以及名為 [選取] 動作之範例工作流程的螢幕擷取畫面。

  2. 遵循下列一般步驟來尋找名為選取資料作業動作

  3. 在設計工具上,如果尚未選取,請選取 [選取] 動作。 在 [來源] 方塊中,輸入您要使用的來源陣列。

    針對此範例,請選取 [來源] 方塊內部,然後選取閃電圖示,隨即會開啟動態內容清單。 從該清單中,選取先前建立的變數:

    顯示使用量工作流程、名為 [選取] 的動作,以及要使用之選取的來源陣列變數。

  4. 針對 [對應] 屬性,在左側資料行中輸入屬性名稱,以描述來源陣列中的所有值。

    此範例會使用 Product_ID (產品識別碼) 做為來源陣列中整數值的屬性名稱。 因此,每個值 (例如 1234) 都是產品識別碼。

  5. 在右側資料行中輸入運算式,指定左側資料行中屬性名稱的來源陣列值。

    此範例會使用 item() 函式逐一查看和存取陣列中的每個項目。

    1. 選取右側資料行內部,然後選取函式圖示,藉此開啟運算式編輯器。 請確定已選取 [函式] 清單。

    2. 在運算式編輯器中,輸入名為 item() 的函式,然後選取 [新增]

      顯示使用量工作流程、名為 [選取] 的動作,以及用來建立 JSON 物件陣列的 JSON 物件屬性和值的螢幕擷取畫面。

    選取動作現在看起來類似下列範例:

    顯示使用量工作流程和名為 [選取] 之已完成範例動作的螢幕擷取畫面。

  6. 儲存您的工作流程您 在設計師工具列上選取儲存

測試工作流程

若要確認選取動作建立的結果是否符合預期,請將包含選取動作輸出的通知傳送給自己。

  1. 在您的工作流程中,新增可將選取動作的結果傳送給您自己的動作。

  2. 在此動作中,完成下列步驟:

    1. 針對您要顯示結果的每個方塊選取其內部,接著選取函式圖示,隨即會開啟運算式編輯器。 請確定已選取 [函式] 清單。

    2. 若要從選取動作取得陣列輸出,請輸入下列運算式,該運算式會根據選取動作名稱使用 body() 函式,然後選取 [新增]

      body('Select')

      顯示名為 [傳送電子郵件] 的工作流程,以及 [選取] 動作之動作輸出的螢幕擷取畫面。

      解析的運算式會指定在傳送時,在電子郵件本文中顯示選取的輸出:

      顯示名為 [選取] 動作之 [傳送電子郵件] 的工作流程和已完成動作的螢幕擷取畫面。

  3. 儲存您的工作流程,然後手動執行工作流程。

    • 使用量工作流程:在設計工具列選上,選取 [執行]>[執行]
    • 標準工作流程:在工作流程導覽功能表上,選取 [概觀]。 在 [概觀] 頁面工具列上,選取 [執行] > [執行]

如果您使用 Office 365 Outlook 動作,下列範例會顯示結果:

顯示來自 [選取] 動作結果之電子郵件的螢幕擷取畫面。

疑難排解

格式資料表資料

如果您的 CSV 資料表HTML 資料表以不正確的格式傳回,請確定您在資料列之間的輸入資料有分行符號。

不正確的格式設定:

Fruit,Number Apples,1 Oranges,2

正確的格式設定:

Fruit,Number
Apples,1
Oranges,2

若要在資料列之間新增分行符號,請將下列其中一個運算式新增至您的資料表:

replace(body('Create_CSV_table'),'','<br/>')
replace(body('Create_HTML_table'),'','<br/>')

例如:

{
	"Send_an_email_": {
		"inputs": {
			"body": {
				"Body": "<p>Results from Create CSV table action:<br/>\n<br/>\n<br/>\n@{replace(body('Create_CSV_table'),'\r\n','<br/>')}</p>",
				"Subject": "Create CSV table results",
				"To": "sophia.owen@fabrikam.com"
			}
		}
	}
}