Salesforceのフローで添付メールを送信する

この記事では、Salesforceのフローで添付メールを送信する手順についてご紹介します。

メール送信アクション

Spring '25のリリースで「メールを送信」アクションに「添付ファイルID」がパラメーターに追加されました。パラメーターには、ContentVersion.IdAttachment.IdDocument.Idのいずれかを指定します。

 

 

レコードに添付されたファイルの取得

ファイル (File)

ファイルのデータはContentVersionに保存されています。レコードとファイルの紐づきは、ContentDocumentLinkLinkedEntityIdに保存されています。

レコードに添付されたファイルの取得は、以下となります。

  1. ContentDocumentLinkよりContentDocumentIdを取得
    ContentDocumentLinkより、レコードId = LinkedEntityIdに一致するContentDocumentIdを取得
  2. ContentVersion取得
    ContentDocumentId = 取得したContentDocumentIdに一致するContentVersionを取得

 

 

 

添付ファイル (Attachment)

レコードと添付ファイルの紐づきは、AttachmentParentIdに保存されています。

 

フロー全体図

例として、ケース画面よりケースレコードに紐づくファイルを添付してメール送信するフローです。

 

 

メールの送信パターン

「メールを送信」アクションでのメール送信は2パターンあります。

a. 件名・本文・メールアドレスを指定(メールテンプレート・受信者Idは使用しない)

b. メールテンプレート・受信者Id(取引先責任者/個人取引先/リード)を指定

 

 

添付メール送信フロー(件名・本文・メールアドレスを指定)

件名・本文・メールアドレスにより添付メールを送信するフローを作成します。

トップ画面

確認メッセージを画面に表示します。

 

 

ケースレコード取得

ケースレコードを取得します。

 

 

ContentDocumentLink取得

LinkedEntityId = recordIdに一致するContentDocumentLinkを取得します。

 

 

ContentVersion取得

ContentDocumentLinkで取得したContentDocumentIdに一致するContentVersionを取得します。ここでは、ケースに紐づくファイルは1ファイルのみとします。添付ファイルが複数ある場合は、Titleが一致するなどのその他の条件が必要です。

ContentDocumentId = {!GetContentDocumentLink.ContentDocumentId}

 

 

メール本文変数作成

メール本文の変数を作成します。リソース種別は「テキストテンプレート」を選択します。本文は「プレーンテキストとして表示」を選択します。

 

 

添付メール送信

「メールを送信」アクションを呼び出します。

関連レコード ID: {!recordId}

件名: 見積り送付のご連絡

受信者アドレスリスト: {!GetCase.SuppliedEmail}  ※ケース.Webメール

送信者タイプ: OrgWideEmailAddress  ※ここでは、組織のアドレスを送信者に設定します。

送信者メールアドレス: 組織のアドレス  ※ここでは、組織のアドレスを送信者に設定します。

添付ファイル ID: {!GetContentVersion.Id}  ※ContentVersion.Id

本文: {!txttempBody}  ※テキストテンプレート変数

 

 

添付メール送信フロー(メールテンプレート・受信者Idを指定)

メールテンプレート、受信者Id(取引先責任者/個人取引先/リード)により添付メールを送信するフローを作成します。トップ画面~ContentVersion取得までは、前項のフローと同じです。

メールテンプレート取得

メールテンプレートを取得します。ここでは、見積用のメールテンプレートを取得します。

DeveloperName = SendQuoteEmail

 

 

添付メール送信

「メールを送信」アクションを呼び出します。

メールテンプレート ID: {!GetEmailTemplate.Id}  ※メールテンプレートId

関連レコード ID: {!recordId}

受信者 ID: {!GetCase.ContactId}  ※ケース.取引先責任者Id

送信時にメールを記録: {!$GlobalConstant.True}

送信者タイプ: OrgWideEmailAddress  ※ここでは、組織のアドレスを送信者に設定します。

送信者メールアドレス: 組織のアドレス  ※ここでは、組織のアドレスを送信者に設定します。

添付ファイル ID: {!GetContentVersion.Id}  ※ContentVersion.Id

 

 

参考

Salesforceヘルプ: フローコアアクション:「メールの送信」

Salesforceのレコードトリガーフローで見積りPDF作成+添付メール送信 – Office File Creator応用編 –

 

 

タイトルとURLをコピーしました