【Power Apps】PCFコントロールでMermaid記法をプレビューする方法
この記事を読んでわかること
- Power AppsでMermaid記法をプレビューする方法
- PCFコントロールのインポート手順
こんなことができます

前提知識について
本記事では、Mermaid記法そのものの解説やPCFコントロールの基礎的な説明は省略します。
「Mermaid記法って何?」「PCFコントロールって何?」という方は、以下を先にご覧ください。
Mermaid公式サイト テキストベースでフローチャートやシーケンス図を描ける記法です。 https://mermaid.js.org/
キャンバス アプリのコード コンポーネント — Microsoft Learn
今回使うPCFコントロール
今回使うのは、Iona Varga氏が作成した 「Mermaid JS」 というPCFコントロールです。ページ下部のDownloadからGit Hub レポジトリにアクセスできます。
PCF Gallery — Mermaid JS https://pcf.gallery/mermaid-js/
実際にやってみた
ここからは実際の手順を説明していきます。やることは大きく3ステップです。
- 環境でPCFコントロールを有効化する
- ソリューションをインポートする
- キャンバスアプリに追加する

事前準備 — 環境でPCFコントロールを有効化
まず、PCFコントロール(コードコンポーネント)をキャンバスアプリで使えるようにする必要があります。
- Power Platform管理センターにアクセス
- 左メニューから「環境」を選択し、対象の環境をクリック
- 「設定」→「機能」を開く
- 「キャンバス アプリの Power Apps Component Framework」をオンにする
- 「保存」をクリック

ソリューションをインポートする
次に、Mermaid JSコントロールのソリューションファイルをダウンロードしてインポートします。
1. GitHubからソリューションZIPをダウンロード
ソリューションファイル(.zip)をダウンロードします。


2. Power Appsにソリューションをインポート
- make.powerapps.com にアクセス
- 左メニューから「ソリューション」を選択
- 上部の「ソリューションのインポート」をクリック
- 「参照」からダウンロードしたZIPファイルを選択
- 「次へ」→「インポート」をクリック

インポートが完了すると

キャンバスアプリに追加する
いよいよ、キャンバスアプリにMermaidコントロールを追加します。
1. コードコンポーネントをインポート
- キャンバスアプリを新規作成、または既存のアプリを編集モードで開く
- 左ペインの「+」(追加)をクリック
- 「コンポーネントをさらに取得」を選択
- 「コード」タブを開く
- 一覧から mermaids コードコンポーネントを選択し、「インポート」をクリック

2. アプリにコントロールを配置
- 左ペインの「+」→「コードコンポーネント」セクションを展開
- mermaids コントロールをクリックしてスクリーンに追加
- テキスト入力コントロール(
TextInput)も一つ追加する

3. Mermaid記法をプレビューしてみる
Mermaidコントロールのプロパティに、Mermaid記法のテキストを渡します。
たとえば、テキスト入力コントロール(TextInput1)の値をMermaidコントロールに紐付ける場合は、Mermaidコントロールの該当プロパティに以下のように設定します。
TextInput1.Text

テキスト入力コントロールに以下のようなMermaid記法を入力してみてください。
graph TD
A[開始] --> B{条件分岐}
B -->|Yes| C[処理A]
B -->|No| D[処理B]
C --> E[終了]
D --> Eすると、テキストがそのままフローチャートとして描画されます!

初めて動いたときはちょっと感動しました。テキストを書き換えるとリアルタイムで図が更新されるので、「テキストだけでダイアグラムが描ける」というMermaidの良さをそのままPower Appsの中で体験できます。
まとめ
今回は、PCFコントロール「Mermaid JS」を使って、Power Apps内でMermaid記法のダイアグラムをプレビュー表示する方法を紹介しました。
手順をまとめると、以下の3ステップだけです。
- 環境でPCFコントロールを有効化
- ソリューションをインポート
- キャンバスアプリにコントロールを追加してテキストを紐付け
コードは一切書いていません。 ソリューションをインポートして、プロパティを設定するだけ。市民開発者でもすぐに試せるのが嬉しいポイントです。
Power Appsのアプリ内で、データソースをMermaid記法に変換してプレビュー、なんて使い方もできそうです。活用の幅はかなり広いので、アイデア次第でいろいろ面白いことができそうです。
皆さんもぜひ試してみてはいかがでしょうか。
(最近、Mermaid記法にハマっています。)
