• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/helpers/order/builder/orderbuilder.php
  • Класс: BitrixSaleHelpersOrderBuilderOrderBuilder
  • Вызов: OrderBuilder::setFields
public function setFields()
{
	$fields = $this->getSettableOrderFields();

	foreach($fields as $field)
	{
		if(isset($this->formData[$field]))
		{
			$r = $this->order->setField($field, $this->formData[$field]);

			if(!$r->isSuccess())
			{
				$this->getErrorsContainer()->addErrors($r->getErrors());
			}
		}
	}

	if(isset($this->formData["PERSON_TYPE_ID"]) && intval($this->formData["PERSON_TYPE_ID"]) > 0)
	{
		/** @var BitrixSaleResult $r */
		$r = $this->order->setPersonTypeId(intval($this->formData['PERSON_TYPE_ID']));
	}
	else
	{
		/** @var BitrixSaleResult $r */
		$r = $this->order->setPersonTypeId(
			OrderBuyer::getDefaultPersonType(
				$this->order->getSiteId()
			)
		);
	}

	if(!$r->isSuccess())
	{
		$this->getErrorsContainer()->addErrors($r->getErrors());
	}

	return $this;
}