method public static

DealContactTable::query()

Класс: \Bitrix\Crm\Binding\DealContactTable

Сигнатура

public static query() : EO_DealContact_Query

Описание

Создаёт и возвращает объект Query для сущности

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

EO_DealContact_Query

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

DealContactTable::query() — метод класса \Bitrix\Crm\Binding\DealContactTable модуля «CRM». Это ORM-сущность D7 (наследник DataManager): строки читаются как объекты EO_DealContact, наборы — как EO_DealContact_Collection. Метод достаётся DealContactTable от DataManager::query: поведение общее для всех сущностей, а данные, поля и классы — свои.

Создаёт построитель запроса к DealContactTable: условия задаются цепочкой where(), setSelect(), setOrder(), а результат — тот же EO_DealContact_Result.

use Bitrix\Main\Loader;
use Bitrix\Crm\Binding\DealContactTable;

Loader::includeModule('crm');

$rows = DealContactTable::query()
    ->setSelect(['*'])
    ->where('ID', '>', 0)
    ->setLimit(10)
    ->fetchAll();

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

  • bindContactIDs() Привязывает сделку к контактам, указанным по идентификатору.
  • bindContacts() Привязывает сделку к контактам.
  • getBulkDealBindings() Возвращает карту привязок для коллекции сделок.
  • getContactDealIDs() Возвращает идентификаторы сделок, привязанных к указанному контакту.
  • getDealBindingCount() Возвращает количество привязок сделки.
  • getDealBindings() Возвращает привязки сделки.
  • getDealContactIDs() Возвращает идентификаторы контактов, привязанных к указанной сделке.
  • getDealsContactIds()
  • hasContacts() Проверяет, есть ли у сделки контакты.
  • prepareFilterJoinSql() Подготавливает условие SQL-фильтра JOIN для указанной сущности.
  • rebindAllContacts() Отвязывает все контакты от исходной сделки и привязывает их к целевой сделке
  • rebindAllDeals() Отвязывает все сделки от исходного контакта и привязывает их к целевому контакту

query() есть и у других классов модуля «CRM»: BankDetailTable, ContactCompanyTable, CustomTypeTable, DealSumStatisticsTable, EntityConfigTable, EntityContactTable, InvoiceSumStatisticsTable, InvoiceTable.

Исходный файл: source/crm/lib/binding/dealcontact.php

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