代码之家  ›  专栏  ›  技术社区  ›  Greg Hess Jr

使用DocuSign for Salesforce自定义按钮将发件人映射为第一个收件人

  •  0
  • Greg Hess Jr  · 技术社区  · 6 年前

    我有一个非常简单的自定义按钮,它的目标如下。

    • 收件人1是发件人。(亦称Salesforce用户按下按钮)
    • 收件人2是客户。
      • 按钮代码如下:

        !RequireScript(“/apex/dsfs_uuu-docuSign_-javascript”)
        
        //*********选项声明(不修改)*********//
        var rc='';var rsl='';var rsro='';var rros='';var ccm='';var cctm='';var ccnm='';var crcl='';var crl='';var oco='';var dst='';var la='';var cem='';var ces='';var stb='';var ssb='';var ses='';var sem='';var srs='';var scs='';var res='';
        //********************************//
        
        dst='---模板guid已删除,例如代码--';
        ccrm='internal~internal;client~client';
        cctm='内部~signer;客户端~signer';
        crl='电子邮件~!user.email姓~!user.lastname role~内部;email!铅。电子邮件姓~!lead.lastname角色~客户端;';
        警报(crl);
        ces='测试电子邮件主题';
        
        //*********页面标注(不修改)*********//
        window.location.href=“/apex/dsfs_uuu docuSign_createEnvelope?dseid=0&sourceid=!Lead.Id}&RC="+RC+"&RSL="+RSL+"&RSRO="+RSRO+"&RROS="+RROS+" &CCRM="+CCRM+"&CCTM="+CCTM+"&CRCL="+CRCL+"&CRL="+CRL+"&OCO="+OCO+" &DST="+DST+"&CCNM="+CCNM+"&LA="+LA+"&CEM="+CEM+"&CES="+CES+" &SRS="+SRS+"&STB="+STB+"&SSB="+SSB+"&SES=“+ses+”&sem=“+sem+”&srs=“+srs+”&scs=“+scs+”&res=“+res;
        //********************************//
        

        我已经确保角色在DocuSign模板、Salesforce和CCRM&CCTM变量之间保持一致。(见下图)。

        DocuSign Roles

        Salesforce角色

        alert(crl)products the following output which shows me the variablecrlis getting the right information.

        但是,在下一页中,第一个收件人被删除,第二个收件人被标记为具有“客户端”角色的第一个收件人。(见下图。)

        文档here指定以下内容..

        如果docuSign模板选项为 添加。

        尽管如此,将routing order属性添加到crlvariable会产生与上面相同的输出,但第二个接收者被正确标记为接收者2,第一个接收者被省略。

        我需要做什么才能正确地将Salesforce用户按自定义按钮映射为具有“内部”角色的文档的第一个收件人?

      • 收件人2是客户端。

      按钮代码如下:

      {!REQUIRESCRIPT("/apex/dsfs__DocuSign_JavaScript")}
      
      //********* Option Declarations (Do not modify )*********// 
      var RC = '';var RSL='';var RSRO='';var RROS='';var CCRM='';var CCTM='';var CCNM='';var CRCL=''; var CRL='';var OCO='';var DST='';var LA='';var CEM='';var CES='';var STB='';var SSB='';var SES='';var SEM='';var SRS='';var SCS ='';var RES='';
      //*************************************************//
      
      DST = '--- TEMPLATE GUID REMOVED FOR EXAMPLE CODE ---';
      CCRM = 'Internal~Internal;Client~Client';
      CCTM = 'Internal~Signer;Client~Signer';
      CRL = 'Email~{!User.Email};LastName~{!User.LastName};Role~Internal;Email~{!Lead.Email};LastName~{!Lead.LastName};Role~Client;';
      alert(CRL);
      CES = 'Test Email Subject';
      
      //********* Page Callout (Do not modify) *********// 
      window.location.href = "/apex/dsfs__DocuSign_CreateEnvelope?DSEID=0 &SourceID={!Lead.Id}&RC="+RC+"&RSL="+RSL+"&RSRO="+RSRO+"&RROS="+RROS+" &CCRM="+CCRM+"&CCTM="+CCTM+"&CRCL="+CRCL+"&CRL="+CRL+"&OCO="+OCO+" &DST="+DST+"&CCNM="+CCNM+"&LA="+LA+"&CEM="+CEM+"&CES="+CES+" &SRS="+SRS+"&STB="+STB+"&SSB="+SSB+"&SES="+SES+"&SEM="+SEM+" &SRS="+SRS+"&SCS="+SCS+"&RES="+RES; 
      //*******************************************//
      

      我已经确保角色在DocuSign模板、Salesforce和CCRM&CCTM变量之间保持一致。(请参见以下两张图片。)

      文档分配角色

      第……页 enter image description here

      Salesforce角色

      第……页 enter image description here

      alert(CRL) 生成以下输出,显示变量 CRL 正在获取正确的信息。

      enter image description here

      但是,在下一页中,第一个收件人被删除,第二个收件人被标记为具有“客户端”角色的第一个收件人。(见下图。)

      enter image description here

      文件 here 指定以下项..

      如果__docuSign template_选项为 补充。

      但是,将路由顺序属性添加到 CRL 变量产生与上述相同的输出,但第二个收件人被正确标记为收件人2,省略了第一个收件人。

      我需要做什么才能正确地将Salesforce用户按自定义按钮映射为具有“内部”角色的文档的第一个收件人?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Greg Hess Jr    6 年前

    经过进一步的研究,我在下面的一行中有一个小的语法错误。

    CRL = 'Email~{!User.Email};LastName~{!User.LastName};Role~Internal;Email~{!Lead.Email};LastName~{!Lead.LastName};Role~Client;';
    

    自定义收件人列表中的收件人必须用逗号分隔。

    如果你仔细看,我不小心用了分号来分隔收件人。

    正确的代码行是:

    CRL = 'Email~{!User.Email};LastName~{!User.LastName};Role~Internal,Email~{!Lead.Email};LastName~{!Lead.LastName};Role~Client;';