![見出し画像](https://assets.st-note.com/production/uploads/images/141668442/rectangle_large_type_2_8ce9ee01348fd1e51edb565bc98deee4.jpeg?width=1200)
PowerAutomateを活用!wikiのコンテンツ○○を保ってみた
当コンテンツは職場でOfiice365が導入されている方向けに書いています✍️
みなさんの職場ではwikiを使っていますか?
有名なwikiのツールですと、
Confluenceがありますよね。
Markdown記法を採用しているので、
記事の編集が手軽に行えます。
Markdown記法とはこんな感じのものです ↓
# 見出し1
## 見出し2
私はConfluenceが大好きなのですが、
ライセンス料がかかるという理由で職場に導入してもらえませんでした。
悲しすぎる😭
なぜこんなにwikiに執着しているかと言いますと、いろいろなシーンで活用できるんですよね。
新規参画メンバーの教育資料として活用✨
過去の障害を書き残し、再発防止で活用✨
頻度の高い作業のメモとして使える✨
などなど、とても便利です!
が、私が配属された職場には、
wikiが1つも存在していなかったのです😭
さらに、
前任者と入れ替わりで参画したので、
引き継ぎ期間はゼロでした😱
そのため、
必要な情報は他のチームの人に質問するか、
Github等の構成管理にあるドキュメントを見るしかありませんでした💦
このままでは、
"未来に来る人が同じ運命を辿ってしまう!"
そう考えて、
wikiを新たに作る決断をしました!
PowerAutomateの実装なども細かく書いてますので、是非最後までお読みください✨
それでは、本編です!
1. コンセプト決め
まずはコンセプト決めから検討しはじめました!
Confluence以外のツールを使うなら、
そのツールでしかできないようなことをやりたいと考えました。
Confluenceが使えないことを、
想像以上に引きずっていたようです笑
Confluenceを使っていた当時を思い返してみることにしました🤔
そういえば、
記事の信憑性について困ったことがありました
wikiの記事を書いてくれる人は多いのですが、
メンテナンスをする人って少ないんですよね。
そのため、
半年や数年前の記事だと信憑性に欠けてしまい、
本当に記事の通りに作業しても問題ないのかが不安になったことがありました。
インターネットで調べたところ、
Confluenceではページを開いた時に、
古い旨のメッセージを表示することはできるそうなのですが、利用者への通知機能はないようでした。
なるほど、ならば!
古くなった記事を自動通知し、
コンテンツ鮮度を保つ仕組みを構築しよう✨
このコンセプトで進めることにしました。
なんだかワクワクする取り組みです😆
次の章はツール選定になります!
2. ツール選定
さて、どのように通知しようか🤔
インターネットで調査をしていると、
とあるツールが目に止まりました👀
PowerAutomate
なになに…?
クラウド上で動かすことのできる自動化ツールで、Office365関連のツールと同期ができる…と🤔
なんだか面白そうです✨
職場ではOffice365が導入されていたので、
利用することができました。
有料版(desktop版)と無料版があるようですが、残念ながら職場で有料版は禁止されていたので使えませんでした😅
早速、試しに作ってみたのがこちらです ↓
当番表ローテーションと通知をPowerAutomateで自動化
上記の記事ではExcelとTeamsに同期させて、
やりたいことを実現することができました!
感覚的にイケそうな気がしたので突き進みます🏃
では、本題のwikiのツール選定です!
インターネットで調べた結果、
一番使いやすそうなOneNoteを選びました!
OneNoteとは、
Office365のメモが得意なツールです。
セクションという項目で情報の種類を変更できて、右側のページから記事を選択することで開くことができます。
![](https://assets.st-note.com/img/1716510782001-a9Q7LBCyil.jpg?width=1200)
そして、OneNoteの最大のメリットは、
メールアドレスさえ知っていれば共有可能ということです。
ライセンスありきのツールでは、
利用するためにアカウント作成が必要となり、
逆に離任の際には削除する必要があります。
そのため、管理者が必要になるケースが多いです。
管理者は、みんなやりたがらないので揉めるんですよね💦
Office365が導入されている職場では全員にメールアドレスが割り当てられるのが基本なので、簡単に共有することができます!
3. Office365のツールを使う思わぬメリット
ここの職場では、
お客様(親会社)・運用・開発の3チームが存在していました。
私が所属するチーム以外は、
各チームごとに独自にナレッジ集を保持しているとのことでした。
そこで閃きます😎
チーム横断型のwikiにすれば良いのでは?!
3チームが所属するグループメールアドレスが存在していたので、wikiの参照権限をこのアドレスに紐づけました。
全員が閲覧できました!😆
ということで、
wikiはチーム横断型へ進化することになりました!
もちろん、
関係ないチームにとっては無駄な情報だったり、
セキュリティ上連携NGな情報もありますので、
裏では自チーム用と横断用の両方を作りました。
ただ、内容は一緒になりますので、
当コンテンツではチーム横断型のwikiについて記載いたします😊
4. PowerAutomateで実装
ついに実装です😆
実装と言っても、
プログラムをガリガリ書くことはしません。
PowerAutomateは、
フローを繋ぎ合わせるだけで作れてしまうんです。
まずは、設計をしていきます。
お客様と相談し、最終更新日時が3ヶ月前の記事に対して通知を行うことにしました。
![](https://assets.st-note.com/img/1716529657013-MCzX4WZPrw.png?width=1200)
前半部分の初期設定のフロー図です。
![](https://assets.st-note.com/img/1716518429418-VsN4P3PUG3.png?width=1200)
01.スケジュール設定
スケジュールは毎日10:30に実行することにしました。
![](https://assets.st-note.com/img/1716518864052-qILumRzKS1.jpg)
02.Teamsの通知先取得
Teamsの通知先はタグを設定します!
![](https://assets.st-note.com/img/1716519009114-JxT8AMuej4.jpg)
タグというのは、Teamsで自由に設定できるメンションの集まりです!
Teamsのタブから簡単に作れますので、
通知したいメンバーで作成してください😊
![](https://assets.st-note.com/img/1716519043161-8mZjIc0Dyv.jpg?width=1200)
03.説明文の送信フラグ
後で使う重要なフラグです。
初期値falseで用意します。
![](https://assets.st-note.com/img/1716519180534-xTuXh25QKI.jpg)
04.3ヶ月前の日付取得
ここから関数が出てきます。
関数と聞くと身構えてしまいますが、PowerAutomateには丁寧なヘルプが付いていて、
初心者でもできるようにサポート万全なのでご安心ください😊
日付の取得をするには、
タイムゾーンを意識する必要があります。
まずは、
utcNow関数でUTCの当日日付を取得します。
その後、convertTimeZone関数でタイムゾーンを東京の日付に変換してあげれば日本の現在時刻を取得できます!✨
これを"当日"という変数に設定します。
![](https://assets.st-note.com/img/1716519472771-4BGNOflUVd.png)
次に後述で使う変数”3ヶ月前の日付”を用意し、
"時間からの減算"という機能を使って、"当日"から3ヶ月を引き算してあげます。
![](https://assets.st-note.com/img/1716519786690-J6cWL3DK3r.jpg)
引き算が終わった後は、変数に格納します。
日付のみが欲しいので上記結果の先頭から10桁のみ取得するようにします。
"YYYY-MM-DD"のようになります。
もしも10桁以外を取得すると時刻等まで取得することになります。
![](https://assets.st-note.com/img/1716520051230-eYMcAZykr1.jpg)
さて、一番の肝となるOneNoteの最終更新日の判定ですが、これが苦戦しました💦
というのも、OneNoteは自動保存となっています。
誰かが記事の閲覧中に1文字でも入力した場合、
すぐ保存されてしまい、最終更新日に反映されてしまいます💦
しかし、検討を重ね、
対応策を編み出せました!
どのような対応策かと言うと、こちらです!
いただいたサポートは人の笑顔のために利用させていただきます。