Документация для разработчиков
Темная тема

Calculate

Описание и параметры

array
CSaleDeliveryHandler::Calculate(
 int STEP,
 string SID,
 string profile,
 array arOrder,
 string currency,
 mixed TMP = false,
 mixed SITE_ID = false
);

Вызов одного шага расчёта стоимости доставки. Метод статический.

Примечание: метод устарел и не рекомендуется к использованию. Вместо него следует использовать методы класса \Bitrix\Sale\Delivery\Services\Base.

Параметры вызова

Параметр Описание
STEP Текущий шаг расчёта.
SID Строковый идентификатор обработчика.
profile Идентификатор профиля обработчика.
arOrder Массив заказа:
  • WEIGHT - суммарный вес заказа в граммах;
  • PRICE - суммарная стоимость заказа в базовой валюте магазина;
  • LOCATION_FROM - ID местоположения магазина, настраиваемого в настройках модуля "Интернет-магазин";
  • LOCATION_TO - ID местоположения, указываемого клиентом при оформлении заказа;
  • ITEMS - массив позиций корзины, причем каждая позиция обладает набором свойств. Одно из них - DIMENSIONS - массив, содержащий длину, высоту и ширину. Служба доставки может проверить подходят ли все товары для доставки данной службой (размеры / вес / цена) или сколько коробок необходимо для того, чтобы отправить весь заказ.
currency Идентификатор валюты.
TMP Временные данные с предыдущего шага.
SITE_ID Идентификатор сайта. По умолчанию используется текущий.

Возвращаемые значения

Возвращается ассоциативный массив следующей структуры:

Ключ Описание
RESULT Идентификатор ответа. Возможные значения:
  • "OK" - стоимость доставки успешно рассчитана;
  • "ERROR" - в процессе расчёта произошла ошибка;
  • "NEXT_STEP" - необходимо перейти на следующий шаг для продолжения расчёта.
VALUE Значение стоимости доставки в валюте, задаваемой в параметрах метода - currency. (RESULT = 'OK')
TRANSIT Длительность доставки в днях (RESULT = 'OK'). Если обработчик доставки не возвращает длительность, то этот параметр отсутствует.
TEXT Текст ошибки или текст, сопровождающий переход на следующий шаг (RESULT = {'ERROR'|'NEXT_STEP'}).
TEMP Строка, содержащая промежуточные данные, которые нужно передать следующему шагу (RESULT = 'NEXT_STEP').


© «Битрикс», 2001-2020, «1С-Битрикс», 2020
Наверх