DocuSign PHP SDK - Как программно заполнить существующие текстовые вкладки? - PullRequest
0 голосов
/ 14 декабря 2018

Я использую DocuSign PHP SDK, и я хотел бы заполнить значения для существующих текстовых вкладок / полей в моем шаблоне.

Я пробовал использовать следующее:

$textTab = new \DocuSign\eSign\Model\Text();
$textTab->setTabId('f432a532-327e-4335-39ff-fk3285d732pd');
$textTab->setValue('3333 Kingman Ave');
$tabs = new DocuSign\eSign\Model\Tabs();
$tabs->setTextTabs(array($textTab));
$templateRole->setTabs($tabs);

где параметр, переданный в setTabId(), берется из свойства tabId объекта из массива textTabs в шаблоне экспорта JSON.

У меня также естьпопытался использовать

$textTab->setTabLabel('corresponding-label-id') 

вместо

$textTab->setTabId()  

Также не изменяется значение на вкладке, к которой они относятся.Каков правильный синтаксис для установки пользовательского значения для существующей текстовой вкладки с использованием PHP SDK?

1 Ответ

0 голосов
/ 16 декабря 2018

См. Пример EG017SetTemplateTabValues.php

Вы устанавливаете значения через объект роли для подписавшего / получателя.

Например

    # create the envelope definition with the template_id
    $envelope_definition = new \DocuSign\eSign\Model\EnvelopeDefinition([
        'status' => 'sent', 'template_id' => $args['template_id']
    ]);
    # Set the values for the fields in the template
    $check1 = new \DocuSign\eSign\Model\Checkbox([
        'tab_label' => 'ckAuthorization', 'selected' => "true"]);
    $number1 = new \DocuSign\eSign\Model\Number([
        'tab_label' => "numbersOnly", 'value' => '54321']);
    $radio_group = new \DocuSign\eSign\Model\RadioGroup(['group_name' => "radio1",
        # You only need to provide the radio entry for the entry you're selecting
        'radios' => [
            new \DocuSign\eSign\Model\Radio(['value' => "white", 'selected' => "true"]),
        ]]);
    $text = new \DocuSign\eSign\Model\Text([
        'tab_label' => "text", 'value' => "Jabberwocky!"]);
    # Pull together the existing tabs in a Tabs object:
    $tabs = new \DocuSign\eSign\Model\Tabs([
        'checkbox_tabs' => [$check1, $check3], 'number_tabs' => [$number1],
        'radio_group_tabs' => [$radio_group], 'text_tabs' => [$text]]);
    # Create the template role elements to connect the signer and cc recipients
    # to the template
    $signer = new \DocuSign\eSign\Model\TemplateRole([
        'email' => $args['signer_email'], 'name' => $args['signer_name'],
        'role_name' => 'signer',
        'tabs' => $tabs # Set tab values
    ]);
    # Create a cc template role.
    $cc = new \DocuSign\eSign\Model\TemplateRole([
        'email' => $args['cc_email'], 'name' => $args['cc_name'],
        'role_name' => 'cc'
    ]);
    # Add the TemplateRole objects to the envelope object
    $envelope_definition->setTemplateRoles([$signer, $cc]);
    return $envelope_definition;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...