【问题标题】:DocuSign C# API (Create Tabs)DocuSign C# API(创建标签)
【发布时间】:2017-05-01 17:24:30
【问题描述】:

我正在尝试在使用嵌入式发送 API 时更新选项卡。

SignHere signHere = new SignHere();
signHere.AnchorString = "Approved by  :";
signHere.AnchorXOffset = "0";
signHere.AnchorYOffset = "-50";

signer.Tabs = new Tabs();
signer.Tabs.SignHereTabs = new List<SignHere>();
signer.Tabs.SignHereTabs.Add(signHere);
envelopesApi.CreateTabs(accountId, envelopeId, "1", signer.Tabs);

代码运行良好,没有错误,但选项卡未出现在嵌入式发送界面中。我该如何解决呢?

【问题讨论】:

  • 此外,当我进行 API 调用以列出选项卡时,此选项卡也会出现。

标签: docusignapi


【解决方案1】:

也许锚字符串不匹配。我建议使用没有空格或特殊字符的简单锚字符串。

例如,试试

signHere.AnchorString = "Approved";

如果您可以访问源文档,更好的解决方案是在文档中添加一个小型 DSL,例如 approval_signer

将该字符串放在您希望“签名者”选项卡出现的位置。将字符串的文本颜色标记为白色,使其不可见。

【讨论】:

  • 找出原因。我也在代码的早期部分更新了文档。谢谢!
  • @ButterBeer Cool 你能接受拉里在这种情况下的回答(或添加一个新的回答来解释你是如何解决的)以造福社区吗?谢谢
  • 会的。我将在一个新的答案中解释这个问题,因为我对文档进行了更新以及对导致标签未显示的标记进行了更新。
【解决方案2】:

经过进一步调查,我发现上面的问题不在于标签。

用和上面一样的方法,我对文档做了一个更新:

Document doc = new Document();
doc.DocumentBase64 = System.Convert.ToBase64String(fileBytes);
doc.Name = docName;
doc.FileExtension = docExtension;
doc.DocumentId = "1";

EnvelopeDefinition envDef = new EnvelopeDefinition();
envDef.Documents = new List<Document>();
envDef.Documents.Add(doc);

envelopesApi.UpdateDocuments(accountId, envelopeId, envDef);

我相信问题中提到的标记随后被标记到原始文档而不是更新的文档上。

要解决此问题,请在更新之前删除文档:

Document doc = new Document();
doc.DocumentBase64 = System.Convert.ToBase64String(fileBytes);
doc.Name = docName;
doc.FileExtension = docExtension;
doc.DocumentId = "1";

EnvelopeDefinition envDef = new EnvelopeDefinition();
envDef.Documents = new List<Document>();
envDef.Documents.Add(doc);

envelopesApi.DeleteDocuments(accountId, envelopeId, envDef);
envelopesApi.UpdateDocuments(accountId, envelopeId, envDef);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 2018-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多