- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/shipment.php
- Класс: BitrixSaleShipment
- Вызов: Shipment::create
static function create(ShipmentCollection $collection, DeliveryServicesBase $service = null)
{
$emptyService = DeliveryServicesManager::getById(DeliveryServicesEmptyDeliveryService::getEmptyDeliveryServiceId());
$fields = [
'DATE_INSERT' => new MainTypeDateTime(),
'DELIVERY_ID' => $emptyService['ID'],
'DELIVERY_NAME' => $emptyService['NAME'],
'ALLOW_DELIVERY' => 'N',
'DEDUCTED' => 'N',
'CUSTOM_PRICE_DELIVERY' => 'N',
'MARKED' => 'N',
'CANCELED' => 'N',
'SYSTEM' => 'N',
'XML_ID' => static::generateXmlId(),
'RESERVED' => 'N'
];
$registry = Registry::getInstance(static::getRegistryType());
/** @var DeliveryStatus $deliveryStatusClassName */
$deliveryStatusClassName = $registry->getDeliveryStatusClassName();
$fields['STATUS_ID'] = $deliveryStatusClassName::getInitialStatus();
$shipment = static::createShipmentObject();
$shipment->setFieldsNoDemand($fields);
$shipment->setCollection($collection);
if ($service !== null)
{
$shipment->setDeliveryService($service);
}
return $shipment;
}