2017-02-07 2 views
0

나는 내가 업로드 한 pdf 템플릿에서 문서를 보내기위한 docusign 개발 센터의 "제조법"을 따랐다. 작동하지만 각 수신자가 동일한 문서에 추가 (및/또는 서명) 할 수있는 워크 플로입니다.여러 수신자에게 동일한 템플릿을 사용하려면 어떻게해야합니까?

받는 사람 목록에 대해 동일한 서식 파일로 문서를 생성하고 모두 서명하도록 할 수 있어야합니다. 각받는 사람에 대한 템플릿을 프로그래밍 방식으로 생성하고 코드를 통해 가져온 데이터 집합을 사용하여 이름과 주소 정보를 채운 다음 각받는 사람에게 서명하여 보내는 방법이 최선의 방법입니다. 이 샘플 코드 I TREID에 있습니다 : 처음

  string username = conf.ConfigurationManager.AppSettings["username"]; 
     string password = conf.ConfigurationManager.AppSettings["password"]; 
     string integratorKey = conf.ConfigurationManager.AppSettings["integratorKey"]; 

     // initialize client for desired environment (for production change to www) 
     ApiClient apiClient = new ApiClient("https://demo.docusign.net/restapi"); 
     Configuration.Default.ApiClient = apiClient; 

string username = conf.ConfigurationManager.AppSettings["username"]; 
     string password = conf.ConfigurationManager.AppSettings["password"]; 
     string integratorKey = conf.ConfigurationManager.AppSettings["integratorKey"]; 

     // initialize client for desired environment (for production change to www) 
     ApiClient apiClient = new ApiClient("https://demo.docusign.net/restapi"); 
     Configuration.Default.ApiClient = apiClient; 

     // configure 'X-DocuSign-Authentication' header 
     string authHeader = "{\"Username\":\"" + username + "\", \"Password\":\"" + password + "\", \"IntegratorKey\":\"" + integratorKey + "\"}"; 
     Configuration.Default.AddDefaultHeader("X-DocuSign-Authentication", authHeader); 

     // we will retrieve this from the login API call 
     string accountId = null; 

     ///////////////////////////////////////////////////////////////// 
     // STEP 1: LOGIN API   
     ///////////////////////////////////////////////////////////////// 

     // login call is available in the authentication api 
     AuthenticationApi authApi = new AuthenticationApi(); 
     LoginInformation loginInfo = authApi.Login(); 

     // parse the first account ID that is returned (user might belong to multiple accounts) 
     accountId = loginInfo.LoginAccounts[0].AccountId; 
     var baseUrl = loginInfo.LoginAccounts[0].BaseUrl; 
     // Update ApiClient with the new base url from login call 
     apiClient = new ApiClient(loginInfo.LoginAccounts[0].BaseUrl); 

     EnvelopeDefinition envDef = new EnvelopeDefinition(); 
     envDef.EmailSubject = "[TEMPLATE NAME]"; 

     // provide a valid template ID from a template in your account 
     envDef.TemplateId = "[TEMPLATE ID]"; 
var rolesList = new List<TemplateRole>(); 

     // assign recipient to template role by setting name, email, and role name. Note that the 
     // template role name must match the placeholder role name saved in your account template. 
     TemplateRole tRole = new TemplateRole(); 
     tRole.Email = "XXX"; 
     tRole.Name = "XXX"; 
     tRole.RoleName = "Test Role"; 
     rolesList.Add(tRole); 
      envDef.TemplateRoles = rolesList; 
     envDef.Status = "sent"; 
     EnvelopesApi envelopesApi = new EnvelopesApi(); 
     EnvelopeSummary envelopeSummary = envelopesApi.CreateEnvelope(accountId, envDef); 

난 그냥 하나 하나를 보낼 봉투 정의를 사용하여 다음 각각에 대해 새로운 이메일 addessses을 assiging, (여기 "trole")는 TemplateRole을 reinstatiating와 시도,하지만 여전히 각받는 사람에게 동일한 공유 문서를 보냈습니다.

서명을 할 수있는 문서를 갖기를 원한다면 각받는 사람을위한 템플릿을 만들어야하나요, 아니면 보지 못하는 더 실질적인 방법이 있습니까?

템플릿 기본적으로 특정 문서,받는 사람 역할, 탭, 및 기타 비즈니스 로직 사전 설정 봉투입니다 :

답변

1

는 여기 여기 혼동하지만 조금 내 2 센트가 있어요. 아이디어는 동일한 "템플릿"을 재사용하여 많은 봉투를 생성하는 것입니다.

아주 간단한 사용 사례는 오픈 소스 프로젝트 참여자를위한 NDA 양식 일 수 있습니다. NDA PDF 문서에서 템플릿을 설정하고 문서를 DocuSign에 업로드하고 여러 참여자 정보 (이름 , 전자 메일, 날짜 및 서명)뿐만 아니라받는 사람 역할 (필자가 기고자라고 부를 수 있음)의 자리 표시 자입니다. 내 서식 파일을 저장하면, 내 DocuSign의 계정에서 템플릿 ID를 복사 할 수 있습니다 당신이 언급 한 바와 같이 루프 내부의 SDK에서 사용 :

myRecipients.forEach(function(myRecipient) { 
    var rolesList = new List<TemplateRole>(); 
    TemplateRole tRole = new TemplateRole(); 
    tRole.Email = myRecipient.email; 
    tRole.Name = myRecipient.name; 
    tRole.RoleName = "Test Role"; 
    rolesList.Add(tRole); 
    envDef.TemplateRoles = rolesList; 
    EnvelopeSummary envelopeSummary = envelopesApi.CreateEnvelope(accountId, envDef); 
    ... 
    }); 
+0

개체의 어떤 종류의 myRecipients이며 어디로부터 오는가? 나는 전자 메일 주소와 이름 목록을 갖고 서명 할 전자 메일을받을 사람마다 pdf를 생성 할 수 있기를 바랍니다. 내가 지금하고있는 방식은 내가 서명 한 모든 역할에 걸쳐 하나의 문서 ("enevlope")를 공유하는 것처럼 보입니다. 나는 각자 자신이 서명 할 수 있어야한다. – user609926

+0

myRecipents가 수신자 목록을 포함해야하는 데이터 구조의 예제로 사용되면 이메일/이름 목록이 올바른 위치에 있어야합니다. 아이디어는이 목록을 반복하는 것입니다. 항상 envDef.TemplatesRoles를 새 목록으로 재설정하여 항상 1 개의 단일받는 사람 데이터 만 포함하도록 유의하십시오. 템플릿 역할을 추가하지 마십시오. 당신은 나처럼하고 루프 반복마다 다시 설정해야합니다. –

관련 문제