• Модуль: documentgenerator
  • Путь к файлу: ~/bitrix/modules/documentgenerator/lib/document.php
  • Класс: BitrixDocumentGeneratorDocument
  • Вызов: Document::setValues
public function setValues(array $values): Document
{
	//do not let set default field values to their original chain to prevent recursion
	$defaultFieldValues = array_intersect_key($this->getDocumentDefaultFieldsValues(), $values);
	if(!empty($defaultFieldValues))
	{
		foreach($defaultFieldValues as $name => $defaultFieldValue)
		{
			if($defaultFieldValue === $values[$name])
			{
				unset($values[$name]);
			}
		}
	}
	foreach($values as $placeholder => $value)
	{
		if($placeholder === Template::MAIN_PROVIDER_PLACEHOLDER)
		{
			$this->values[$placeholder] = $value;
		}
		else
		{
			$this->externalValues[$placeholder] = $value;
		}
	}

	// rewrite values
	if(isset($this->fields[Template::MAIN_PROVIDER_PLACEHOLDER]))
	{
		$this->fields[Template::MAIN_PROVIDER_PLACEHOLDER]['OPTIONS']['VALUES'] = $this->getExternalValues();
	}

	return $this;
}