public static function convertConfigHandlerToSidAgent() { \Bitrix\Sale\Delivery\Services\Manager::getHandlersClassNames(); $initedHandlers = \Bitrix\Sale\Delivery\Services\Automatic::getRegisteredHandlers("HANDLER"); $filter = array('=CLASS_NAME' => '\\Bitrix\\Sale\\Delivery\\Services\\Automatic'); $res = Bitrix\Sale\Delivery\Services\Table::getList(array('filter' => $filter, 'select' => array("ID", "CODE", "CONFIG"))); while ($params = $res->fetch()) { if (!empty($params["CONFIG"]["MAIN"]["SID"])) { continue; } $config = $params["CONFIG"]; if (!empty($initedHandlers[$config["MAIN"]["HANDLER"]]["SID"])) { $config["MAIN"]["SID"] = $initedHandlers[$config["MAIN"]["HANDLER"]]["SID"]; } else { $config["MAIN"]["SID"] = ""; } unset($config["MAIN"]["HANDLER"]); Bitrix\Sale\Delivery\Services\Table::update($params["ID"], array("CONFIG" => $config)); } return ""; }
public function isCompatible(Shipment $shipment) { return $this->parentAutomatic->isProfileCompatible($this->profileId, $this->getOldConfig(), $shipment); }