アクティビティ
最新
バナーの背景画像
ワークフローに関するアクティビティ
最終更新日 2024年4月22日

データ マップ

このチュートリアルでは、データ マップ コンポーネントの作成および操作方法を説明します。コンポーネントにデータを渡したり、フォームが表示されているときにデータを動的に更新したり、データを抽出したりする方法を学びます。この例では、通貨レートに焦点を当て、異なる通貨を表すキーと値のペアと、それに相当する米ドルの値を持つ辞書を使用します。ボタンを操作することで、フォームが表示されているときに、リアルタイムで通貨レートを抽出して変更できます。
  1. 新しいフォームを作成し、以下のコンポーネントを追加します。
    1. データ マップ コンポーネントを追加します。[プロパティ名] で指定した名前を使用してコンポーネント内のデータを抽出したり、動的に更新したりするので、このプロパティ名を覚えておいてください。
      この例では、[プロパティ名] として dataMap を使用します。
    2. ボタン コンポーネントを追加して、コンポーネント内のデータを抽出します。ボタンの [アクション][イベント] に設定します。
      ボタンに「Extract data」という名前を付けます。
    3. 別のボタン コンポーネントを追加して、コンポーネント内のデータを変更します。ボタンの [アクション][イベント] に設定します。
      ボタンに「Update value」という名前を付けます。
  2. Main ワークフローでディクショナリ変数を作成し、キーと値のペアを追加します。
    この例では、下の図に示すキーと値のペアを使用します。


  3. [ワークフローの実行を続行] が有効化された [フォームを表示] アクティビティを追加します。これにより、他のトリガー ワークフローが同時に実行されている間にフォームを表示できます。
    1. [引数] コレクションで、作成したディクショナリ変数をフォームのデータ マップ コンポーネントに渡します。
  4. [ローカル トリガーを実行] アクティビティを追加して、プロジェクト内のすべてのトリガーを有効化します。
  5. 実行時にデータ マップの値を更新するためのトリガー ワークフローを作成します。
    トリガー ワークフローに fieldChangedTrigger という名前を付けます。
    1. [フォーム トリガー] アクティビティを追加し、[イベント] をデータ マップの値の更新に使用するボタンとして設定します。
      この例では、[イベント] を「Update value clicked」に設定します。
    2. [フォームの値を取得] アクティビティを追加し、データ マップの現在の値をディクショナリ変数に抽出します。
      この例では、現在の値を dataMap2 という名前の変数に保存します。
    3. [繰り返し (コレクションの各要素)] アクティビティを使用して、各キーと値のペアを反復処理し、特定の値に更新します。
    4. [繰り返し (コレクションの各要素)] アクティビティ内に [代入] アクティビティを追加して、データ マップの更新に使用する新しいキーと値のペアを初期化します。
      • [保存先] フィールドを使用して、newItem という名前の変数にペアを保存します。
      • [保存する値] フィールドで、新しいキーと値のペアを指定します (New KeyValuePair(Of String, String)(currentKeyValuePairOfTextAndText.Key, currentKeyValuePairOfTextAndText.Value))。
    5. [繰り返し (コレクションの各要素)] アクティビティ内に、EUR のペアを条件に従って変更する [条件分岐 (if)] アクティビティを追加します。データ マップの反復処理に使用するオブジェクトを使用して条件を設定します。
      この例では、条件「currentKeyValuePairOfTextAndText.Key = "EUR"」を設定します。
    6. [条件分岐 (if)] アクティビティの [Then] 本体内に [代入] アクティビティを追加して、newItem の値を目的の新しい値で更新します。
      • [保存先] フィールドを使用して、newItem 変数を割り当てます。
      • [保存する値] フィールドを使用して、ペアの新しい値を指定します (CType(New KeyValuePair(Of String, String)("EUR", "1.19 USD"), KeyValuePair(Of String, String)))。
    7. 新しい値をディクショナリにマップするために、もう 1 つ [代入] アクティビティを追加します。
      • [保存先] フィールドを使用して、dataMap2 変数内の対応するキーと値のペアを更新します。
      • [保存する値] フィールドを使用して、dataMap2(newItem.Key)newItem.Value を割り当てます。


    8. ワークフローの最後に、[フォームの値を設定] アクティビティを追加して、フォーム内のデータ マップを変更された値で更新します。
  6. 実行時にデータ マップから値を抽出するためのトリガー ワークフローを作成します。
    トリガー ワークフローに extractDataTrigger という名前を付けます。
    1. [フォーム トリガー] アクティビティを追加し、[イベント] をデータ抽出に使用するボタンとして設定します。
      この例では、イベントを「Extract data clicked (クリックされたデータを抽出)」に設定します。
    2. [フォームの値を取得] アクティビティを追加し、実行時にデータ マップの現在の値を抽出します。データ マップをディクショナリ変数に保存します。
    3. [繰り返し (コレクションの各要素)] アクティビティを使用して、データ マップ内の各キーと値のペアを反復処理し、コンソールに出力します。


次の動画では、[Update value (値を更新)] ボタンをクリックすると、データ マップ内の値が動的に更新されます。


ワークフローの例

この手順に従ってチュートリアルをご自身で試してみるには、こちらのサンプル プロジェクトをご覧ください。

  • ワークフローの例

Was this page helpful?

サポートを受ける
RPA について学ぶ - オートメーション コース
UiPath コミュニティ フォーラム
UiPath ロゴ (白)
信頼とセキュリティ
© 2005-2024 UiPath. All rights reserved.