
今回は Google ドライブに関する自動工程を活用して、PDF ファイルを作成する方法について説明します。
Google ドライブに保存されている Google ドキュメント/スプレッドシート/スライドは、PDF 形式でエクスポートすることができます。この機能を利用して、Markdown で記述した内容を PDF として出力する方法を紹介します。
Markdown を記述するだけで、簡易な装飾を施した PDF ファイルを作成できます。
概要
今回ご紹介する仕組みは、ヒューマンタスクで入力した内容が PDF ファイルとして保存されるというものです。入力時には Markdown 記法を用いて、文章の構造や装飾を指定します。入力した内容は、以下の手順で PDF ファイルとしてファイル型データ項目に保存されます。
- Markdown テキストとして入力された内容を基にして、テキストファイルが作成される
- 作成されたファイルが、Google ドキュメントに変換されて Google ドライブにアップロードされる
- アップロードされたファイルが PDF ファイルとしてダウンロードされ、データ項目に保存される
以上の手順が3つの自動工程によりそれぞれ行われます。

各自動工程について
Google ドライブに関するビルトイン自動工程は、多数用意されています。
今回は機能が追加された[Google ドライブ: ファイルアップロード]と、新しく追加された[Google ドライブ: Google Workspace ファイル PDF エクスポート]、さらに文字型のデータをファイルに変換する[テキストファイル生成]の3種を使用します。
まず、各工程について簡単に説明します。
テキストファイル生成

参照:[テキストファイル生成]
任意のテキストファイルを生成し、ファイル型データ項目に格納します。保存する際にUTF-8 や UTF-16BE (BOM あり) といった文字コードのタイプを選択指定できます。また、保存する際のファイルタイプも text/html や text/markdown などが選択指定できます 。
Google ドライブ: ファイルアップロード

「ワークフローから Google ドライブを活用する」でもご紹介した自動工程です。
上記記事でご紹介した機能に加えて、Google ドライブにアップロードする際、Google ドキュメント/スプレッドシート/スライド のいずれかに変換するように指定できるようになりました。
なお、「Google アカウント連携の設定」につきましても上記記事をご参照ください。
Google ドライブ: Google Workspace ファイル PDF エクスポート

参照:[Google ドライブ: Google Workspace ファイル PDF エクスポート]
指定した Google Workspace ファイル(Google ドキュメント、スプレッドシート、スライド等)を PDF 形式でダウンロードします。一度に複数のダウンロードが可能です。
サンプルアプリ
これらの自動工程を使って作成したサンプルアプリがこちらです。

アプリの具体的な設定を、設定例として紹介します。
データ項目の設定
データ項目は以下のように設定します。
| データ項目名 | データ型 | フィールド名 | 必須 | 「Markdown入力」工程 | 「PDF確認」工程 | 説明 |
|---|---|---|---|---|---|---|
| 件名 | – | – | – | 編集可 | 表示のみ | プロセスの件名です。 |
| ドキュメント原稿 | 文字型 (Markdown) | q_document_source | ○ | 編集可 | 表示のみ | PDF の内容の元となる Markdown テキストを入力します。 |
| File ID | 文字型 (複数行) | q_file_id | – | 非表示 | 表示のみ | Google ドライブにアップロードしたファイルの ID を保存します。 |
| Upload File | ファイル型 | q_up_file | – | 非表示 | 表示のみ | [テキストファイル生成]工程で作成されたファイルを保存します。 |
| Download file | ファイル型 | q_down_file | – | 非表示 | 表示のみ | ダウンロードした PDF ファイルを保存します |
| Error | 文字型 (複数行) | q_error | – | 非表示 | 表示のみ | [Googleドライブ: ファイルアップロード]工程でエラーが発生した場合、エラーレスポンスを保存します |
[テキストファイル生成]工程 の設定
まず、「原稿入力」工程で PDF の元となる Markdown テキストを入力します。次の「原稿ファイル変換」工程で、Markdown テキストの入力内容を基にテキストファイルとして作成します。
「原稿ファイル変換」工程の設定項目は以下のとおりです。
| 項目名 | 必須 | 説明 |
|---|---|---|
| C1: テキストファイルを保存するファイル型データ項目 * | ○ | 作成されたテキストファイルを保存するファイル型データ項目を指定します。今回は「Upload File」を指定します。 |
| C2: 保存時に他のファイルを削除する | – | 作成されたファイルで置き換えるか、既存ファイルに追加で保存するかを指定します。今回は「オン」にします。 |
| C3: 保存ファイル名 | ○ | 作成されるファイルの名前を指定します。今回は「markdown-#{processInstanceId}」としましょう。「#{processInstanceId}」の部分にはプロセスIDが入るため、このアプリで作った他のファイルと重複することがなくなります。 |
| C4: テキストファイルの内容 | ○ | この項目に入力された内容がファイルになります。今回は文字型(Markdown)「ドキュメント原稿 」を参照する式(#{#q_document_source)を指定します。 |
| C5: 保存する際の文字コード | – | 生成するファイルの文字コードを指定します。今回は「UTF-8」を指定します。 |
| C6: 保存する際のファイルタイプ | – | 生成するファイルの MIME-type を指定します。今回は[text-markdown]を指定します。 |
[Googleドライブ: ファイルアップロード]工程 の設定
次に、「ファイルアップロード」工程で、指定したファイルを Google ドライブのフォルダにアップロードします。
「ファイルアップロード」工程の設定項目は以下のとおりです。
| 項目名 | 必須 | 説明 |
|---|---|---|
| Google ドライブに接続するユーザ | ○ | Google ドライブにどのユーザでファイルをアップロードするか指定します。指定するユーザは Google ドライブとの連携が設定されている必要があります。 |
| アップロードするファイルが保存されているデータ項目 | ○ | アップロードするファイルの入ったデータ項目を指定します。今回は「Upload File」を指定します。 |
| ファイルをアップロードするフォルダの ID | – | Google ドライブのどのフォルダにファイルをアップロードするかをフォルダ ID で指定します 。空にした場合はマイドライブのルートにアップロードされます。 |
| ファイルの変換 | – | ファイルを Google ドライブにアップロードする際、Google ドキュメント/スプレッドシート/スライドのいずれかに変換するか、あるいは変換しない(そのままアップロード)かを指定します。今回は[Google ドキュメント]を指定します。 |
| ファイル ID を保存するデータ項目 | – | アップロードしたファイルの ID の保存先となるデータ項目を指定します。今回は「File ID」を指定します。 |
| 表示用 URL を保存するデータ項目 | – | アップロードしたファイルの表示用 URL の保存先となるデータ項目を指定します。今回は使用しません。 |
| ダウンロード用 URL を保存するデータ項目 | – | アップロードしたファイルのダウンロード用 URL の保存先となるデータ項目を指定します。今回は使用しません。 |
| エラー内容を保存するデータ項目 | – | [エラーが発生したとき、そのエラーレスポンスの保存先となるデータ項目を指定します。今回は「Error」を指定します。 |
[Google ドライブ: Google Workspace ファイル PDF エクスポート]工程 の設定
「PDF エクスポート」工程 で Google ドライブに保存されているファイルを、PDF 形式でダウンロードします。
「PDF エクスポート」工程の設定項目は以下のとおりです。
| 項目名 | 必須 | 説明 |
|---|---|---|
| C1: サービスアカウント設定 | ○ | [OAuth2 JWT ベアラーフロー]で作成した HTTP 認証設定名を指定します。 |
| C2: ダウンロードするファイルの ID | ○ | ダウンロードするファイル ID が保存されているデータ項目を指定します。今回は「File ID」を指定します。 |
| C3: ダウンロードファイルを追加保存するデータ項目 | ○ | ダウンロードしたファイルを保存するデータ項目を指定します。今回は「Download file」を指定します。 |
ファイルのダウンロードが完了すれば、「PDF 確認」工程で PDF ファイルを確認します。
動作確認
すべての設定が完了したら、[デバッグ実行]で動作を確認しましょう。
先頭の開始イベントから[デバッグ実行]を行います。開始したプロセスで、文字型データ項目「ドキュメント原稿」に Markdown テキストを入力します。入力するテキストの体裁はプレビュー画面で確認できます。
Markdown テキストの記述方法は、以下のドキュメントを参考にしてください。

入力が完了したら、工程を終了して自動処理の完了を待ちます。「PDF 確認」工程が割り当てられれば、「Download file」データ項目の添付ファイルを確認します。
自動処理工程がエラーとなった場合は以下を確認します
- [テキストファイル生成]工程/「Google ドライブ: Google Workspace ファイル PDF エクスポート」工程
- プロセス詳細ページの管理者モードで[自動処理ログ]
- [Google ドライブ: ファイルアップロード]
- 「Error」データ項目への出力内容
テスト用 Markdown テキストサンプル
テスト用の Markdown テキストサンプルを掲載します。記述内容と生成された PDF を参考にしてください。
サンプル Markdown (クリックで開く)
# 商品カタログ
## 1. 主力商品ラインナップ
### :rice_ball: おにぎり
- **梅干しおにぎり**
伝統の味わい。厳選された梅干しを使用した定番の一品。
*価格*: $00A5150
*カロリー*: 180 kcal
- **鮭おにぎり**
北海道産の鮭を贅沢に使ったおにぎり。
*価格*: $00A5180
*カロリー*: 200 kcal
- **昆布おにぎり**
煮昆布の深い旨みが詰まった人気商品。
*価格*: $00A5170
*カロリー*: 190 kcal
---
## 2. 季節限定メニュー
### :cherry_blossom: 春限定
- **桜海老と菜の花おにぎり**
桜の季節を感じる特別な一品。
*価格*: $00A5200
### :maple_leaf: 秋限定
- **栗ときのこの炊き込みおにぎり**
秋の香りを楽しむ贅沢な味わい。
*価格*: $00A5220
---
## 3. サイドメニュー
- **味噌汁**
具材たっぷりの温かい味噌汁。
*価格*: $00A5100
- **卵焼き**
ほんのり甘く仕上げた自家製卵焼き。
*価格*: $00A5120
---
## 4. お得なセット
- **おにぎりセット**
おにぎり2個 + 味噌汁
*価格*: $00A5400
- **スペシャルセット**
おにぎり2個 + 味噌汁 + 卵焼き
*価格*: $00A5500
---
## 5. 店舗情報
- **店舗名**: おにぎり屋
- **所在地**: 東京都渋谷区123-456
- **営業時間**: 10:00 - 20:00
- **定休日**: 毎週水曜日
[公式サイトはこちら](https://onigiriya.example.com)
---
ダウンロードされた PDF

