...Человеческий поиск в разработке...
- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/classes/general/crm_external_sale_import.php
- Класс: \CCrmExternalSaleImport
- Вызов: CCrmExternalSaleImport::GetOrderData
public function GetOrderData($orderId, $skipBP = true) { $this->ClearErrors(); $this->arImportResult = new CCrmExternalSaleImportResult(); $orderId = intval($orderId); if ($orderId <= 0) { $this->AddError("GO1", "Order ID is not specified"); return self::SyncStatusError; } $filter = array( "ORDER_ID" => $orderId, "GZ_COMPRESSION_SUPPORTED" => function_exists("gzcompress") ? 1 : 0, "type" => "crm", "mode" => "query" ); $queryOptions = array(); $sessid = $this->GetServerSessionID(); $serverVersion = $this->GetServerVersion(); if($sessid !== "" && $serverVersion >= 2.09) { $queryOptions["REQUEST_METHOD"] = "GET"; $filter["sessid"] = $sessid; } else { $queryOptions["REQUEST_METHOD"] = "POST"; if($sessid !== "") { $filter["sessid"] = $sessid; } } $orderData = $this->QueryOrderData($filter, $queryOptions); if ($orderData == null) { $this->AddError("SD2", "Communication error"); return self::SyncStatusError; } $arErrors = array(); $arOrders = $this->ParseOrderData($orderData, $modificationLabel, $arErrors); if (is_array($arOrders)) { foreach ($arOrders as $order) { $this->SaveOrderData($order, $skipBP); } return self::SyncStatusFinished; } foreach ($arErrors as $error) { $this->AddError($error[0], $error[1]); } return self::SyncStatusError; }