我正在尝试创建多个文档,并在envelop_definition数组中获取了完整的文档,但是当它将生成文档信封时,它仅显示第一个。
我需要做什么?
我正在使用以下代码处理多个文档。
$docs = array();
$b=1;
foreach ($fileArray as $key => $file) {
// Add a document to the envelope
$document = new DocuSign\eSign\Model\Document();
$document->setDocumentBase64(base64_encode(file_get_contents($file)));
$document->setName('Document '.$b);
$document->setDocumentId($b);
$document->setOrder($b);
$docs[] = $document;
# code...
$b++;
}
$envelop_definition->setDocuments($docs);
$envelop_definition->setTemplateRoles($all_template_roles);
// send notification about status change
$envelop_definition->setEventNotification($event_notification);
// set envelope status to "sent" to immediately send the signature request
$envelop_definition->setStatus("sent");
$envelopeApi->createEnvelope($accountId, $envelop_definition, $options);
但仅获取第一个文档。
答案 0 :(得分:0)
您使用templateRoles
对象意味着您正在尝试创建一个使用已经创建的模板的信封。
如果是这种情况,则不要使用文档模型将文档添加到信封/模板中。
相反,您将文档和模板中的文档组合在一起。
如果要将文档添加到模板中已经存在的文档集中,请参见eg013AddDocToTemplate.sh以获取代码示例。该示例在multiple languages中也可用。 PHP已投入生产。
如果要用模板中已有的文档代替新文档,请参阅此answer。