method public static

ShipmentTable::getEntity()

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

Сигнатура

public static getEntity() : EO_Shipment_Entity

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

EO_Shipment_Entity

Как применяется в ShipmentTable

ShipmentTable::getEntity() — метод класса \Bitrix\Sale\Internals\ShipmentTable модуля «Интернет-магазин». Это ORM-сущность D7 (наследник DataManager): строки читаются как объекты EO_Shipment, наборы — как EO_Shipment_Collection. Метод достаётся ShipmentTable от DataManager::getEntity: поведение общее для всех сущностей, а данные, поля и классы — свои.

Возвращает объект сущности ShipmentTable — описание полей, первичного ключа, связей и модуля. Через него проверяют, есть ли поле, и строят запросы динамически.

use Bitrix\Main\Loader;
use Bitrix\Sale\Internals\ShipmentTable;

Loader::includeModule('sale');

$entity = ShipmentTable::getEntity();
$primary = $entity->getPrimaryArray();
$hasName = $entity->hasField('NAME');

Поля сущности 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

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

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

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