ShipmentTable::createObject()
Сигнатура
public static createObject([mixed $setDefaultValues = = 'true' ]) : EO_Shipment
Параметры
$setDefaultValues
mixed
= = 'true'
Возвращаемое значение
EO_Shipment
Как применяется в ShipmentTable
ShipmentTable::createObject() — метод класса \Bitrix\Sale\Internals\ShipmentTable модуля «Интернет-магазин». Это ORM-сущность D7 (наследник DataManager): строки читаются как объекты EO_Shipment, наборы — как EO_Shipment_Collection. Метод достаётся ShipmentTable от DataManager::createObject: поведение общее для всех сущностей, а данные, поля и классы — свои.
Создаёт новый объект ShipmentTable (EO_Shipment): поля заполняются сеттерами, запись в БД — методом save().
use Bitrix\Main\Loader;
use Bitrix\Sale\Internals\ShipmentTable;
Loader::includeModule('sale');
$item = ShipmentTable::createObject();
$item->set('ORDER_ID', 1);
$item->set('STATUS_ID', 'status_id');
$item->set('ALLOW_DELIVERY', 'allow_delivery');
$result = $item->save();Поля сущности ShipmentTable
| Поле | Тип | Свойства |
|---|---|---|
ID | int | обязательное |
ORDER_ID | int | обязательное |
STATUS_ID | string(1) | обязательное |
PRICE_DELIVERY | unknown | обязательное |
ALLOW_DELIVERY | string(1) | необязательное |
DATE_ALLOW_DELIVERY | datetime | необязательное |
EMP_ALLOW_DELIVERY | int | необязательное |
DEDUCTED | string(1) | необязательное |
DATE_DEDUCTED | datetime | необязательное |
EMP_DEDUCTED_ID | int | необязательное |
REASON_UNDO_DEDUCTED | string(255) | необязательное |
RESERVED | string(1) | необязательное |
DELIVERY_ID | int | обязательное |
DELIVERY_DOC_NUM | string(20) | необязательное |
DELIVERY_DOC_DATE | datetime | необязательное |
TRACKING_NUMBER | string(255) | необязательное |
XML_ID | string(255) | необязательное |
PARAMS | string | обязательное |
DELIVERY_NAME | string(128) | обязательное |
CANCELED | string(1) | необязательное |
DATE_CANCELED | datetime | необязательное |
EMP_CANCELED_ID | int | необязательное |
REASON_CANCELED | string(255) | необязательное |
MARKED | string(1) | необязательное |
DATE_MARKED | datetime | необязательное |
EMP_MARKED_ID | int | необязательное |
REASON_MARKED | string(255) | необязательное |
Список — из описания класса в исходном коде; точный состав в вашей версии вернёт ShipmentTable::getEntity()->getFields().
Собственные методы ShipmentTable
deleteWithItems()getFilePath()Возвращает путь к файлу, содержащему определение класса.validateAllowDelivery()Возвращает валидаторы для поля ALLOW_DELIVERY.validateCanceled()Возвращает валидаторы для поля CANCELED.validateDeducted()Возвращает валидаторы для поля DEDUCTED.validateDeliveryDocNum()Возвращает валидаторы для поля DELIVERY_DOC_NUM.validateDeliveryName()Возвращает валидаторы для поля DELIVERY_NAME.validateMarked()Возвращает валидаторы для поля MARKED.validateReasonCanceled()Возвращает валидаторы для поля REASON_CANCELED.validateReasonMarked()Возвращает валидаторы для поля REASON_MARKED.validateReasonUndoDeducted()Возвращает валидаторы для поля REASON_UNDO_DEDUCTED.validateReserved()Возвращает валидаторы для поля RESERVED.
createObject() есть и у других классов модуля «Интернет-магазин»: BasketArchivePackedTable, BasketArchiveTable, BasketPropertyTable, BasketTable, BusinessValueCode1CTable, BusinessValuePersonDomainTable, BusinessValueTable, BuyerStatisticTable.
Исходный файл: source/sale/lib/internals/shipment.php

