メインコンテンツへスキップ

Power Automateで受信メールをすべて監査対応PDFアーカイブに変換する:Outlookの7ステップワークフロー

· 1分で読める
SEO and Content Writer

メールからPDFへのアーカイブ これは、新しいOutlookメールを受信するたびに実行されるPower Automateフローです。メッセージ本文とすべての添付ファイルをPDFに変換し、タイムスタンプ付きの統合PDFにマージし、結果をDropboxに書き込んで長期的なコンプライアンス保持に利用します。アクションは7つ。コードは不要です。メールごとに1つのファイルが作成され、本文が最初に、次に添付ファイルが順番に処理されます。出力ファイル名は merge-YYYYMMDD-HHmmss.pdf そのため、すべてのアーカイブエントリは一意にソート可能です。

監査チーム、記録管理責任者、コンプライアンス担当者は、Exchange の保持ポリシーをクリアし、改ざん防止機能付きで検索可能な形式で保存されたメール証拠を必要としています。Outlook のネイティブエクスポートは手動で、ファイルごとに処理されるため、添付ファイルが別のファイルに分割されてしまいます。このチュートリアルでは、コード不要の代替手段を構築します。受信したすべてのメールが、元のファイルとともに自動的に単一の統合 PDF ファイルに変換されます。 .eml 添付ファイルは法的保管のためOutlookに残されていますが、アーカイブされたPDFファイルは正式な記録コピーとして扱われます。

流れの概要
1. When a new email arrives (V3)
Outlook trigger filtered by To address. Include Attachments Yes, Only with Attachments Yes.
2. Initialize variable
Name email, Type Array. Holds every PDF binary in order.
3. Convert to PDF Body
PDF4me action. Reads triggerOutputs body/body (the HTML body), returns the body as a PDF page 1.
4. Append to array (email body)
Pushes base64ToBinary on the converted body PDF onto the email array. Becomes page 1 of the final archive.
5. Apply to each attachment
Loops triggerOutputs body/attachments. Inside, Convert to PDF then Append to array with base64ToBinary on $content.
6. Merge multiple PDFs
PDF4me action. Body/docContent is the email array. Output File Name Email Attachment Merge Output.pdf.
7. Create file
Dropbox /blog data/merge blog template/output. File Name concat(merge-, formatDateTime(utcNow(), yyyyMMdd-HHmmss), .pdf).
要約版

Outlook トリガーは、監視対象のアドレスへの受信メールごとに起動します。 メール PDF4meを開く。 PDFに変換 HTML本文を最初にPDFに変換します(1ページ目になります)。 それぞれに適用する PDF4meは、添付ファイルを一つずつ走査し、Aspose Words / Cells / Slidesレンダラーを使用してそれぞれをPDFに変換し、順番に追加します。 複数のPDFファイルを結合する 配列全体を消費し、1つの統合されたPDFを出力します。Dropboxはそれを次のように書き込みます。 merge-20260611-103323.pdf本体が先、添付ファイルは順番通り、タイムスタンプ付き、アーカイブ品質。

なぜ?という問いに対する質疑応答​

アーカイブ用に.emlファイルを保存する代わりに、なぜPDFに変換するのですか? EMLファイルは、Outlookまたは互換性のあるリーダーで開く必要があり、監査担当者が検索できないバイナリストリームに添付ファイルが埋め込まれており、送信者のメールクライアントのフォーマットに依存します。一方、単一の統合PDFファイルは、普遍的に読み取り可能で、OCRに対応しており、添付ファイルも含まれており、ほとんどの法的証拠開示やSOX/GDPR監査で求められる保存フォーマットに準拠しています。

なぜ本文と添付ファイルを一つの配列変数にまとめるのか? 複数の PDF ファイルを結合するアクションでは、順序付けされた単一のコレクションが必要です。一度初期化し、ステップ 4 で本文をプッシュし、ステップ 5 で変換された各添付ファイルをプッシュすると、配列はアーカイブに必要なドキュメントの順序 (送信順序で本文が最初、次に添付ファイル) と完全に一致します。2 つの別々の配列を使用すると、後でそれらを連結するためだけに Compose アクションを実行する必要が生じます。

なぜ base64tobinal 毎回のプッシュで? PDF4me Convert to PDF は出力を base64 文字列として返します。 $contentOutlook の添付ファイルは base64 形式で届きます コンテンツバイト複数の PDF ファイルを結合するには、base64 文字列ではなくバイナリ バッファが必要です。 base64ToBinary(...) この呼び出しは両方のソースを橋渡ししますが、異なるプロパティ名を指定します。変換とマージアクションはスキップされ、「無効なコンテンツ」というエラーが発生します。

なぜタイムスタンプ付きの出力名を使うのか? 同じアドレスに同じ1分以内に送信された2通のメールは、同じファイル名で競合することになる。 concat('merge-', formatDateTime(utcNow(), 'yyyyMMdd-HHmmss'), '.pdf') 次のような秒精度のUTC名を生成します merge-20260611-103323.pdf辞書式順序で並べ替え可能、瞬時に読み取れる、構造的に独自性がある。監査担当者はこの形式を高く評価している。


得られるもの​

入力: 監視対象のOutlookアドレス(ここ)に届く受信メール [email protected])に 1 つ以上の添付ファイルがあります。このチュートリアルでは、短いメッセージ本文(「こんにちは、お元気ですか…」)と 2 つの DOCX 添付ファイル(3Page.docx、 Docx_2Pages.docx) 出力: 単一の統合アーカイブ PDF /blog data/merge blog template/output/名付けられた merge-YYYYMMDD-HHmmss.pdf1ページ目は本文です。2ページ目以降は、Aspose Wordsでレンダリングされた添付ファイルが添付ファイルの順序で表示されます。

受信したメール​

Gmailのメールビューには、test宛てのメッセージが表示され、本文には「こんにちは、お元気ですか。現在のプロジェクトの進捗状況をお知らせするためにメールを書いています。参考のために関連ファイルも添付しました。よろしくお願いいたします。Test Dev」と表示されています。添付ファイルはWord文書のサムネイルとして3Page.docxとDocx_2Pages.docxの2つが表示され、「Scanned by Gmail」の通知が表示されています。

2回実行後のアーカイブフォルダ​

Dropboxアーカイブフォルダには、merge-20260611-103323.pdf (165.43 KB) と merge-20260611-102949.pdf (171.37 KB) がリストされています。それぞれ、フローが実行されたUTCタイムスタンプに基づいて命名されており、送信時刻で辞書順にソート可能です。

統合アーカイブPDFの1ページ目​

merge-20260611-103323.pdf のプレビューでは、2ページが並べて表示されています。左ページは変換されたメール本文です。こんにちは。お元気でお過ごしでしょうか。現在のプロジェクトの進捗状況をお知らせするためにメールを書いています。参考のために関連ファイルも添付しています。よろしくお願いいたします。テスト開発部。右ページは、3Page.docx の最初のページで、Page 1 とラベル付けされています。

必要なもの​

  • パワーオートマタ。 Power Automateを開くプレミアムコネクタ付きのプラン(PDF4me Connectはプレミアムプランです)。
  • PDF4me APIキー。 APIキーを取得してくださいPDF4meアクションを初めて追加する際に接続してください。
  • Office 365 Outlook新しいメールが届いたときに V3 トリガーを使用して添付ファイルの contentBytes を読み取る場合。コネクタが認証できる受信トレイであればどれでも動作します。
  • Dropbox (またはSharePoint、OneDrive、Google Drive)。アーカイブの保存先として指定してください。
  • 添付ファイル付きのテストメールこのチュートリアルでは、2つのDOCXサンプルを使用します。 3ページ.docx そして Docx_2Pages.docx。

まず、サンプルデータと期待される出力結果を入手してください。 両方の DOCX ファイルをダウンロードし、監視対象のアドレスに簡単なメールに添付して、フローを公開します。最初の実行では、 merge-YYYYMMDD-HHmmss.pdf これはリンク先のサンプルと全く同じです(タイムスタンプだけが異なります)。


フローの概要​

  1. Outlook: 新しいメールが届いたとき (V3) (トリガー)。
  2. 変数を初期化する 名前 email (配列)。
  3. PDF4me: PDFへの変換(本文)HTML本文を読み込み、PDFを返します。
  4. 配列変数に追加 と base64ToBinary 改造された車体上で。
  5. それぞれに適用する の上 triggerOutputs()?['body/attachments']:
    • PDF4me: PDFに変換 添付ファイル。
    • 配列変数に追加 と base64ToBinary 変換されたPDFファイル上で。
  6. PDF4me:複数のPDFファイルを1つのPDFファイルに結合する配列を入力として、1つのPDFを出力します。
  7. Dropbox: ファイルの作成ファイル名式はUTCタイムスタンプを付与します。

フローの概要全体​

Power Automate フローキャンバスには、上から順に 7 つのアクションが表示されています: 新しいメールが届いたとき V3、変数の初期化、PDF への変換本文、配列変数 (メール本文) への追加、PDF への変換と配列変数への追加を含む各項目への適用、複数の PDF ファイルを 1 つの PDF ファイルにマージ、ファイルの作成

7つのアクション。PDF4meは、本文の変換、各添付ファイルの変換、すべての結合という3つのフローに分かれています。

Outlookの添付ファイルフィールド(参考)​

展望 新しいメールが届いたとき V3 トリガーは、コンバーターにマッピングするこれらの添付ファイルフィールドを公開します。

分野タイプソース式何を運ぶか
name弦items('Apply_to_each')?['name']拡張子を含む元のファイル名(Invoice.docx)
contentBytesbase64文字列items('Apply_to_each')?['contentBytes']添付ファイルのバイナリコンテンツ(base64エンコード済み)
contentType弦items('Apply_to_each')?['contentType']MIMEタイプ(application/vnd.openxmlformats-officedocument.wordprocessingml.document)
size整数items('Apply_to_each')?['size']バイト単位、大きな添付ファイルをフィルタリングするのに便利
isInlineブール値items('Apply_to_each')?['isInline']本文に埋め込まれたインライン画像の場合に当てはまります。通常はフィルタリングされます。

PDF4me Convert to PDF はファイル拡張子を読み取りません name 適切なレンダラーを選択する(.docx → 言葉を攻撃する、 .xlsx → Aspose Cells、 .pptx → Asposeのスライド、画像、PDFはネイティブに処理されます。


ステップ1:Outlookの受信トレイで受信メールを監視するにはどうすればよいですか?​

これまでの流れ: トリガーのみ。

  1. で パワーオートマタ クリック 作成する、 選ぶ 自動化されたクラウドフロー。
  2. フローに名前を付けます(例: Email Archive to PDF)、 選ぶ Office 365 Outlook: 新しいメールが届いたとき (V3) トリガーとしてクリック 作成する。
  3. 接続する あなたのOffice 365メールボックス。
  4. 拡大する 詳細パラメータ そしてクリック すべて表示 フィルタリングオプションを表示します。
  5. 設定する:
    • に: [email protected] (このアドレス宛のメールのみがフローをトリガーするようにフィルタリングする)
    • 添付ファイルを含める: Yes
    • 添付ファイルのみ: Yes

トリガー設定​

Power Automate Office 365 Outlook 新しいメールが届いたとき V3 トリガー 詳細パラメーターが展開され、test@ynoox.ch に設定するには、添付ファイルを含める はい、添付ファイルのみ はい、Office 365 Outlook に接続済み と表示されます。

ヒント。 添付ファイルのみ はい は、すべての内部通知、カレンダー招待、または自動返信でフローが発火するのを防ぎます。 に 専用のアーカイブエイリアスでフィルタリングします (例: [email protected]実際にアーカイブしたいメールだけを受信する、クリーンな受信アドレスを作成します。


ステップ2:変数emailを初期化する​

これまでの流れ: トリガーと変数の初期化。

空の配列を開いて、本文のPDFファイルとすべての添付ファイルのPDFファイルを取得します。

  1. クリック + 新しいステップ、 選ぶ 変数を初期化する。
  2. 設定する:
    • 名前: email
    • タイプ: Array
    • 価値: 空欄のままにしてください

変数設定を初期化する​

Power Automate の変数初期化アクションは、名前が email、タイプが Array、値フィールドが空に設定されています。

ステップ3:PDF4meはどのようにしてメール本文をPDFに変換するのですか?​

これまでの流れ: トリガー、変数の初期化、PDF本文への変換。

Outlook トリガーはメッセージ本文を HTML として出力します body/bodyPDF4me Convert to PDFはHTMLを直接読み込むため、変換処理全体が1回のアクション呼び出しで完了します。

  1. クリック + 新しいステップ、 検索 PDF4me、 選ぶ PDFに変換。
  2. 名前を変更する アクション PDF本文に変換 そのため、ステップ5の「PDFに変換」アクションには、後で独自の分かりやすい名前が付けられます。
  3. 接続する PDF4meにAPIキーで接続します(初回のみ)。
  4. 設定する:
    • ファイルの内容 (表現、クリック) fx): triggerOutputs()?['body/body']
    • ファイル名: email-body.html

PDF本文構成に変換​

Power Automate PDF4me の「PDF 本文に変換」アクションで、ファイルコンテンツがトリガー「本文」トークン(式 triggerOutputs body/body)に設定され、ファイル名が email-body.html に設定されています。PDF4me Connect に接続済みです。

の .html ファイル名の拡張子は、PDF4me が使用するレンダラーを指定します。 .docx、 .xlsx、 .png、 または .jpg 同様に簡単に、同じ操作で全てを処理できます。


ステップ4:配列変数(メール本文)に追加する​

これまでの流れ: トリガー、変数の初期化、PDF本文への変換、追加(メール本文)。

変換された本文PDFを押して email 配列をページ 1 として表示します。

  1. クリック + 新しいステップ、 選ぶ 配列変数に追加。
  2. 名前を変更する アクション 配列変数(メール本文)に追加する 分かりやすくするために。
  3. 設定する:
    • 名前: email
    • 価値 (表現): base64ToBinary(body('Convert_to_PDF_Body')?['$content'])

メール本文設定の追加​

Power Automate の配列変数 (メール本文) に追加アクションで、名前を email、値を式 base64ToBinary に設定し、本文の引用符を Convert_to_PDF_Body に設定し、引用符を閉じ、括弧を閉じ、疑問符をドル記号で囲み、内容を閉じ、角括弧を式エディターに表示します。

ステップ5:すべての添付ファイルをループ処理して、それぞれを変換するにはどうすればよいですか?​

これまでの流れ: トリガー + 変数の初期化 + PDF本文への変換 + 追加(メール本文) + 各項目に適用。

すべての添付ファイルをループ処理し、それぞれをPDFに変換して順番に追加することで、最終的なマージ時に添付ファイルの順序が尊重されるようにします。

ステップ5a:それぞれに適用する(ソースを選択)​

  1. クリック + 新しいステップ、 選ぶ それぞれに適用する。
  2. 設定する:
    • 前の手順から出力を選択します (表現): triggerOutputs()?['body/attachments']
Power Automate の各アクションに適用する。前のステップからの出力の選択を Attachments トークンに設定し、解決済みの式 triggerOutputs body/attachments をツールチップに表示する。

ステップ5b:PDFに変換する(添付ファイル)​

  1. ループの内側をクリック アクションを追加する、 選ぶ PDF4me: PDFに変換。
  2. 設定する:
    • ファイルの内容 (表現): base64ToBinary(items('Apply_to_each')?['contentBytes'])
    • ファイル名 (動的コンテンツ):選択 名前 各現在のアイテムに適用する
Power Automateの「PDFに変換」アクション(「各項目に適用」内)、ファイルコンテンツはbase64ToBinary項目Apply_to_each contentBytesに設定、ファイル名は現在の添付ファイルの名前トークンに設定、式エディターが開きbase64ToBinary項目Apply_to_each contentBytesを表示

の 名前 実行時に動的コンテンツトークンは次のように解決されます。 items('Apply_to_each')?['name']そのため、各添付ファイルは元のファイル名を使用して変換されます。PDF4meは拡張子を読み取って適切なレンダラーを選択します。

Power Automate の PDF ファイルへの変換 名前フィールドのツールチップには、解決された式項目 Apply_to_each の名前、現在の添付ファイルに適用される名前トークンが表示されます。

ステップ5c:配列変数に(変換された添付ファイルを)追加する​

  1. 以下、同じループ内でPDFに変換する。 アクションを追加する、 選ぶ 配列変数に追加。
  2. 設定する:
    • 名前: email
    • 価値 (表現): base64ToBinary(body('Convert_to_PDF')?['$content'])
Power Automate 配列変数に追加、各項目に適用、名前メール、値が base64ToBinary 本体に設定、Convert_to_PDF ドルコンテンツが式エディターに表示されます

その2つの物件名は重要です。 Outlook 添付ファイルのバイトは コンテンツバイトPDF4me Convert to PDF出力は存続しています $contentどちらもbase64形式です。式を貼り付ける際は名前を間違えないように注意してください。そうすればループは正常に動作します。


ステップ6:複数のPDFファイルを1つのアーカイブPDFに結合する​

これまでの流れ: トリガー、変数の初期化、PDF本文への変換、追加(本文)、各項目への適用、複数のPDFの結合。

全体 email 配列(本文PDFが最初、次に添付ファイルのPDFが添付ファイルの順序で)は、単一のマージ呼び出しに渡されます。

  1. 「各ループに適用」の下にある + 新しいステップ、 検索 PDF4me、 選ぶ 複数のPDFファイルを1つのPDFファイルに結合する。
  2. 設定する:
    • 本文/ドキュメントコンテンツ: 選ぶ email 変数トークン
    • 出力ファイル名: Email Attachment Merge Output.pdf

マージアクションの設定​

Power Automate PDF4me 複数の PDF ファイルを 1 つの PDF ファイルに結合します。Body/docContent は email 変数に設定し、出力ファイル名は Email Attachment Merge Output.pdf とします。

ステップ7:アーカイブにタイムスタンプ付きのファイル名を使用する理由とは?​

これまでの流れ: トリガー、変数の初期化、PDF本文への変換、追加、各項目への適用、結合、ファイルの作成。

統合されたPDFファイルをUTCタイムスタンプ付きのファイル名でDropboxに書き込むことで、アーカイブの各エントリが常に新しい、並べ替え可能なファイルになります。同じアドレスに同じ秒内に2通のメールが送信されることは非常にまれなので、メッセージIDを埋め込む必要なく、効果的な一意性を確保できます。

  1. クリック + 新しいステップ、 選ぶ Dropbox: ファイルの作成。
  2. 設定する:
    • フォルダパス: /blog data/merge blog template/output
    • ファイル名 (表現、クリック) fx): concat('merge-', formatDateTime(utcNow(), 'yyyyMMdd-HHmmss'), '.pdf')
    • ファイルの内容: 選ぶ ファイルの内容 複数のPDFを結合するアクションからのトークン

ファイル名式​

Power Automate Dropbox ファイルの作成アクション フォルダーパス /blog data/merge blog template/output、ファイル名式 concat merge dash comma formatDateTime utcNow comma yyyyMMdd dash HHmmss comma dot pdf が式エディターに表示されます

ファイルコンテンツをマッピングした最終アクション​

Power Automate Dropbox ファイル作成アクション (フォルダー パス /blog data/merge blog template/output、ファイル名 concat 式、ファイル コンテンツ トークン (複数の PDF ファイルを 1 つの PDF ファイルにマージするアクションから)

受信トレイのメール量が多い場合のヒント。 1分間に10通以上のメールを受信するメールボックスの場合、メッセージの一意性を保証するために、メッセージのインターネットメッセージIDの短いハッシュ値を付加してください。 concat('merge-', formatDateTime(utcNow(), 'yyyyMMdd-HHmmss'), '-', substring(triggerOutputs()?['body/internetMessageId'], 0, 8), '.pdf')監査証跡は依然として読み取り可能であり、衝突は発生しない。


フローを実行して検証する​

  1. 保存 右上の流れ。
  2. 監視対象のアドレスに、添付ファイル付きのメールを送信する。
  3. 開ける 実行履歴トリガーは数秒以内に作動するはずです。
  4. Dropboxを開く /blog data/merge blog template/output/. という名前のファイル merge-YYYYMMDD-HHmmss.pdf ありますか。
  5. PDFファイルを開いてください。1ページ目は本文です。2ページ目以降は、添付ファイルが添付順に完全に表示されます。

実際に何を作ったのですか? 一切の手間をかけずにメールをアーカイブできるパイプライン。添付ファイル付きのメッセージはすべて、本文を先頭に添付ファイルを順番に並べた統合PDFファイルに変換され、タイムスタンプが付与されるため重複することなく、記録管理チームや監査担当者が検索できる共有フォルダに保存されます。添付ファイルが2つでも20個でも、同じ手順で処理できます。


再構築せずに追加できる一般的なバリエーション​

添付ファイルを種類別に絞り込む
ラップしてPDFに変換 状態 テスト endsWith(toLower(items('Apply_to_each')?['name']), '.pdf')メールの署名とインライン画像添付ファイルをスキップします。
1ページ目にメタデータをスタンプする
ステップ3の前に、HTMLプリアンブルを作成します。 作曲する送信者、件名、受信日。1ページ目には検索可能なヘッダーが追加されました。
アーカイブ前にデジタル署名
PDF4meを挿入 デジタル署名(PDF) ステップ 6 とステップ 7 の間。アーカイブされた PDF には、X.509 証明書で署名され、即座に監査証跡が作成されます。 誰がいつ何をアーカイブした。
長期保存用のPDF/Aファイル
PDF4meを追加する PDF/A を作成する コンプライアンスに準拠 PDF/A-2b 合併後。アーカイブされたPDFファイルはISO 19005に準拠しており、法的保管および規制当局への提出に適しています。

メールアーカイブ:PDFとEMLの比較​

側面統合PDF(このフロー)生のEMLエクスポート
普遍的に読みやすいはい、どのPDFリーダーでも大丈夫ですいいえ、Outlookまたは互換性のあるクライアントが必要です
コンテンツで検索はい、OCR対応です限定品、ボディのみ
添付ファイルが含まれていますはい、ページとしてインラインではい、バイナリストリームとして
監査フォーマットの一致SOX、GDPR、HIPAA、FINRAに準拠しばしば拒否される
改ざん防止機能付きはい、デジタルサインが追加された場合どのエディタでも簡単に編集できます
ファイルサイズ拡大表示(すべてのページを表示)より小さい(レンダリングなし)
顧客維持パイプラインメール1通につきPDF1枚、簡単にリンクできますEMLにはコンテナ形式が必要です

よくある質問​

個人用受信トレイではなく、共有メールボックスでこのフローをトリガーするにはどうすればよいですか?​

交換する 新しいメールが届いたとき(V3) トリガー 共有メールボックスに新しいメールが届いたとき(V2)メールボックスアドレスを 元の郵便受けの住所 フィールド。フローの残りの部分は同一のままで、すべてのアタッチメント参照とボディ式は同じように解決されます。

メールに添付ファイルがない場合はどうすればいいですか?​

トリガーは 添付ファイルのみ はい フィルターは、本文のみのメールではフローが実行されないようにします。本文のみのメールもアーカイブしたい場合は、そのフィルターを「いいえ」に設定し、「各項目に適用」ループを「条件: 特定の条件を満たす場合にのみ実行」で囲みます。 length(triggerOutputs()?['body/attachments']) 0より大きい値です。配列内の本文PDFが1つだけでもマージ処理は正常に動作し、1ページのアーカイブが生成されます。

アーカイブの1ページ目に、送信者、件名、受信日を含めるにはどうすればよいですか?​

ステップ3の前に、 作曲する HTMLのプレアンブル付きアクション:

<h2>From: @{triggerOutputs()?['body/from']}</h2>
<h2>Subject: @{triggerOutputs()?['body/subject']}</h2>
<p>Received: @{triggerOutputs()?['body/receivedDateTime']}</p>
<hr>
@{triggerOutputs()?['body/body']}

次に、手順3の「ファイルコンテンツ」を「Compose」の出力先に設定します。これで、ページ1に検索可能なヘッダーメタデータが含まれるようになります。

これは、インライン画像を含むHTMLメールでも機能しますか?​

はい。PDF4me Convert to PDFはインラインHTMLをレンダリングします。 <img src="cid:..."> 参照と埋め込みbase64画像。Outlookの body/body インラインコンテンツを含む完全なHTMLが含まれているため、レンダリングされたPDFは、受信者が見たものと同じ視覚的な忠実度を維持します。

処理の実行にはどれくらい時間がかかりますか?​

1ページのDOCXファイルの場合、添付ファイル1つあたり約10~15秒、トリガーと最終アップロードに5~10秒かかります。添付ファイルが2つあるメールは、通常、エンドツーエンドで35~45秒で完了します。Power Automateの「各ファイルに適用」は、デフォルトでは順番に実行され、出力が順序付けられます。順序が重要ではなく、速度が必要な場合は、設定してください。 並行性制御 ループの設定で20に設定します。


トラブルシューティング​

「無効なコンテンツ」を含むマージ操作エラー

配列に追加する項目の1つ 価値 式はラップされていません base64ToBinary(...)各プッシュ(本文と添付ファイル)には変換が必要です。両方の追加アクションを再度開き、式エディタに切り替えて、式が正しいことを確認します。 base64ToBinary(body('Convert_to_PDF_Body')?['$content']) そして base64ToBinary(body('Convert_to_PDF')?['$content']) 原文のまま。

1ページ目が空白または欠落しています

「PDF本文に変換」アクションで実際のHTMLが受信されませんでした。トリガーを確認してください。 添付ファイルを含める はい(それがなければ、体は時々空っぽで到着します)そして ファイルの内容 解決する triggerOutputs()?['body/body']、 ない body/bodyPreview。

添付ファイルが間違った順序で表示される

デフォルト それぞれに適用する 並列実行されるため、追加順序が乱れる可能性があります。ループを開きます 設定 そして設定する 並行性制御 並列性の度合い 1ループは順次実行され、添付ファイルは配列の順序で配置されます。

アーカイブフォルダ内でファイルが競合する

タイムスタンプの解像度は1秒です。受信トレイの容量が大きい場合は、インターネットメッセージIDハッシュを追加してください。 concat('merge-', formatDateTime(utcNow(), 'yyyyMMdd-HHmmss'), '-', substring(triggerOutputs()?['body/internetMessageId'], 0, 8), '.pdf')。


次のステップ​

同じ7つのステップ(トリガー、配列の初期化、本文の変換、ループ変換と追加、マージ、タイムスタンプ付き保存)は、「メールと添付ファイルを1つのPDFにまとめる」自動化処理に有効です。これを実行すれば、受信メッセージはすべて自動的に検索可能、ソート可能、監査対応のアーカイブエントリになります。