method public static

ShipmentTable::createObject()

Класс: \Bitrix\Sale\Internals\ShipmentTable

Сигнатура

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

ПолеТипСвойства
IDintобязательное
ORDER_IDintобязательное
STATUS_IDstring(1)обязательное
PRICE_DELIVERYunknownобязательное
ALLOW_DELIVERYstring(1)необязательное
DATE_ALLOW_DELIVERYdatetimeнеобязательное
EMP_ALLOW_DELIVERYintнеобязательное
DEDUCTEDstring(1)необязательное
DATE_DEDUCTEDdatetimeнеобязательное
EMP_DEDUCTED_IDintнеобязательное
REASON_UNDO_DEDUCTEDstring(255)необязательное
RESERVEDstring(1)необязательное
DELIVERY_IDintобязательное
DELIVERY_DOC_NUMstring(20)необязательное
DELIVERY_DOC_DATEdatetimeнеобязательное
TRACKING_NUMBERstring(255)необязательное
XML_IDstring(255)необязательное
PARAMSstringобязательное
DELIVERY_NAMEstring(128)обязательное
CANCELEDstring(1)необязательное
DATE_CANCELEDdatetimeнеобязательное
EMP_CANCELED_IDintнеобязательное
REASON_CANCELEDstring(255)необязательное
MARKEDstring(1)необязательное
DATE_MARKEDdatetimeнеобязательное
EMP_MARKED_IDintнеобязательное
REASON_MARKEDstring(255)необязательное

Список — из описания класса в исходном коде; точный состав в вашей версии вернёт ShipmentTable::getEntity()->getFields().

Собственные методы ShipmentTable

createObject() есть и у других классов модуля «Интернет-магазин»: BasketArchivePackedTable, BasketArchiveTable, BasketPropertyTable, BasketTable, BusinessValueCode1CTable, BusinessValuePersonDomainTable, BusinessValueTable, BuyerStatisticTable.

Исходный файл: source/sale/lib/internals/shipment.php

Что будем искать? Например,Продвижение