(メモ)PowerShellでSharepoint Online のリストライブラリの分析

2018年10月19日

Sharepoint Online のリストライブラリの分析をしようと思い、PowerShellでさくっと出来るやろ~と取り掛かったのであった。ググったところ、ドンピシャのエントリが発見できたので…

PowerShell で、SharePoint Online の リストとアイテムの情報を書き出してみた – Qiita

このままコピペ→動作確認完了!後は取りたい列を追加してcsvに吐き出せば終わりやで~ → (To上司)もう取れたも同然です。

SharePoint の列名の取得

上記から1週間後、さくっと列名取得しますか…と思い、 $item | fl で属性全出しを試した所…エラーが(´・ω・`)

コレクションからの列挙中にエラーが発生しました: The collection has not been initialized. It has not been requested or the request has not been executed. It may need to be explicitly requested.。

困ったときはget-member, get-type, flで力押しってExchange Onlineで習ったのに…!!!!

さすがに列名全出しする方法あるやろ…と予想しネットでググるも、記事が見つかるがコマンドが通らない。まさか、オンプレ専用コマンド!?

結局、列名のオリジナルを取得する方法を調べる方向に舵を取り、無事に狙った列名を指定してpowershellでアクセス出来たのでした。

本題

本当はpowershellをAzure Functionで動かしたいんですってことでメモ。今回、サンプルスクリプトで.Netのアセンブリ使っているので、これをAzure Functionにアップロードしなければいけない。その方法はこちら。

Azure Functions: PowerShell Script Interacting with SharePoint Online – Stack Overflow

モジュール配置方法を調べる & 上記の列名特定方法を調べている途中で、"こういうめんどくさいことから解放されるためにGraphAPI使えばええやん"と思いつき、ちょっとだけ触ってみました。Exchange OnlineのGraphAPIは触ったことあるけど、さすがにSPOもあるのね。

ただ、意図した通りには動いてくれず。そこまで深堀しておらず、僕のSPO経験値が少ないからかもしれないので。Channel 9 の動画を見つけたので、時間がある時に見ることにします。

Posted by tera