コンテンツにスキップ

開発者向け機能:サーバスクリプト:groupMember

概要

サーバスクリプトで使用可能な「グループメンバー」の情報を読み取るためのオブジェクトです。「groupオブジェクト」のGetMembersメソッドで「groupMemberオブジェクト」のコレクションを取得できます。

プロパティ

No 項目名 get set type 説明
1 GroupId int グループID
2 GroupName string グループ名*1
3 DeptId int 組織ID
4 DeptName string 組織名*1
5 DeptCode string 組織コード*1
6 UserId int ユーザID
7 LoginId string ログインID*1
8 Name string ユーザ名*1
9 UserCode string ユーザコード*1
10 TenantManager bool テナント管理者であればTrue*1
11 Disabled bool 無効であればTrue*1
12 Admin bool グループの管理権限を持っていればTrue

*1 バージョン1.5.2.0以降で利用可

グループメンバーが組織グループユーザかに応じてGroupId、DeptId、UserIdの各プロパティに下表の値が格納されます。

メンバーがユーザの場合 メンバーが組織の場合 メンバーが子グループの場合
GroupId 0 0 グループID
DeptId 0 組織ID 0
UserId ユーザID 0 0

使用例

バージョン1.5.1.0以前の使用例

下記の例ではグループID 1 のグループに所属するメンバーの組織IDとユーザIDをログに出力します。

JavaScript
let group = groups.Get(1);
for (let member of group.GetMembers()) {
    context.Log(`${member.DeptId},${member.UserId}`);
}

バージョン1.5.2.0以降の使用例

下記の例ではグループID 6のメンバー情報を取得し、ユーザメンバー、組織メンバー、子グループメンバーかに応じて取得情報を切り分けています。

JavaScript
// グループID=6のグループオブジェクトを取得する
let group = groups.Get(6);

// 出力件数カウンタ初期化
let cnt = 0;

// グループが存在する場合のみ処理を実行
if (group) {

    // グループメンバー一覧をイテレート
    // GetMembers() はユーザ・組織・グループの各メンバーを返す
    for (let member of group.GetMembers()) {

        // メンバー種別の判定:UserId / DeptId / GroupId のいずれか1つだけが非ゼロになる

        if (member.UserId != 0) {
            // UserId != 0 の場合はユーザメンバー
            context.Log(`
            【ユーザ】
            UserId        : ${member.UserId}         // ユーザID
            LoginId       : ${member.LoginId}        // ログインID
            Name          : ${member.Name}           // 表示名
            UserCode      : ${member.UserCode}       // ユーザコード
            TenantManager : ${member.TenantManager}  // テナント管理者フラグ
            Disabled      : ${member.Disabled}       // 無効フラグ
            Admin         : ${member.Admin}          // グループの管理者フラグ
            `);

        } else if (member.DeptId != 0) {
            // DeptId != 0 の場合は組織メンバー
            context.Log(`
            【組織】
            DeptId   : ${member.DeptId}   // 組織ID
            DeptName : ${member.DeptName} // 組織名
            DeptCode : ${member.DeptCode} // 組織コード
            `);

        } else if (member.GroupId != 0) {
            // GroupId != 0 の場合はグループメンバー(ネストされたグループ)
            context.Log(`
            【グループ】
            GroupId   : ${member.GroupId}   // グループID
            GroupName : ${member.GroupName} // グループ名
            `);
        }

        // メンバーごとの区切り線
        context.Log('-----');

        // 出力件数をインクリメント
        cnt++;
    }
}

// 処理したメンバーの総件数を出力
context.Log(`出力件数: ${cnt}件`);

対応バージョン

対応バージョン 内容
1.5.2.0 以降 groupMemberオブジェクトに以下のプロパティを追加
GroupName、DeptName、DeptCode、LoginId、Name、
UserCode、TenantManager、Disabled

関連情報