2020年4月20日

2020年4月20日 (月)

前回の投稿の補足としてフローボットを作成してみるときの注意点を共有しておきます。

Flow ボットは手動で開始できるようになっていますが、Run flow コマンドで開始するには次のお約束があります。

  • 既定の環境にフローを作る
  • 入力がないフロー、またはスケジュールに基づいて実行されるフローであること

このあたりのことは Flow ボットに "Learn more" コマンドを送信すれば教えてくれます。

Flow bot 1

それでは! ということで早速上記のルールにのっとって作成するわけですが、手っ取り早いのはモバイルのFlow ボタンにある「手動でフローをトリガーする」トリガーを使ったフローです。

これを利用するのですが、Flow ボタンのトリガーを使って作成しても、List flows にフローが出てこないケースがあるのです。

順を追って説明します。

Flow のトリガーを追加し、コードのプレビューをしてみましょう。

Flow bot 2

これを見ると次のように入力が空なのが分かります。

Flow bot 3

このままフローを構築すればいいわけですが、途中のアクションでフローの作成者情報を取得しましょう。例えば次のようにトリガーしたユーザー名を変数に格納してみます。

Flow bot 4

この状態で再び「手動でフローをトリガーします」のコードビューを確認してみましょう。次のように変化しているはずです。

Flow bot 5

つまり、トリガーしたユーザーの情報を取得するために入力パラメータが生成されてしまっているのです。

このようになると Flow bot からは呼び出せなくなります。

検証していて、非常に嵌ったところです。

皆さんも試すときには、何もパラメータのないトリガーに気を付けてフローを構築してみるようにしてください!

 

【研修】SharePointユーザーのための Power Apps & Power Automate入門

AdobeStock_194043476対象者は SharePoint サイトの基本的な操作や用語が理解できている方で、Power Automate や Power Apps を使った業務改善などを検討している方です。

Microsoft Teams には Flow アプリを追加できるようになっています(テナントによっては不可になっていることもあります)。

Flow-Bot

このアプリ内ではフローの作成や管理はもちろん、自分と対話できるフローボットが利用できます。このフローボット自体 Power Automate を使って作成できます。

利用イメージがしやすいように、これを使って SharePoint に格納されている機密保持契約書を手軽に先方に送付するというシナリオをご紹介しましょう。このフローではTeamsのコネクターを使っていますが、いずれも現時点ではプレビューであり、フロー構築時にはいくつかの課題もあります。

構築方法については今回は深入りしませんが、まずはどんなことができるのかを知ってもらえれば、何か業務改善のヒントになることもあるのではないかと思っています。

詳しくはビデオを使って説明していますのでご覧ください。

基本的な flow bot の作り方はまた別の記事で紹介します。

【研修】SharePointユーザーのための Power Apps & Power Automate入門

AdobeStock_194043476対象者は SharePoint サイトの基本的な操作や用語が理解できている方で、Power Automate や Power Apps を使った業務改善などを検討している方です。

Microsoft Teams 内の各チームには[ファイル]タブが用意されています。このファイルタブの実体は SharePoint サイトです。

もっというと、チーム内の[ファイル]タブは SharePoint サイト上にある「ドキュメント」ライブラリ内のチャネルごとに生成されるフォルダーが紐づいています。しかし、Teams の[ファイル]タブは、SharePoint の標準的な機能の一部が実装されていません。もちろん、あくまで[ファイル]タブ経由で利用するとという限定的な話であり、[ファイル]タブのコマンドバーから "SharePoint で開く" をクリックすることで、Webブラウザーから直接 SharePoint のライブラリにアクセスすれば、標準機能がフルに利用できます。

Teams 内から SharePoint サイトにアクセスする

※補足 : Teams がリリースされて間もないころはSharePoint が持つファイル管理機能のごく基本的な機能のみしか提供されていなかったのですが、数か月前からだいぶ SharePoint のオリジナルの持つ機能に近づいては来ています。

そのため、今回のブログのタイトルにあるような Power Automate を使った承認フローを実装するには、少し工夫が必要です。

Webブラウザーから直接SharePointサイトを利用するときには、格納しているファイルに対して承認フローを開始する方法としてはファイルのプロパティを確認し、例えば "下書き" から "公開" といった値に変更したときに承認フローを自動的に開始できるようにすることも少なくありません。しかし、[ファイル]タブでは現時点(2020/4/18)ではプロパティを編集できません。さらに、手動でワークフローを開始するにもフローを手動開始するコマンドメニューがありません。SharePoint 標準では本来はできることです。

そこで、[ファイル]タブを使ってフローを開始するのであれば、手動開始とプロパティの値をトリガーにすることはあきらめる必要があります。「ファイルを新規に作成したら」という自動的にフローが開始されるトリガーを使うのが妥当でしょう。

例えば、[ファイル] タブ内の特定のフォルダーにファイルを移動したらフローが開始されるというような実装を考えます。ただここで問題なのが、SharePoint コネクターのトリガーによってはサブフォルダーからはフローが開始されないものがあるということ。[ファイル]タブはサブフォルダーに紐づいているので、ここが重要なのです。

以上のことから、トリガーには次のいずれかを使うようにします。このトリガーはサブフォルダーでも動作します。

  • ファイルが作成されたとき(プロパティのみ)
  • ファイルが作成または変更されたとき(プロパティのみ)

自動開始を前提とするので、フローを起動したときに承認者を選択させることができないので、最初から承認者を固定で指定しておくか、上司の自動取得をするなど何かしら工夫をしておく必要があります。

ところで、トリガーを設定するときですが、SharePoint サイトとの関係が把握できていないとどのフォルダーをトリガ―指定すればよいのか迷うところです。チャネルとフォルダーの関係を図解しておくと次のようになります。トリガーを構成するときには、この図を念頭に置いたうえで、チーム名と同じ名前の SharePoint サイトのURLとフォルダーを指定するようにしましょう。

Teams 内のチャネルとSharePointフォルダーの関係

なお、チャネルを最初に作ったときに(もっと正確にいうと、チャネルを作成後に[ファイル]タブに初回アクセスしたときに生成) SharePoint側にフォルダーが作成されるのですが、フォルダー生成後はチャネル名を変更しても既存のフォルダ名は変更されません。そのため、現在 Teams 内のファイルタブには関連づいているフォルダー名が表示されるようになっているので、これを手掛かりにするとよいでしょう。

Teamsファイルタブにひもづくフォルダー名

以上を踏まえ、最もシンプルな承認フローを構築すると次のようになります。ここでは細かい設定については触れませんが、詳細は例えば、既存の承認用のテンプレートを使いトリガー部分を差し替えるなどしてみてください。

承認フロー

 

【研修】SharePointユーザーのための Power Apps & Power Automate入門

AdobeStock_194043476対象者は SharePoint サイトの基本的な操作や用語が理解できている方で、Power Automate や Power Apps を使った業務改善などを検討している方です。

SharePoint Onlineでは組織全体で使用する Office テンプレート ファイルを集中管理できます。これには「組織のアセットライブラリ(Organization Assets)」を利用します。

組織のアセット ライブラリについては以前、このブログでも紹介しています。

これを利用することで、デスクトップ版のOffice アプリケーションで新規にファイルを作成する際に、組織名とともにテンプレートが表示されるようになります。残念ながら Web版やモバイル版では利用できません。

組織のアセットライブラリ - Office Templates

このテンプレートは SharePoint Online の全体管理者が指定したSharePointのドキュメントライブラリから取得しています。つまり、デスクトップ版のOffice アプリケーションにサインインするときに指定したアカウントに紐づく SharePoint 上のアセットライブラリが自動的に取得されるということです。PC を入れ替えてもいつでも組織のテンプレートを利用できるということです。また、テンプレートの管理は一般的な SharePoint のドキュメント ライブラリであるため、ファイルのアップデートも簡単です。

なお、このライブラリにテンプレートをアップロードするときには、必ずテンプレートファイル形式でファイルを保存する必要があります。PowerPoint であれば *.potx です。

ところで、大事な設定方法ですが、管理者はテンプレートを格納するライブラリを組織のアセットライブラリとして指定するには次のPowerShellコマンドを実行する必要があります。-OrgAssetType を OfficeTemplateLibrary に設定するところがポイントですね。

#変数

$LibraryUrl="https://<アセットライブラリに指定したいライブラリのURL>"
$OrgAssetType="OfficeTemplateLibrary"
$CdnType="Private"

#組織のアセットライブラリの設定
Add-SPOOrgAssetsLibrary -LibraryUrl $LibraryUrl -OrgAssetType $OrgAssetType -CdnType $CdnType