SingleEmailMessage のメソッド
名前空間
使用方法
SingleEmailMessage は Email を拡張し、そのメソッドのすべてを継承します。すべての基本メール (Email クラス) メソッドは、SingleEmailMessage オブジェクトでも使用できます。SingleEmailMessage で送信されるメールは、送信側組織の 1 日の単一メール送信の制限に含まれます。
メールプロパティは読み取りと書き込みが可能です。各プロパティには対応する setter および getter メソッドがあります。たとえば、toAddresses() プロパティは、setToAddresses() および getToAddresses() メソッドに相当します。このドキュメントで説明されているのは setter メソッドのみです。ただし、getTemplateName() メソッドには同等の setter メソッドはありません。setTemplateId() を使用してテンプレート名を指定します。
SingleEmailMessage のメソッド
SingleEmailMessage のメソッドは次のとおりです。すべてインスタンス���ソッドです。すべての基本メール (Email クラス) メソッドは、SingleEmailMessage オブジェクトでも使用できます。これらのメソッドは、「Email クラス (基本メールメソッド)」で説明されています。
getTemplateName()
署名
public STRING getTemplateName()
戻り値
型: String
使用方法
getTemplateName() と同等の setter メソッドはありません。メールがテンプレートを使用していない場合、getTemplateName() は何も返しません。setTemplateId() を使用している場合に getTemplateName() をコールすると、テンプレート ID に関連付けられたテンプレート名が返されます。
setBccAddresses(bccAddresses)
署名
public Void setBccAddresses(String[] bccAddresses)
パラメーター
- bccAddresses
- 型: String[]
戻り値
型: Void
使用方法
- toAddresses
- ccAddresses
- bccAddresses
- targetObjectId
BCC コンプライアンスオプションが組織レベルで設定されている場合、ユーザーは BCC アドレスを標準のメッセージに追加することができません。次のエラーコードが返されます: BCC_NOT_ALLOWED_IF_BCC_ COMPLIANCE_ENABLED。BCC コンプライアンスについては、Salesforce の担当者にお問い合わせください。
setCcAddresses(ccAddresses)
署名
public Void setCcAddresses(String[] ccAddresses)
パラメーター
- ccAddresses
- 型: String[]
戻り値
型: Void
使用方法
- toAddresses
- ccAddresses
- bccAddresses
- targetObjectId
setCharset(characterSet)
署名
public Void setCharset(String characterSet)
パラメーター
- characterSet
- 型: String
戻り値
型: Void
setDocumentAttachments(documentIds)
署名
public Void setDocumentAttachments(ID[] documentIds)
パラメーター
- documentIds
- 型: ID[]
戻り値
型: Void
使用方法
添付文書の合計が 10 MB を超えない限り、いくつでも文書を追加できます。
setEntityAttachments(ids)
署名
public void setEntityAttachments(List<String> ids)
戻り値
型: void
setFileAttachments(fileNames)
署名
public Void setFileAttachments(EmailFileAttachment[] fileNames)
パラメーター
- fileNames
- 型: Messaging.EmailFileAttachment[]
戻り値
型: Void
使用方法
添付ファイルの合計が 10 MB を超えない限り、いくつでもファイルを追加できます。
setHtmlBody(htmlBody)
署名
public Void setHtmlBody(String htmlBody)
パラメーター
- htmlBody
- 型: String
戻り値
型: Void
setInReplyTo(parentMessageIds)
署名
public Void setInReplyTo(String parentMessageIds)
パラメーター
- parentMessageIds
- 型: String
- 1 つ以上の親メールのメッセージ ID が含まれます。
戻り値
型: Void
setOptOutPolicy(emailOptOutPolicy)
署名
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)
署名
public Void setPlainTextBody(String plainTextBody)
パラメーター
- plainTextBody
- 型: String
戻り値
型: Void
setOrgWideEmailAddressId(emailAddressId)
署名
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)
署名
public Void setReferences(String references)
パラメーター
- references
- 型: String
戻り値
型: Void
setSubject(subject)
署名
public Void setSubject(String subject)
パラメーター
- subject
- 型: String
戻り値
型: Void
setTargetObjectId(targetObjectId)
署名
public Void setTargetObjectId(ID targetObjectId)
パラメーター
- targetObjectId
- 型: ID
戻り値
型: Void
setTemplateId(templateId)
署名
public Void setTemplateId(ID templateId)
パラメーター
- templateId
- 型: ID
戻り値
型: Void
setToAddresses(toAddresses)
署名
public Void setToAddresses(String[] toAddresses)
パラメーター
- toAddresses
- 型: String[]
戻り値
型: Void
使用方法
- toAddresses
- ccAddresses
- bccAddresses
- targetObjectId
setTreatBodiesAsTemplate(treatAsTemplate)
署名
public void setTreatBodiesAsTemplate(Boolean treatAsTemplate)
パラメーター
- treatAsTemplate
- 型: Boolean
戻り値
型: void
setTreatTargetObjectAsRecipient(treatAsRecipient)
署名
public void setTreatTargetObjectAsRecipient(Boolean treatAsRecipient)
パラメーター
- treatAsRecipient
- 型: Boolean
戻り値
型: void
使用方法
setWhatId(whatId)
署名
public Void setWhatId(ID whatId)
パラメーター
- whatId
- 型: ID
戻り値
型: Void
使用方法
値は、次の型のいずれかです。
- Account
- Asset
- Campaign
- Case
- Contract
- Opportunity
- Order
- Product
- Solution
- Custom