ParentFieldManager
Внимание! Информация дана для ознакомления. Этот класс в ближайшее время может подвергнуться рефакторингу. Пожалуйста, не используйте его в своём коде.
\Bitrix\Crm\Service\ParentFieldManager
- объект-сервис, получаемый через контейнер.
Во многих местах необходимо отобразить связи между элементами. Данный сервис позволяет пакетно получить данные о родительских элементах для дальнейшего отображения в интерфейсах CRM.
Метод | Описание | С версии |
---|---|---|
ParentFieldManager::getParentFieldName( $entityTypeId ): string | Вернет код поля родителя по идентификатору типа CRM $entityTypeId. Например, если $entityTypeId = 128, то результат будет PARENT_ID_128 | |
ParentFieldManager::getEntityTypeIdFromFieldName( string $fieldName ): int | Вернет идентификатор типа CRM родителя по коду поля $fieldName. Например, если $fieldName = PARENT_ID_128, то результат будет 128 | |
ParentFieldManager::isParentFieldName( string $fieldName ): bool | Вернет true, если $fieldName является кодом поля родителя. | |
ParentFieldManager::getParentFields( int[] $itemIds, string[] $entityFields, int $entityTypeId ): array[] | Метод вернет многоуровневый массив с описанием родителей для переданных элементов:
Возвращаемый массив имеет следующую структуру: $parents = [ // Ключи верхнего уровня (16 и 34) - это ID элементов из $itemIds // Если у переданного элемента нет родителей, то элемента с таким ключом в массиве нет // (isset($parents[$itemId]) === false) 16 => [ // Ключи второго уровня (2 и 7) - это entityTypeId родительских сущностей 2 => [ 'id' => '84', 'code' => 'PARENT_ID_2', 'entityDescription' => 'Сделка', 'title' => 'Название конкретного элемента, экранированное', 'url' => '/crm/deal/details/84/', 'value' => 'Название конкретного элемента, экранированное', ], 7 => [ 'id' => '657', 'code' => 'PARENT_ID_7', 'entityDescription' => 'Предложение', 'title' => 'Название конкретного элемента, экранированное', 'url' => '/crm/quote/details/657/', 'value' => 'Название конкретного элемента, экранированное', ], ], 34 => [ 7 => [ 'id' => '485', 'code' => 'PARENT_ID_7', 'entityDescription' => 'Предложение', 'title' => 'Название конкретного элемента, экранированное', 'url' => '/crm/quote/details/485/', 'value' => 'Название конкретного элемента, экранированное', ], ], ]; |
© «Битрикс», 2001-2024, «1С-Битрикс», 2024