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

データ テーブルを結合

UiPath.Core.Activities.JoinDataTables

説明

2つの表の行を、[結合の種類] プロパティで指定された結合ルールに従って、これらの表に共通する値を使用して結合します。

プロジェクトの対応 OS

Windows - レガシ | Windows | クロスプラットフォーム

クロスプラットフォームでの設定

  • データテーブル 1 - 結合操作で使用する1番目の表です。DataTable 変数に格納されています。このフィールドでは DataTable 変数のみサポートされています。
  • データテーブル 2 - 結合操作で使用する2番目の表です。DataTable 変数に格納されています。このフィールドでは DataTable 変数のみサポートされています。
注: 2 つの表の順序は極めて重要です。これは、[結合の種類] プロパティ フィールドで選択したオプションに従って結合された結果表構造に影響を与えるからです。
  • 結合の種類 - 使用する結合操作の種類です。次のオプションを使用できます。

    • Inner - 結合ルールに一致するデータテーブル 1データテーブル 2 のすべての行が保持されます。ルールに一致しない行はすべて、結果表から削除されます。
    • Left - データテーブル 1 のすべての行と結合ルールに一致する データテーブル 2 の値のみが保持されます。データテーブル 2 の行と一致する値がないデータテーブル 1 の行の列には、null 値が挿入されます。
    • Full - 結合条件の一致/不一致にかかわらず、データテーブル 1データテーブル 2 のすべての行が保持されます。両方のデータテーブルの条件に一致しない行には、null 値が挿入されます。

      注: データテーブル 2 の列がデータテーブル 1 の列と同じ名前である場合、結果の表ではデータテーブル 2 の列名が [ColumnName]_1 に変更されます。[ColumnName]_1 の名前を持つ列が既に存在する場合、代わりに未使用の連続番号が使用されます。たとえば、データテーブル 1IDID_1ID_2 という名前の列があり、データテーブル 2ID という名前の列があった場合、結合後はデータテーブル 2 の列名が ID_3 に変わります。
  • 結合ルール - テーブルの結合に使用する条件です。フィールドを選択するとシンプルなフィルター ビルダーが開き、フィルターを構成するルールを追加できます。

Windows - レガシ、Windows での設定

プロパティ パネル
共通
  • 表示名 - アクティビティの表示名です。
入力
  • データテーブル 1 - 結合操作で使用する1番目の表です。DataTable 変数に格納されています。このフィールドでは DataTable 変数のみサポートされています。
  • データテーブル 2 - 結合操作で使用する2番目の表です。DataTable 変数に格納されています。このフィールドでは DataTable 変数のみサポートされています。
    注: 2 つの表の順序は極めて重要です。これは、[結合の種類] プロパティ フィールドで選択したオプションに従って結合された結果表構造に影響を与えるからです。
その他
  • プライベート - オンにした場合、変数および引数の値が Verbose レベルでログに出力されなくなります。
オプション
  • 結合の種類 - 使用する結合操作の種類です。次のオプションを使用できます。

    • Inner - 結合ルールに一致するデータテーブル 1データテーブル 2 のすべての行が保持されます。ルールに一致しない行はすべて、結果表から削除されます。
    • Left - データテーブル 1 のすべての行と結合ルールに一致する データテーブル 2 の値のみが保持されます。データテーブル 2 の行と一致する値がないデータテーブル 1 の行の列には、null 値が挿入されます。
    • Full - 結合条件の一致/不一致にかかわらず、データテーブル 1データテーブル 2 のすべての行が保持されます。両方のデータテーブルの条件に一致しない行には、null 値が挿入されます。

      注: データテーブル 2 の列がデータテーブル 1 の列と同じ名前である場合、結果の表ではデータテーブル 2 の列名が [ColumnName]_1 に変更されます。[ColumnName]_1 の名前を持つ列が既に存在する場合、代わりに未使用の連続番号が使用されます。たとえば、データテーブル 1IDID_1ID_2 という名前の列があり、データテーブル 2ID という名前の列があった場合、結合後はデータテーブル 2 の列名が ID_3 に変わります。
出力
  • データテーブル - 結合された値を含む表です。DataTable 変数に格納されます。このフィールドでは DataTable 変数のみサポートされています。

結合ウィザード

このウィザードでは、データテーブルを結合 アクティビティのプロパティを設定できます。デザイナー パネルのアクティビティの本体内の [結合ウィザード] ボタンを押すと、このウィザードが開きます。

ウィザード上部のセクションでは、操作に使用する DataTable 変数、結合型、出力変数を次のフィールドから選択できます。
  • 入力データテーブル 1 - 使用する 1 番目の表を含む DataTable 変数。
  • 入力データテーブル 2 - 使用する 2 番目の表を含む DataTable 変数。
  • データテーブルを出力 - 結果の表を格納する DataTable 変数です。
  • 結合の種類 - 使用する結合操作の種類です。次のオプションを使用できます。
  • Inner - 結合ルールに一致するデータテーブル 1データテーブル 2 のすべての行が保持されます。ルールに一致しない行はすべて、結果表から削除されます。
  • Left - データテーブル 1 のすべての行と結合ルールに一致する データテーブル 2 の値のみが保持されます。データテーブル 2 の行と一致する値がないデータテーブル 1 の行の列には、null 値が挿入されます。
  • Full - 結合条件の一致/不一致にかかわらず、データテーブル 1データテーブル 2 のすべての行が保持されます。両方のデータテーブルの条件に一致しない行には、null 値が挿入されます。

ウィザード下部のセクションでは、列間の関係を示す式を追加して、結果の表の構造を設定できます。これらの各式には、次の3つの要素が含まれています。

  • 列の表 1 - 1 番目の表の列の名前です。このフィールドは、列の名前を含む String 変数、列インデックスを含む Int32 変数、または ExcelColumn 変数のみをサポートします。
  • 操作 - 列間の関係を定義する操作です。次のオプションを使用できます:

    • = - 次に等しい
    • != - 次に等しくない
    • > - 次よりも大きい
    • < - 次よりも小さい
    • >= - 次よりも大きいか等しい
    • <= - 次よりも小さいか等しい
  • 列の表 2 - 2 番目の表の列の名前です。このフィールドは、列の名前を含む String 変数、列インデックスを含む Int32 変数、または ExcelColumn 変数のみをサポートします。

[データ テーブルを結合] アクティビティの使用例

このアクティビティの使用方法を例示するために、ブックの 2 枚のシートを結合して、そのブックの別のシートに出力するプロジェクトを作成しました。この 1 番目のシートには注文に関する詳細情報が含まれ、2 番目のシートには顧客に関する詳細情報が含まれています。2 枚のシートには共通する列として CustomerID が含まれ、結合操作に使用されます。このプロジェクトはここからダウンロードできます。

  1. 空白のプロジェクトを作成します。
  2. [シーケンス] コンテナーを デザイナー パネルにドラッグします。
  3. [Excel アプリケーション スコープ] をドラッグして、[ブック パス] プロパティに Excel ブックのパスを記述します。
  4. 2つの DataTable 変数を作成します。1つは Customers シート用、もう 1 つは、Orders シート用です。
  5. [Excel アプリケーション スコープ] の内部に、2 つの [範囲を読み込み] アクティビティをドラッグします。
  6. この 2 つの [範囲を読み込み] アクティビティを、Excel ブックの各シートを読み出して対応する変数に格納するように設定します。
  7. 結果の表を格納する DataTable 変数を作成します。
  8. [データ テーブルを結合] アクティビティをスコープ コンテナーにドラッグします。
  9. アクティビティの本体内の [結合ウィザード] ボタンをクリックします。データテーブルを結合ウィザード が開きます。
  10. Customers シートを含む変数を [入力データ テーブル 1] フィールドに設定します。
  11. Orders シートを含む変数を [入力データテーブル 2] フィールドに設定します。
  12. 結果の表を格納するための作成した変数を、[データテーブルを出力]フィールドに設定します。
  13. [結合の種類] ドロップダウン メニューで、「Inner」を選択します。
  14. [列の表 1] フィールドに、Customers シートの CustomerID の列に対応する列の名前を入力します。
  15. [操作] ドロップダウン メニューで、「=」を選択します。
  16. [列の表 2] フィールドに、Orders シートの CustomerID 列に対応する列を入力します。ウィザードは次のようになります。



  17. [範囲に書き込み] アクティビティを デザイナー パネルにドラッグします。
  18. 結果の表を含む DataTable 変数を当初のブックの新しいシートに書き込むように、[範囲に書き込み] を設定します。
  19. 最後のワークフローは次のようになります。



Was this page helpful?

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