2namespace Bitrix\Catalog;
4use Bitrix\Main\Application;
5use Bitrix\Main\Localization\Loc;
6use Bitrix\Main\ORM\Data\DataManager;
7use Bitrix\Main\ORM\Fields\EnumField;
8use Bitrix\Main\ORM\Fields\FloatField;
9use Bitrix\Main\ORM\Fields\IntegerField;
10use Bitrix\Main\ORM\Fields\Relations\Reference;
11use Bitrix\Main\ORM\Fields\StringField;
60 return 'b_catalog_docs_element';
75 'autocomplete' =>
true,
76 'title' => Loc::getMessage(
'INVENTORY_DOCUMENT_ELEMENT_ENTITY_ID_FIELD'),
83 'title' => Loc::getMessage(
'INVENTORY_DOCUMENT_ELEMENT_ENTITY_DOC_ID_FIELD'),
89 'title' => Loc::getMessage(
'INVENTORY_DOCUMENT_ELEMENT_ENTITY_STORE_FROM_FIELD'),
95 'title' => Loc::getMessage(
'INVENTORY_DOCUMENT_ELEMENT_ENTITY_STORE_TO_FIELD'),
101 'title' => Loc::getMessage(
'INVENTORY_DOCUMENT_ELEMENT_ENTITY_ELEMENT_ID_FIELD'),
107 'title' => Loc::getMessage(
'INVENTORY_DOCUMENT_ELEMENT_ENTITY_AMOUNT_FIELD'),
113 'title' => Loc::getMessage(
'INVENTORY_DOCUMENT_ELEMENT_ENTITY_PURCHASING_PRICE_FIELD'),
119 'title' => Loc::getMessage(
'INVENTORY_DOCUMENT_ELEMENT_ENTITY_BASE_PRICE_FIELD'),
125 'title' => Loc::getMessage(
'INVENTORY_DOCUMENT_ELEMENT_ENTITY_BASE_PRICE_EXTRA_FIELD'),
128 'BASE_PRICE_EXTRA_RATE' =>
new EnumField(
129 'BASE_PRICE_EXTRA_RATE',
131 'title' => Loc::getMessage(
'INVENTORY_DOCUMENT_ELEMENT_ENTITY_BASE_PRICE_EXTRA_RATE_FIELD'),
133 self::EXTRA_RATE_PERCENTAGE, self::EXTRA_RATE_MONETARY
135 'default_value' => self::EXTRA_RATE_PERCENTAGE,
141 'title' => Loc::getMessage(
'INVENTORY_DOCUMENT_ELEMENT_ENTITY_COMMENT_FIELD'),
146 '\Bitrix\Iblock\Element',
147 [
'=this.ELEMENT_ID' =>
'ref.ID'],
148 [
'join_type' =>
'LEFT']
152 '\Bitrix\Catalog\Product',
153 [
'=this.ELEMENT_ID' =>
'ref.ID'],
154 [
'join_type' =>
'LEFT']
158 '\Bitrix\Catalog\StoreDocument',
159 [
'=this.DOC_ID' =>
'ref.ID'],
160 [
'join_type' =>
'LEFT']
164 '\Bitrix\Catalog\StoreTable',
165 [
'=this.STORE_FROM' =>
'ref.ID'],
166 [
'join_type' =>
'LEFT']
170 '\Bitrix\Catalog\StoreTable',
171 [
'=this.STORE_TO' =>
'ref.ID'],
172 [
'join_type' =>
'LEFT']
191 $conn = Application::getConnection();
192 $helper = $conn->getSqlHelper();
194 'delete from ' . $helper->quote(self::getTableName())
195 .
' where ' . $helper->quote(
'DOC_ID') .
' = ' . $id
197 unset($helper, $conn);
const EXTRA_RATE_PERCENTAGE
const EXTRA_RATE_MONETARY
static deleteByDocument(int $id)