• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/orderbase.php
  • Класс: BitrixSaleOrderBase
  • Вызов: OrderBase::create
static function create($siteId, $userId = null, $currency = null)
{
	$fields = [
		'CANCELED' => 'N',
		'DEDUCTED' => 'N',
		'ALLOW_DELIVERY' => 'N',
		'PAYED' => 'N',
	];

	$order = static::createOrderObject($fields);
	$order->setFieldNoDemand('LID', $siteId);
	if (intval($userId) > 0)
	{
		$order->setFieldNoDemand('USER_ID', $userId);
	}

	if ($currency == null)
	{
		$currency = InternalsSiteCurrencyTable::getSiteCurrency($siteId);
	}

	if ($currency == null)
	{
		$currency = CurrencyCurrencyManager::getBaseCurrency();
	}

	$order->setFieldNoDemand('CURRENCY', $currency);
	$order->setField('STATUS_ID', static::getInitialStatus());
	$order->setFieldNoDemand('XML_ID', static::generateXmlId());

	$order->calculateType = static::SALE_ORDER_CALC_TYPE_NEW;

	return $order;
}