4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

SharePointリストの「いいね」したユーザ情報を取得する

Last updated at Posted at 2022-03-29

はじめに

SharePoint 2016 の「いいね」の評価が有効になったリストにおいて、「いいね」をクリックしたユーザ情報を取得する要件が出てきました。
Webブラウザ上で確認する方法は既定の機能で用意されているのですが、その方法ではユーザ情報を一覧形式で取得できないため、SharePointのAPIを使用して一覧取得する方法を紹介します。

SharePointのAPIを利用して取得する方法

リスト内のアイテムに対し「いいね」したユーザー数やユーザー名を確認する場合、SharePoint Server APIのSPListクラスとSPListItemクラスを使用します。

取得する手順はSPListクラスのGetItemByIdメソッドを使用して「いいね」されているリストアイテムの情報を取得し、SPListItemクラスの以下2つのプロパティから「いいね」に関連した情報を取得することができます。

  • LikesCount:「いいね」の数
  • LikedBy   :「いいね」したユーザーコレクション

「いいね」したユーザーの一覧をCSV形式でファイル出力するスクリプトの一例です。

GetItemByIdメソッドでアイテム情報を取得し、"LikeBy"のプロパティからユーザー情報を取得しています。
SharePoint ServerのSharePoint管理シェルでお試しください。

$web = Get-SPWeb "サイトのUR>"
$list = $web.Lists["リスト表示名"]
$item = $list.GetItemById("アイテムID")
$item["LikedBy"] | Export-CSV "CSVファイルパス"
  • "サイトのURL" には、取得対象のリストが存在するサイトコレクションもしくはサイトのURLを指定してください。
      例)Get-SPWeb http://(サーバー名)/sites/(サイト名)
  • "リスト表示名" には、対象のリストの名前を指定してください。
      例)$web.Lists["お知らせ"]
  • "アイテムID" には、「いいね」されているアイテムのIDを指定してください。
      例)$list.GetItemById(1)
  • "CSVファイルパス"には、CSVファイルの出力先をフルパスで指定してください。
      例)Export-CSV "C:\\SharePointData\LikedUsers.csv"

(参考)Webブラウザ上で確認する方法

本題から外れますが、Webブラウザ上で「いいね」したユーザを確認する方法も紹介します。
リストのビュー上で「いいね」されたアイテムの行にある顔マークにマウスカーソルを合わせるとポップアップが表示され、「いいね」したユーザーの名前を確認することができます。
Webブラウザ上で確認する方法としては、これ以外に既定の機能が用意されておらず、一覧形式で取得することができません。

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?