Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
SharePointのコンテンツ作成を自動化してええ感じにサボろう!!!
Search
Naoya Okada
August 20, 2020
Technology
0
430
SharePointのコンテンツ作成を自動化してええ感じにサボろう!!!
第 1 回 Japan M365 Dev User Group 勉強会 LT1 の資料です。
Naoya Okada
August 20, 2020
Tweet
Share
More Decks by Naoya Okada
See All by Naoya Okada
SPFxとCDSWebAPIを使ってアプリ作ってみた!
7o83
0
380
Other Decks in Technology
See All in Technology
Kiro を用いたペアプロのススメ
taikis
4
1.9k
株式会社ビザスク_AI__Engineering_Summit_Tokyo_2025_登壇資料.pdf
eikohashiba
1
120
なぜ あなたはそんなに re:Invent に行くのか?
miu_crescent
PRO
0
210
AI駆動開発ライフサイクル(AI-DLC)の始め方
ryansbcho79
0
200
AI駆動開発の実践とその未来
eltociear
2
500
アラフォーおじさん、はじめてre:Inventに行く / A 40-Something Guy’s First re:Invent Adventure
kaminashi
0
160
Building Serverless AI Memory with Mastra × AWS
vvatanabe
0
610
Entity Framework Core におけるIN句クエリ最適化について
htkym
0
130
Bedrock AgentCore Memoryの新機能 (Episode) を試してみた / try Bedrock AgentCore Memory Episodic functionarity
hoshi7_n
2
1.9k
半年で、AIゼロ知識から AI中心開発組織の変革担当に至るまで
rfdnxbro
0
150
Claude Skillsの テスト業務での活用事例
moritamasami
1
110
日本の AI 開発と世界の潮流 / GenAI Development in Japan
hariby
1
500
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.9k
The browser strikes back
jonoalderson
0
220
Accessibility Awareness
sabderemane
0
24
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
340
Optimizing for Happiness
mojombo
379
70k
Writing Fast Ruby
sferik
630
62k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
350
Transcript
SharePoint のコンテンツ作成を 自動化してええ感じにサボろう!!! 第 1 回 Japan M365 Dev User
Group 勉強会 2020年8月19日 岡田 尚也
自己紹介 名前 岡田 尚也 Twitter @nanoka7o8 どんな人? 元SIerの営業でしたが、現在は SharePoint を中心に
Microsoft 365 関連のアプリを使っ た業務改善のお手伝いをお仕事にしています。 SharePoint や Power Platform に触れ、業種やスキルを問わず、誰もが自身でIT活用し ていけることに魅力を感じ、どうせ仕事するならその世界の実現を支援できる仕事に全 振りしたいなと思って、とりあえず会社辞めちゃった人です。
まだまだ、予算の付きにくい業務への活用でやってるやってる SharePoint のコンテンツ作成やってる? 画面や 処理 データ • いわゆるMicrosoft 365 ライセンスがあれば利用可能
• Azure Portal操作不要 • Microsoft 365 ライセンス以外が必要 • Azure Portalの操作が必要な場合も Azure Web Apps 等 Azure SQL Database 等 簡易アプリ 本格的なアプリ
1. 突っぱねてユーザ自身に作らせる 2. GUIでポチポチ作業代行して作ってあげる 3. PowerShell でコンテンツを作ってあげる 4. Power Automate
でコンテンツ作ってあげる 5. JavaScript でコンテンツ作ってあげる どうやって作ってる? (作らされてる?)
具体的なやり方は? SharePoint サイトにブラウザでアクセスし、開発者ツール(F12で開くもの)を表示 コンソールに 任意のJavaScript を張り付けて実行するだけでOK
実行する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
実行する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 });
デモ 本日はブラウザのコンソールをそのまま使用するのでは 味気ないので、SPFxでコンソールアプリを作ってみました
1. JavaScript と SharePoint REST API でいろんなことができる 2. コンソールで使えば(2013 で
Script Editor 使ってた人は特に)慣れ親しんだ JavaScript で 処理を実行できる 3. 作業や処理単位でコードをまとめて、自分好みの範囲で自動化しちゃおう 注意 •利用するエンドポイントによりますが、効果を及ぼすサイトの編集以上の権限があればだい たい実行可能です •Graph REST API の実行は別途リソースへのアクセス認可を取得する必要があります まとめ
サボろう!と言いましたが、わたし自身はこんなことこれくらいの時間でできちゃう よ!と承認欲求満たすことを優先し、アピールしてしまったがゆえに、作業時間短縮が ばれてうまくサボることができませんでしたので、皆様におきましてはご注意ください。 ご清聴ありがとうございました!!!