• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/exchange/importoneccontragentbase.php
  • Класс: BitrixSaleExchangeImportOneCContragentBase
  • Вызов: ImportOneCContragentBase::import
protected function import(array $items)
{
	$result = new Result();

	foreach($items as $item)
	{
		if($item->getOwnerTypeId() == static::getUserProfileEntityTypeId())
		{
			$params = $item->getFieldValues();
			$fields = $params['TRAITS'];

			$personalTypeId = $params['TRAITS']['PERSON_TYPE_ID'] = $item->resolvePersonTypeId($fields);

			$property = $params['ORDER_PROPS'];
			if(!empty($property))
			{
				$params['ORDER_PROP'] = $item->getPropertyOrdersByConfig($personalTypeId, array(), $property);
			}

			unset($params['ORDER_PROPS']);
			$item->setFields($params);

			$r = $item->load($fields);

			if(intval($personalTypeId)<=0)
				$r->addError(new Error(GetMessage("SALE_EXCHANGE_PACKAGE_ERROR_PERSONAL_TYPE_IS_EMPTY", array("#DOCUMENT_ID#"=>$fields['XML_ID'])), "PACKAGE_ERROR_PERSONAL_TYPE_IS_EPMTY"));

			if($r->isSuccess())
			{
				$r = $this->modifyEntity($item);

				if(intval($item->getId())<=0)
					$r->addError(new Error(GetMessage("SALE_EXCHANGE_PACKAGE_ERROR_USER_IS_EMPTY", array("#DOCUMENT_ID#"=>$fields['XML_ID'])), "PACKAGE_ERROR_USER_IS_EPMTY"));
			}

			if(!$r->isSuccess())
			{
				$result->addErrors($r->getErrors());
				break;
			}
		}
	}

	return $result;
}