SharePoint | 採番台帳 | ユーザーまたはグループ列の対処方法

SharePoint | 採番台帳 | ユーザーまたはグループ列の対処方法

みなさん、こんにちは!

今回は ご質問いただいていた内容の対処方法を紹介します。

前回の記事はこちら↓

ご質問

Sharepointリストの項目に「ユーザーまたはグループ」列があり、複数人が入力されていた場合、【①項目が作成されたとき→②変数の初期化→③項目の更新】の手順で作動させると ③の際に「ユーザーまたはグループ」列の複数人が先頭の一人だけになってしまい、消えてしまいます。何か対策方法はありますでしょうか?

この対処方法を考えます。

原因

多分ですが、①→②→Apply to each[③] となった場合、③が「ユーザまたはグループ」の人数分繰り返し上書きされてしまうため、繰り返し処理の最後の人だけ残る状態が発生しているのでは?と推測します。(これだけでははっきりは分かりませんが・・・)

対処方法

以下の流れだと「ユーザまたはグループ」が消えないことが分かりました。

①項目が作成されたとき

対象のリストに新規登録された場合がトリガーです。

②変数を初期化する

アレイを作成します。

③JSONの解析

SharePointリストの「ユーザとグループ」列を指定します。

スキーマは以下の通りです。

{
    "type": "array",
    "items": {
        "type": "object",
        "properties": {
            "@@odata.type": {
                "type": "string"
            },
            "Claims": {
                "type": "string"
            },
            "DisplayName": {
                "type": "string"
            },
            "Email": {
                "type": "string"
            },
            "Picture": {
                "type": "string"
            },
            "Department": {
                "type": "string"
            },
            "JobTitle": {
                "type": "string"
            }
        },
        "required": [
            "@@odata.type",
            "Claims",
            "DisplayName",
            "Email",
            "Picture",
            "Department",
            "JobTitle"
        ]
    }
}

④Apply to each

繰り返しの処理で、上記Jsonの結果を配列変数に追加します。

過去の記事でも似たようなことをしています→(リンク

値には以下のように記載することで、Jsonを作成できます。

{
  "Claims": @{items('Apply_to_each')['Claims']}
}

⑤項目の更新

リストを更新します。このとき、「ユーザとグループ」に対して、先ほど作成したJsonの変数を与えます。

以上のステップで「ユーザとグループ」が単一でも複数でも対処することが可能です。

ぜひお試しください。

エラー: データの取得に失敗しました。