new Main\Entity\IntegerField('IBLOCK_SECTION_ID', array( 'primary' => true, 'title' => Loc::getMessage('IBLOCK_SECTION_ELEMENT_ENTITY_IBLOCK_SECTION_ID_FIELD'), )), 'IBLOCK_ELEMENT_ID' => new Main\Entity\IntegerField('IBLOCK_ELEMENT_ID', array( 'primary' => true, 'title' => Loc::getMessage('IBLOCK_SECTION_ELEMENT_ENTITY_IBLOCK_ELEMENT_ID_FIELD'), )), 'ADDITIONAL_PROPERTY_ID' => new Main\Entity\IntegerField('ADDITIONAL_PROPERTY_ID', array( 'title' => Loc::getMessage('IBLOCK_SECTION_ELEMENT_ENTITY_ADDITIONAL_PROPERTY_ID_FIELD'), )), 'IBLOCK_SECTION' => new Main\Entity\ReferenceField( 'IBLOCK_SECTION', 'Bitrix\Iblock\Section', Join::on('this.IBLOCK_SECTION_ID', 'ref.ID') ), 'IBLOCK_ELEMENT' => new Main\Entity\ReferenceField( 'IBLOCK_ELEMENT', 'Bitrix\Iblock\Element', array('=this.IBLOCK_ELEMENT_ID' => 'ref.ID'), array( 'title' => Loc::getMessage('IBLOCK_SECTION_ELEMENT_ENTITY_IBLOCK_ELEMENT_FIELD'), ) ), new Reference( 'REGULAR_ELEMENT', CommonElementTable::class, Join::on('this.IBLOCK_ELEMENT_ID', 'ref.ID') ->whereNull('this.ADDITIONAL_PROPERTY_ID') ) ); } }