この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

SingleEmailMessage のメソッド

単一メールメッセージの送信用メソッドが含まれます。

名前空間

Messaging

使用方法

SingleEmailMessage は Email を拡張し、そのメソッドのすべてを継承します。すべての基本メール (Email クラス) メソッドは、SingleEmailMessage オブジェクトでも使用できます。SingleEmailMessage で送信されるメールは、送信側組織の 1 日の単一メール送信の制限に含まれます。

メールプロパティは読み取りと書き込みが可能です。各プロパティには対応する setter および getter メソッドがあります。たとえば、toAddresses() プロパティは、setToAddresses() および getToAddresses() メソッドに相当します。このドキュメントで説明されているのは setter メソッドのみです。ただし、getTemplateName() メソッドには同等の setter メソッドはありません。setTemplateId() を使用してテンプレート名を指定します。

SingleEmailMessage のコンストラクター

SingleEmailMessage のコンストラクターは次のとおりです。

SingleEmailMessage()

Messaging.SingleEmailMessage クラスの新しいインスタンスを作成します。

署名

public SingleEmailMessage()

SingleEmailMessage のメソッド

SingleEmailMessage のメソッドは次のとおりです。すべてインスタンス���ソッドです。すべての基本メール (Email クラス) メソッドは、SingleEmailMessage オブジェクトでも使用できます。これらのメソッドは、「Email クラス (基本メールメソッド)」で説明されています。

getTemplateName()

メールの作成に使用されるテンプレートの名前。

署名

public STRING getTemplateName()

戻り値

型: String

使用方法

getTemplateName() と同等の setter メソッドはありません。メールがテンプレートを使用していない場合、getTemplateName() は何も返しません。setTemplateId() を使用している場合に getTemplateName() をコールすると、テンプレート ID に関連付けられたテンプレート名が返されます。

setBccAddresses(bccAddresses)

省略可能。ブラインドカーボンコピー (BCC) アドレス、またはメールの送信先となる取引先責任者、リード、ユーザーのオブジェクト ID のリスト。この項目の最大サイズは 4,000 バイトです。メールあたりの toAddressesccAddresses、および bccAddresses の最大合計数は、150 です。これら 3 つの項目のすべての受信者は、Apex または API を使用して送信されるメールの制限に含まれます。

署名

public Void setBccAddresses(String[] bccAddresses)

パラメーター

bccAddresses
型: String[]

戻り値

型: Void

使用方法

すべてのメールで、次のいずれかの項目の少なくとも 1 つに受信者の値を割り当てる必要があります。
  • toAddresses
  • ccAddresses
  • bccAddresses
  • targetObjectId

BCC コンプライアンスオプションが組織レベルで設定されている場合、ユーザーは BCC アドレスを標準のメッセージに追加することができません。次のエラーコードが返されます: BCC_NOT_ALLOWED_IF_BCC_ COMPLIANCE_​ENABLED。BCC コンプライアンスについては、Salesforce の担当者にお問い合わせください。

setCcAddresses(ccAddresses)

省略可能。カーボンコピー (CC) アドレス、またはメールの送信先となる取引先責任者、リード、ユーザーのオブジェクト ID のリスト。この項目の最大サイズは 4,000 バイトです。メールあたりの toAddressesccAddresses、および bccAddresses の最大合計数は、150 です。これら 3 つの項目のすべての受信者は、Apex または API を使用して送信されるメールの制限に含まれます。

署名

public Void setCcAddresses(String[] ccAddresses)

パラメーター

ccAddresses
型: String[]

戻り値

型: Void

使用方法

すべてのメールで、次のいずれかの項目の少なくとも 1 つに受信者の値を割り当てる必要があります。
  • toAddresses
  • ccAddresses
  • bccAddresses
  • targetObjectId

setCharset(characterSet)

省略可能。メール用の文字セット。この値が null の場合、ユーザーのデフォルト値が使われます。

署名

public Void setCharset(String characterSet)

パラメーター

characterSet
型: String

戻り値

型: Void

setDocumentAttachments(documentIds)

(廃止。代わりに setEntityAttachments() を使用してください)。省略可能。メールに添付する各ドキュメントオブジェクトの ID を含むリスト。

署名

public Void setDocumentAttachments(ID[] documentIds)

パラメーター

documentIds
型: ID[]

戻り値

型: Void

使用方法

添付文書の合計が 10 MB を超えない限り、いくつでも文書を追加できます。

setEntityAttachments(ids)

省略可能。メールに添付する DocumentContentVersion、または Attachment 項目の ID の配列。

署名

public void setEntityAttachments(List<String> ids)

パラメーター

ids
型: List<String>

戻り値

型: void

setFileAttachments(fileNames)

省略可能。メールに添付するバイナリファイルとテキストファイルのファイル名を含むリスト。

署名

public Void setFileAttachments(EmailFileAttachment[] fileNames)

パラメーター

fileNames
型: Messaging.EmailFileAttachment[]

戻り値

型: Void

使用方法

添付ファイルの合計が 10 MB を超えない限り、いくつでもファイルを追加できます。

setHtmlBody(htmlBody)

省略可能。メールの HTML 版 (送信者による指定)。組織に関連付けられた仕様に従って、値は符号化されます。setTemplateIdsetHtmlBody、または setPlainTextBody の値を指定します。または、setHtmlBody および setPlainTextBody の両方を定義できます。

署名

public Void setHtmlBody(String htmlBody)

パラメーター

htmlBody
型: String

戻り値

型: Void

setInReplyTo(parentMessageIds)

送信メールの In-Reply-To 項目 (省略可能) を設定します。この項目は、このメールが返信となるメール (親メール) を示します。

署名

public Void setInReplyTo(String parentMessageIds)

パラメーター

parentMessageIds
型: String
1 つ以上の親メールのメッセージ ID が含まれます。

戻り値

型: Void

setOptOutPolicy(emailOptOutPolicy)

省略可能。受信者をメールアドレスではなく ID で追加し、[メール送信除外] オプションが設定されている場合、このメソッドによって sendEmail() コールの動作が決まります。受信者をメールアドレスで追加した場合、それらの受信者は、送信除外設定がオフになり、常にメールを受信します。

署名

public void setOptOutPolicy(String emailOptOutPolicy)

パラメーター

emailOptOutPolicy
型: String
emailOptOutPolicy パラメーターの可能な値は次のとおりです。
  • SEND (デフォルト) — メールはすべての受信者に送信されます。受信者の [メール送信除外] 設定は無���されます。[メールのプライバシー設定を適用] 設定は無視されます。
  • FILTER[メール送信除外] オプションが設定された受信者にはメールは送信されません。それ以外の受信者にはメールが送信されます。[メールのプライバシー設定を適用] 設定は無視されます。
  • REJECT[メール送信除外] オプションが設定された受信者がいる場合、sendEmail() がエラーを発生させ、メールは送信されません。[メールのプライバシー設定を適用] の設定が利用されます。これは、データプライバシーレコードの個人オブジェクトに基づいた選択であるためです。いずれかの受信者が [取引しない]、[処理しない]、または [この個人を除外] を選択している場合、sendEmail() によってエラーが発生し、メールは送信されません。

戻り値

型: void

この例では、送信除外設定を適用してメールを送信する方法を示します。受信者は、その ID で指定されます。FILTER オプションにより、メール送信を除外していない受信者にのみメールが送信されます。この例では、メールプロパティのドット表記を使用しています (set メソッドの使用と同等)。

1Messaging.SingleEmailMessage message = new Messaging.SingleEmailMessage();
2// Set recipients to two contact IDs.
3// Replace IDs with valid record IDs in your org.
4message.toAddresses = new String[] { '003D000000QDexS', '003D000000QDfW5' };
5message.optOutPolicy = 'FILTER';
6message.subject = 'Opt Out Test Message';
7message.plainTextBody = 'This is the message body.';
8Messaging.SingleEmailMessage[] messages = 
9    new List<Messaging.SingleEmailMessage> {message};
10         Messaging.SendEmailResult[] results = Messaging.sendEmail(messages);
11if (results[0].success) {
12    System.debug('The email was sent successfully.');
13} else {
14    System.debug('The email failed to send: '
15          + results[0].errors[0].message);
16}

setPlainTextBody(plainTextBody)

省略可能。メールのテキスト版 (送信者による指定)。setTemplateIdsetHtmlBody、または setPlainTextBody の値を指定します。または、setHtmlBody および setPlainTextBody の両方を定義できます。

署名

public Void setPlainTextBody(String plainTextBody)

パラメーター

plainTextBody
型: String

戻り値

型: Void

setOrgWideEmailAddressId(emailAddressId)

省略可能。送信メールに関連する組織の共有アドレスの ID。Apex を使用してゲストユーザーからメールを送信する場合は、送信者を組織のメールアドレスに設定します。そうしないと、メールがブロックされます。setSenderDisplayName 項目がすでに設定されている場合、DisplayName 項目は設定できません。

署名

public Void setOrgWideEmailAddressId(ID emailAddressId)

パラメーター

emailAddressId
型: ID

使用方法

組織のメールアドレスを作成すると、その確認のために確認メールが届きます。URL から ID をコピーし、Messaging.SingleEmailMessage のインスタンスで setOrgWideEmailAddressId(Id) メソッドを使用します。

ID のハードコードを避けるには、組織のメールアドレスを作成してから、そのアドレスを照会します。

1OrgWideEmailAddress[] owea = [select Id from OrgWideEmailAddress where Address = 'doNotReply@<somedomain>.com'];
2Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
3if ( owea.size() > 0 ) {
4    mail.setOrgWideEmailAddressId(owea.get(0).Id);
5}

戻り値

型: Void

setReferences(references)

省略可能。送信メールの References 項目。メールスレッドを示します。親メールの References 項目およびメッセージ ID、In-Reply-To 項目のリストが含まれます。

署名

public Void setReferences(String references)

パラメーター

references
型: String

戻り値

型: Void

setSubject(subject)

省略可能。メールの件名行。メールテンプレートを使用している場合、この値はテンプレートの件名で上書きされます。

署名

public Void setSubject(String subject)

パラメーター

subject
型: String

戻り値

型: Void

setTargetObjectId(targetObjectId)

テンプレートを使用している場合は必須ですが、使用していない場合は省略可能です。メールを送信する取引先責任者、リード、ユーザーの ID。指定する ID によりコンテキストが設定され、テンプレートの差し込み項目に正しいデータが含まれていることを保証します。

署名

public Void setTargetObjectId(ID targetObjectId)

パラメーター

targetObjectId
型: ID

戻り値

型: Void

使用方法

[メール送信除外] オプションが選択されている ID やレコードを指定しないでください。

すべてのメールで、次のいずれかの項目の少なくとも 1 つに受信者の値を割り当てる必要があります。
  • toAddresses
  • ccAddresses
  • bccAddresses
  • targetObjectId

setTemplateId(templateId)

テンプレートを使用している場合は必須ですが、使用していない場合は省略可能です。メールの作成に使用されるテンプレートの ID。

署名

public Void setTemplateId(ID templateId)

パラメーター

templateId
型: ID

戻り値

型: Void

setToAddresses(toAddresses)

省略可能。メールアドレス、またはメールの送信先となる取引先責任者、リード、ユーザーのオブジェクト ID のリスト。この項目の最大サイズは 4,000 バイトです。メールあたりの toAddressesccAddresses、および bccAddresses の最大合計数は、150 です。これら 3 つの項目のすべての受信者は、Apex または API を使用して送信されるメールの制限に含まれます。

署名

public Void setToAddresses(String[] toAddresses)

パラメーター

toAddresses
型: String[]

戻り値

型: Void

使用方法

すべてのメールで、次のいずれかの項目の少なくとも 1 つに受信者の値を割り当てる必要があります。
  • toAddresses
  • ccAddresses
  • bccAddresses
  • targetObjectId

setTreatBodiesAsTemplate(treatAsTemplate)

省略可能。true に設定すると、メールの件名、プレーンテキスト、および HTML テキスト本文がテンプレートデータとして扱われます。差し込み項目は、renderEmailTemplate メソッドを使用して解決されます。デフォルトは false です。

署名

public void setTreatBodiesAsTemplate(Boolean treatAsTemplate)

パラメーター

treatAsTemplate
型: Boolean

戻り値

型: void

setTreatTargetObjectAsRecipient(treatAsRecipient)

省略可能。true に設定すると、targetObjectId (取引先責任者、リード、またはユーザー) はメールの受信者になります。false に設定すると、targetObjectId は、テンプレート表示用の WhoId 項目として提供されますが、メールの受信者にはなりません。デフォルトは true です。

署名

public void setTreatTargetObjectAsRecipient(Boolean treatAsRecipient)

パラメーター

treatAsRecipient
型: Boolean

戻り値

型: void

使用方法

メールにテンプレートが使用されるか、対象オブジェクトが受信者であるかに関係なく、メールメッセージメソッドを使用して TO、CC、および BCC アドレスを設定できます。

メモ

setWhatId(whatId)

targetObjectId 項目に取引先責任者を指定する場合、whatId (省略可能) も指定することができます。これにより、テンプレート内の差し込み項目が適切なデータを含んでいることが確実に保証されるようになります。

署名

public Void setWhatId(ID whatId)

パラメーター

whatId
型: ID

戻り値

型: Void

使用方法

値は、次の型のいずれかです。

  • Account
  • Asset
  • Campaign
  • Case
  • Contract
  • Opportunity
  • Order
  • Product
  • Solution
  • Custom