如何在创建信封时预填充输入字段并通过复合模板传递相同内容
How to pre-fill the input field and pass the same through composite template while creating envelope
我一直在尝试将数据预填充到管理员在创建模板期间创建的表单字段中,方法是调用服务器模板并添加带有值的选项卡
我找到了这个链接:Passing template tabs value while creating envelope
但它并没有多大帮助,因为我正在尝试如下所示的 php 代码:
$signer1 = new \DocuSign\eSign\Model\Signer([
'email' => $signer_email, 'name' => $signer_name,
'role_name' => "signer", 'recipient_id' => "1",
'client_user_id' => $clientUserId,
'defaultrecipient'=> "true",
'tabs' => new \DocuSign\eSign\Model\Tabs( [
'textTabs' => new \DocuSign\eSign\Model\Text ([
'tabLabel' => "dob",
'value'=> "12/3/1998"
])
])
]);
$recipients_server_template = new \DocuSign\eSign\Model\Recipients([
'signers' => [$signer1]]);
$comp_template1 = new \DocuSign\eSign\Model\CompositeTemplate([
'composite_template_id' => "1",
'server_templates' => [
new \DocuSign\eSign\Model\ServerTemplate([
'sequence' => "1", 'template_id' => '6ef9c9c2-2f15-4a80-9643-f3c5a310dcdc'])
],
'inline_templates' => [
new \DocuSign\eSign\Model\InlineTemplate([
'sequence' => "1",
'recipients' => $recipients_server_template])
],
]);
$envelopeDefinition = new \DocuSign\eSign\Model\EnvelopeDefinition([
'email_subject' => "Please sign this document",
//'documents' => [$comp_template1], # The order in the docs array determines the order in the envelope
'composite_templates' => [$comp_template1],
/*'recipients' => new DocuSign\eSign\Model\Recipients(['signers' => [$signer]]), */
'status' => "sent"
]);
正如您在上面看到的,"dob" 是我在服务器模板中创建的自定义字段,是从那里提取的,使用上面的代码我只想为其分配一个值。但是当我访问文档演示站点时它并没有被填充。
我是不是做错了什么??
非常感谢任何帮助,
谢谢
我自己今天一直在做类似的事情,发现以下解决方案似乎有效。
$textTabArray = array(array('tabLabel' => "regnum", 'value' => "testy"));
$taber = array("textTabs" => $textTabArray);
//for me tabs were in a different method
'tabs' => $taber
我使用了一种稍微不同的方法,使用 PHP OAuth 并在此处找到签名:
https://github.com/docusign/eg-03-php-auth-code-grant/blob/master/src/EG009UseTemplate.php
正在向签名者和模板角色模型添加选项卡。
希望对您有所帮助!
我一直在尝试将数据预填充到管理员在创建模板期间创建的表单字段中,方法是调用服务器模板并添加带有值的选项卡
我找到了这个链接:Passing template tabs value while creating envelope
但它并没有多大帮助,因为我正在尝试如下所示的 php 代码:
$signer1 = new \DocuSign\eSign\Model\Signer([
'email' => $signer_email, 'name' => $signer_name,
'role_name' => "signer", 'recipient_id' => "1",
'client_user_id' => $clientUserId,
'defaultrecipient'=> "true",
'tabs' => new \DocuSign\eSign\Model\Tabs( [
'textTabs' => new \DocuSign\eSign\Model\Text ([
'tabLabel' => "dob",
'value'=> "12/3/1998"
])
])
]);
$recipients_server_template = new \DocuSign\eSign\Model\Recipients([
'signers' => [$signer1]]);
$comp_template1 = new \DocuSign\eSign\Model\CompositeTemplate([
'composite_template_id' => "1",
'server_templates' => [
new \DocuSign\eSign\Model\ServerTemplate([
'sequence' => "1", 'template_id' => '6ef9c9c2-2f15-4a80-9643-f3c5a310dcdc'])
],
'inline_templates' => [
new \DocuSign\eSign\Model\InlineTemplate([
'sequence' => "1",
'recipients' => $recipients_server_template])
],
]);
$envelopeDefinition = new \DocuSign\eSign\Model\EnvelopeDefinition([
'email_subject' => "Please sign this document",
//'documents' => [$comp_template1], # The order in the docs array determines the order in the envelope
'composite_templates' => [$comp_template1],
/*'recipients' => new DocuSign\eSign\Model\Recipients(['signers' => [$signer]]), */
'status' => "sent"
]);
正如您在上面看到的,"dob" 是我在服务器模板中创建的自定义字段,是从那里提取的,使用上面的代码我只想为其分配一个值。但是当我访问文档演示站点时它并没有被填充。
我是不是做错了什么??
非常感谢任何帮助, 谢谢
我自己今天一直在做类似的事情,发现以下解决方案似乎有效。
$textTabArray = array(array('tabLabel' => "regnum", 'value' => "testy"));
$taber = array("textTabs" => $textTabArray);
//for me tabs were in a different method
'tabs' => $taber
我使用了一种稍微不同的方法,使用 PHP OAuth 并在此处找到签名:
https://github.com/docusign/eg-03-php-auth-code-grant/blob/master/src/EG009UseTemplate.php
正在向签名者和模板角色模型添加选项卡。
希望对您有所帮助!