Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SharePointのコンテンツ作成を自動化してええ感じにサボろう!!!

 SharePointのコンテンツ作成を自動化してええ感じにサボろう!!!

第 1 回 Japan M365 Dev User Group 勉強会 LT1 の資料です。

F43c26d487294119892a543f6fe77c05?s=128

Naoya Okada

August 20, 2020
Tweet

Transcript

  1. SharePoint のコンテンツ作成を 自動化してええ感じにサボろう!!! 第 1 回 Japan M365 Dev User

    Group 勉強会 2020年8月19日 岡田 尚也
  2. 自己紹介 名前 岡田 尚也 Twitter @nanoka7o8 どんな人? 元SIerの営業でしたが、現在は SharePoint を中心に

    Microsoft 365 関連のアプリを使っ た業務改善のお手伝いをお仕事にしています。 SharePoint や Power Platform に触れ、業種やスキルを問わず、誰もが自身でIT活用し ていけることに魅力を感じ、どうせ仕事するならその世界の実現を支援できる仕事に全 振りしたいなと思って、とりあえず会社辞めちゃった人です。
  3. まだまだ、予算の付きにくい業務への活用でやってるやってる SharePoint のコンテンツ作成やってる? 画面や 処理 データ • いわゆるMicrosoft 365 ライセンスがあれば利用可能

    • Azure Portal操作不要 • Microsoft 365 ライセンス以外が必要 • Azure Portalの操作が必要な場合も Azure Web Apps 等 Azure SQL Database 等 簡易アプリ 本格的なアプリ
  4. 1. 突っぱねてユーザ自身に作らせる 2. GUIでポチポチ作業代行して作ってあげる 3. PowerShell でコンテンツを作ってあげる 4. Power Automate

    でコンテンツ作ってあげる 5. JavaScript でコンテンツ作ってあげる どうやって作ってる? (作らされてる?)
  5. 具体的なやり方は? SharePoint サイトにブラウザでアクセスし、開発者ツール(F12で開くもの)を表示 コンソールに 任意のJavaScript を張り付けて実行するだけでOK

  6. 実行するJavaScriptって?(1/2) SharePoint REST API を 同期処理にして指定の順番で実行することで リスト作成→列作成→アイテム作成など手作業のまとまりをそのままコード化できる //①エンドポイントの設定 リクエストダイジェストの取得 let

    restUri = ‘/sites/SpfxTest /_api/contextinfo’ //②リクエストヘッダの設定 let headers = {}; headers['Content-type'] = 'application/json; odata=verbose' headers['Accept'] = 'application/json; odata=verbose' let fetchHeader = {}; fetchHeader['method'] = 'POST' fetchHeader['headers'] = headers
  7. 実行するJavaScriptって?(2/2) //③同期状態でfetch関数の実行 let d = await fetch(restUri, fetchHeader) .catch((e) =>

    { throw Error(e) }) .then((response) => response.json()) .then((responseJson) => { const { d } = responseJson return d });
  8. デモ 本日はブラウザのコンソールをそのまま使用するのでは 味気ないので、SPFxでコンソールアプリを作ってみました

  9. 1. JavaScript と SharePoint REST API でいろんなことができる 2. コンソールで使えば(2013 で

    Script Editor 使ってた人は特に)慣れ親しんだ JavaScript で 処理を実行できる 3. 作業や処理単位でコードをまとめて、自分好みの範囲で自動化しちゃおう 注意 •利用するエンドポイントによりますが、効果を及ぼすサイトの編集以上の権限があればだい たい実行可能です •Graph REST API の実行は別途リソースへのアクセス認可を取得する必要があります まとめ
  10. サボろう!と言いましたが、わたし自身はこんなことこれくらいの時間でできちゃう よ!と承認欲求満たすことを優先し、アピールしてしまったがゆえに、作業時間短縮が ばれてうまくサボることができませんでしたので、皆様におきましてはご注意ください。 ご清聴ありがとうございました!!!