2013-08-12 19 views
6

Tôi có nhiều tab văn bản mà tất cả đều có cùng một nhãn chính xác trong một mẫu. Khi tôi gửi dữ liệu tab người nhận để điền trước những dữ liệu này, chỉ có phần đầu tiên được điền sẵn, phần còn lại của chúng bị trống.DocuSign: Làm cách nào để điền trước nhiều tab văn bản có cùng nhãn?

Tôi đã tìm thấy this support ticket. Nhưng nó chứa thông tin mâu thuẫn:

Yes I believe you do need to set the value 10 times (one for each text tab), 
... 
So if you give them all the same label and make them editable (by setting "locked" to false) then when a recipient types a value into one text box ALL of them will get updated with that value. 

Nếu tất cả đều được công nhận là một, tại sao API cần gửi cùng một dữ liệu 10 lần? Nếu nó gửi thông tin 5 lần, các tab nào được lấp đầy? 5 đầu tiên? Bất kỳ 5 người trong số họ một cách ngẫu nhiên?

Xin lưu ý rằng tôi có thể nhận các tab văn bản với các nhãn độc đáo điền sẵn.

EDIT:

Đây là bãi JSON được yêu cầu:

{ 
    "compositeTemplates": null, 
    "status": "sent", 
    "allowReassign": false, 
    "allowRecipientRecursion": false, 
    "templateRoles": [ 
    { 
     "name": "Atamert Olcgen", 
     "tabs": { 
     "radioGroupTabs": [], 
     "textTabs": [ 
      ... 
      { 
      "name": "Text", 
      "value": "<EMAIL1>", 
      "tabLabel": "Email" 
      }, 
      ... 
      { 
      "name": "Text", 
      "value": "Atamert Olcgen", 
      "tabLabel": "FullName" 
      }, 
      ... 
     ], 
     "checkboxTabs": [] 
     }, 
     "recipientId": "1", 
     "accessCode": null, 
     "clientUserId": "******", 
     "roleName": "Client", 
     "emailNotification": null, 
     "email": "<EMAIL1>" 
    }, 
    { 
     "name": "*****", 
     "tabs": { 
     ... // Secondary signer, mostly empty 
     }, 
     "recipientId": "2", 
     "accessCode": null, 
     "clientUserId": null, 
     "roleName": "!", 
     "emailNotification": null, 
     "email": "<EMAIL2>" 
    }, 
    { 
     "name": "******", 
     "tabs": { 
     "radioGroupTabs": [], 
     "textTabs": [], 
     "checkboxTabs": [] 
     }, 
     "recipientId": "1", 
     "accessCode": null, 
     "clientUserId": null, 
     "roleName": "EmailOnlyRecipient", 
     "emailNotification": null, 
     "email": "<EMAIL3>" 
    } 
    ], 
    "enableWetSign": false, 
    "signingLocation": "Online", 
    "eventNotification": null, 
    "enforceSignerVisibility": false, 
    "brandId": "", 
    "allowMarkup": false, 
    "envelopeIdStamping": false, 
    "asynchronous": false, 
    "templateId": "<TEMPLATE_ID>", 
    "emailBlurb": "", 
    "customFields": null, 
    "authoritativeCopy": false, 
    "emailSubject": "<PRODUCT> - Secure Authorization Document", 
    "autoNavigation": false 
} 

(Tôi đã xóa một số thông tin nhạy cảm)

Và đây là câu trả lời JSON:

{ 
    "envelopeId": "******", 
    "uri": "/envelopes/******", 
    "statusDateTime": "2013-08-12T10:25:00.7159991Z", 
    "status": "sent" 
} 

Như tôi đã nói ở trên là người đầu tiên Tab FullName được điền sẵn, các tab tiếp theo bị trống.

Trả lời

14

Các bài bạn tham khảo tại là hết hạn - có thực sự là một mẹo bạn cần phải làm gì khi bạn có nhiều tab có cùng nhãn mà bạn muốn điền trước với giá trị tương đương.

Về cơ bản nếu bạn có nhiều tab với tabLabel cùng và bạn muốn tất cả trong số họ bắt đầu với giá trị ban đầu tương tự thì bạn cần phải tiền tố tabLabel với chuỗi ký tự đại diện

\\* 

Ví dụ , giả sử bạn có một tab bảo mật xã hội mà bạn đã thêm vào tài liệu của mình ở nhiều nơi được gọi là "SocialSecurityTab". Để lấp đầy TẤT CẢ các textTabs có chứa "SocialSecurityTab" như tabLabel của họ sử dụng JSON sau:

"textTabs": [ 
     { 
     "tabLabel": "\\*SocialSecurityTab", 
     "value": "012-34-5678" 
     } 

Điều quan trọng là không quên cả hai dấu chéo ngược (\) ký tự, và cũng chắc chắn rằng bạn không sử dụng một hệ thống (chẳng hạn như Salesforce) có thể loại bỏ một trong các dấu gạch chéo ngược vì nhiều lý do khác nhau.

+1

Cảm ơn này giải quyết vấn đề này. Nhưng tại sao đây không phải là hành vi mặc định? Tất cả các nhà phát triển tôi đã đề cập đến vấn đề này đã bày tỏ sự bối rối. Tại sao mọi người nên đặt cùng tên cho hai tab nếu họ không mong đợi họ được lấp đầy bằng cùng một giá trị? – muhuk

+1

Tôi đồng ý @muhuk điều này được thiết kế kém và không được ghi lại rõ ràng trong Tài liệu API của họ. –

+1

Đối với những người tò mò muốn thấy điều này trong tài liệu.Nó có thể được tìm thấy [ở đây trong DocuSign API Documents] (https://www.docusign.com/p/RESTAPIGuide/RESTAPIGuide.htm#REST%20API%20References/Tabs/Automatically%20Populating%20Tabs.htm) – acorre

0

@Ergin - Chuỗi ký tự đại diện đang phá vỡ cho tôi nếu 2 tabLabels kết thúc bằng cùng một chuỗi ký tự, sau đó đề cập cuối cùng của tabLabel được ánh xạ không chính xác đến các trường sai trên mẫu.

Vì vậy, từ ví dụ của bạn:

"textTabs": [ { "tabLabel": "\\*SocialSecurityTab", "value": "012-34-5678" }, { "tabLabel": "\\*Tab", "value": "SomeValue" }

Vì vậy, hãy chắc chắn rằng bạn có TabLabels độc đáo khắp nơi để workaround.

Các vấn đề liên quan