> ## Documentation Index
> Fetch the complete documentation index at: https://help.dingtalk.io/llms.txt
> Use this file to discover all available pages before exploring further.

# 関連組織

> DingTalk 相互接続プラットフォームの関連組織機能を活用し、組織を跨いだ連絡先やアプリの相互接続、親組織と子組織間のシームレスなコミュニケーションとコラボレーションを実現する方法を解説します。中規模・大規模組織の管理効率向上に役立つ手順を紹介します。

## 1. ユースケース

「DingTalk 相互接続プラットフォーム」製品のコンポーネントの一つとして、「関連組織」機能は中規模・大規模組織に強力な組織構成管理機能を提供し、ユーザーが**組織を跨いだ連絡先やアプリの相互接続、親組織と子組織間のシームレスなコミュニケーションとコラボレーションを実現する**ことを目的としています。

* 組織を跨いだコミュニケーション、業務承認、業務報告。
* 複数組織の権限管理とユーザー構成のリアルタイム同期により、管理効率を向上します。

## 2. 実装手順

### 2.1 手順1：ベーシックフォームの設計

#### 2.1.1 クエリフォームの作成と設定

**手順：**

1. 通常フォームを作成し、「組織情報の取得」と命名します。
2. ドロップダウン選択コンポーネントを追加し、「オブジェクト」と命名し、「親組織を照会」および「支店組織を照会」の2つの選択肢を追加します。必須項目に設定します。（図2.1-1参照）

図2.1-1 ドロップダウン選択コンポーネントの追加と設定

3. ページ右上の「保存」ボタンをクリックします。

#### 2.1.2 クエリ結果記録テーブルの作成と設定

**手順：**

1. 通常フォームを作成し、「親組織照会結果記録」と命名します。
2. 複数行テキストコンポーネントを追加し、「コネクタ戻り結果」と命名し、ステータスを「非表示」に設定します。（図2.1-2参照）

図2.1-2 複数行テキストコンポーネントの追加と設定

3. サブフォームコンポーネントを追加し、「親組織照会結果」と命名し、ステータスを「閲覧のみ」に設定します。（図2.1-3参照）

図2.1-3 サブフォームコンポーネントの追加と設定

4. サブフォーム内に一行テキストフィールドを2つ追加し、それぞれ「親組織名」と「親組織 CorpID」と命名し、ステータスを「閲覧のみ」に設定します。（図2.1-4参照）

図2.1-4 一行テキストコンポーネントの追加と設定

5. ページ左側の「JS アクションパネル」を開き、以下のコードを didMount 関数に追加します。（図2.1-5参照）

図2.1-5 JS アクションパネルコンテンツの設定

```javascript theme={"theme":{"light":"github-light","dark":"github-dark"}}
// 図2.1-5に示すコード
// 複数行テキストコンポーネントのデータを取得し、res 変数に代入します
// "textareaField_kwlgqhti" は作成した複数行テキストの一意識別子に置き換える必要があります
const res = this.$("textareaField_kwlgqhti").getValue();
// データ形式を変換し、複数行テキストコンポーネントのデータを文字列形式からオブジェクト形式に変換します
  let obj = JSON.parse(res);
// arr という名前の空の配列を作成し、処理後のデータを格納します。
  let arr = [];
// オブジェクトを反復処理し、表示が必要なフィールドを取得します
  const list = obj.map(item => {
    let object = {};
// ここで "textField_kwlgqhtk" と "textField_kwlgqhtl" はサブフォーム内の2つの一行テキストコンポーネントの一意識別子です
// 作成した一行テキストの一意識別子に置き換える必要があります
    object.textField_kwlgqhtk = item.union_org_name;
    object.textField_kwlgqhtl = item.union_corpid;
    arr.push(object);
  })
// 処理後のデータ arr をサブフォームコンポーネントに書き戻します
// ここで "tableField_kwlgqhtj" はサブフォームコンポーネントの一意識別子です
// 作成したサブフォームコンポーネントの一意識別子に置き換える必要があります
  this.$("tableField_kwlgqhtj").setValue(arr);
```

6. ページ右上の「保存」ボタンをクリックします。
7. 手順1〜6を繰り返し、「支店組織照会結果記録」を作成します。（結果は図2.1-6参照）

図2.1-6 「支店組織照会結果記録」フォームの作成

### 2.2 手順2：コネクタの作成と設定

<Note>
  YiDA コネクタ機能の紹介については、以下をご参照ください：[統合と自動化 - コネクタ](/ja/yida/integration/gqmveiswrxkgxu9s)
</Note>

「組織情報の取得」フォーム用のコネクタを作成し、関連組織の情報を取得します。

**手順：**

1. バックエンド管理ページ >> 「組織情報の取得」 >> 「統合と自動化」 >> 「統合と自動化を作成」。（図2.2-1参照）

図2.2-1 コネクタの入口

2. コネクタを「関連組織情報の照会」と命名し、トリガー種類として「フォームイベントトリガー」を選択し、「確認」をクリックします。（図2.2-2参照）

図2.2-2 コネクタの作成

3. コネクタを「関連組織情報の照会」と命名 >> 「フォームイベントトリガー」の下で「作成成功」を選択 >> 「データフィルター」の下で「すべてのデータ」を選択 >> 「確認」をクリックします。（図2.2-3参照）

図2.2-3 コネクタのフォームイベントトリガーの設定

4. 「条件分岐」ノードを追加します：条件ルールでオブジェクトが「親組織を照会」と等しい場合、「親組織の取得」コネクタを追加し、「データを作成」データノードを追加します。それ以外の場合は「支店組織の取得」コネクタを追加し、「組織を作成」データノードを追加します。（図2.2-4参照）

図2.2-4 分岐条件の追加と設定

5. 「分岐1」の下でコネクタを設定します。

図2.2-5 「分岐1」の下でコネクタアプリを選択

図2.2-6 「分岐1」のコネクタ実行アクションを選択

図2.2-7 「分岐1」の下でコネクタ実行アクションを設定

6. 「分岐1」の「データを作成」ノードを設定します。（図2.2-8参照）

図2.2-8 「分岐1」の下で「データを作成」ノードを追加・設定

7. 「分岐2」の下でコネクタを設定します。

図2.2-9 「分岐2」の下でコネクタアプリを選択

図2.2-10 「分岐2」の下でコネクタの実行アクションを選択

図2.2-11 「分岐2」の下でコネクタ実行アクションを設定

8. 「分岐2」の下で「データを作成」ノードを設定します。（図2.2-12参照）

図2.2-12 「分岐2」の下で「データを作成」ノードを設定

9. ページ右上の「保存」ボタンをクリックし、その後「公開」をクリックします。

### 2.3 手順3：フォームデータの送信

コネクタをトリガーし、コネクタから返されたデータを受信し、処理後に表示します。

**手順：**

フォームデータを入力し、送信します。（図2.3-1参照）

図2.3-1 フォームデータの送信

## 3. 結果プレビュー

図3-1 コネクタ結果プレビュー
