Patch関数でSharePointリストの「ユーザもしくはグループ」列にユーザーを設定する方法

SharePointリストの「ユーザーまたはグループ」列に値を入れる方法がわからなかったので、調べた結果をメモ。

スポンサーリンク

やりたいこと

以下のSharePointリストのように、「ユーザーまたはグループ」列を持つSharePointリストに、値を設定したいときの話。

フォームを使うと簡単に値を設定できるけど、今回はPatch関数から値を追加する方法を紹介。

新規追加

リストに新しくアイテムを追加するときは、以下のようなPatch関数を使用する。
【リスト名】と【列名】、【対象ユーザーのメールアドレス】を差し替える。
※DepartmentやDisplayNameなどは設定しても何も変わらないけど、必須項目。

Patch(【リスト名】, Defaults(【リスト名】),
{
 【列名】:
  {
    '@odata.type':"#Microsoft.Azure.Connectors.SharePoint.SPListExpandedUser",
    Claims:  "i:0#.f|membership|" & "【対象ユーザーのメールアドレス】",
    Department: "",
    DisplayName: "",
    Email: "",
    JobTitle: "",
    Picture: ""
  }
});
この式を実行すると、ユーザーが追加される。

編集

編集する際は、第二引数にDefaults関数の代わりに、LookUp関数やFirst関数、Last関数などで取得できる対象のリストアイテムを設定する。
【リスト名】と【対象のリストアイテム】、【列名】、【対象ユーザーのメールアドレス】を差し替える。

Patch(【リスト名】, 【対象のリストアイテム】,
{
    【列名】:
    {
        '@odata.type':"#Microsoft.Azure.Connectors.SharePoint.SPListExpandedUser",
        Claims:  "i:0#.f|membership|" & "【対象ユーザーのメールアドレス】",
        Department: "",
        DisplayName: "",
        Email: "",
        JobTitle: "",
        Picture: ""
    }
});
この式を実行すると「わんさん」から「うささん」に値が変わる。

コメント

タイトルとURLをコピーしました