You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Salesforce Apex Toolkit根据收件人语言设置DocuSign邮件语言

问题解决:Salesforce Apex Toolkit设置DocuSign收件人邮件语言不生效

核心问题原因

你的代码最后调用了myEnvelope.withEmail()设置信封级的邮件主题和正文,这会直接覆盖收件人级别的EmailSettings配置,导致你为收件人单独设置的德语语言不生效。信封级的邮件设置优先级高于单个收件人的设置,因此需要移除这一步。

具体修复步骤

  • 移除信封级的邮件设置:删除myEnvelope = myEnvelope.withEmail('Email Subject', 'Email Text');这一行代码,让收件人自己的EmailSettings生效。
  • 确认语言代码正确性:确保使用DocuSign支持的ISO 639-1两位小写语言代码(例如'de'对应德语,'fr'对应法语等),语言名称仅作为辅助标识,核心生效的是两位代码。
  • 验证收件人关联:确认myContact是目标收件人,且你期望的语言设置已正确映射到EmailSettings中。

修正后的Apex代码示例

dfsle.Envelope myEnvelope = dfsle.EnvelopeService.getEmptyEnvelope(
    new dfsle.Entity(opportunityId)); 

Contact myContact = opportunityIdToContactIdMap.get(opportunityId);

// 创建收件人
dfsle.Recipient myRecipient = dfsle.Recipient.fromSource(
    myContact.Name,
    myContact.Email,
    null,
    'Signer',
    new dfsle.Entity(myContact.Id));

// 设置收件人专属邮件语言和内容
dfsle.Recipient.EmailSettings emailSettings =
        new dfsle.Recipient.EmailSettings(
            'de', // 德语ISO标准语言代码
            'German',
            '德语邮件主题', // 替换为实际德语主题
            '德语邮件正文内容' // 替换为实际德语正文
        );

myRecipient = myRecipient.withEmailSettings(emailSettings);
myEnvelope = myEnvelope.withRecipients(new List<dfsle.Recipient> { myRecipient });

// 加载模板和文档
String templateId = 'template ID';
dfsle.UUID myTemplateId = dfsle.UUID.parse(templateId);

dfsle.Document myDocument = dfsle.Document.fromTemplate(
    myTemplateId,
    'Opportunity Document');

Id myFileId = contentVersionId;
dfsle.Document myPdfDocument = dfsle.DocumentService.getDocuments(ContentVersion.getSObjectType(), new Set<Id> { myFileId }).get(0);
myDocument = myDocument.withReplacement(myPdfDocument); // 修正原代码中缺失的赋值操作

myEnvelope = myEnvelope.withDocuments(new List<dfsle.Document> { myDocument });

// 移除信封级邮件设置,避免覆盖收件人配置
// myEnvelope = myEnvelope.withEmail('Email Subject', 'Email Text');

// 发送信封
myEnvelope = dfsle.EnvelopeService.sendEnvelope(
    myEnvelope, 
    true);

额外检查点

  • 确认DocuSign与Salesforce的集成配置中,未开启全局强制覆盖邮件语言的设置。
  • 如果使用DocuSign模板,检查模板是否设置了固定邮件语言,若有则需调整模板配置(收件人级设置通常优先级高于模板默认设置)。

内容的提问来源于stack exchange,提问作者user2018

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 04:42:36