Документация для разработчиков
Темная тема

UserFieldTable

Описание и методы

Класс-таблет для работы с таблицей настроек пользовательских полей

Это таблет был добавлен позже исходного апи CUserTypeEntity. Поэтому он используется для простого доступа к существующим данным. Для изменения записей надо пользоваться старым API.

Языковые названия для полей хранятся в отдельной таблице UserFieldLangTable.

Методы

Метод Описание С версии
public static function getLabelsReference(string $referenceName = null, string $languageId = null): ORM\Fields\Relations\Reference Метод возвращает поле для связи с таблицей языковых названий полей.

Параметры:
  • $referenceName - имя поля, по умолчанию LABELS
  • $languageId - идентификатор языка
public static function getLabelFields(): array Возвращает массив названий полей, содержащих языковые фразы из связанной таблицы.
public static function getLabelsSelect(string $referenceName = null): array Возвращает массив для select метода getList с выборкой языкозависимых фраз из связанной таблицы.

Параметры:
  • $referenceName - имя поля, по умолчанию LABELS
public static function getFieldData(int $id): ?array Метод возвращает данные о настройках поля с идентификатором $id. Если записи нет, вернут null.

Параметры:
  • $id - идентификатор записи

Поля таблицы

  • ID
  • ENTITY_ID Строковый идентификатор сущности. Обязательное
  • FIELD_NAME Код поля. Обязательное
  • USER_TYPE_ID Код типа поля. Обязательное
  • XML_ID Внешний строковый идентификатор
  • SORT Индекс сортировки
  • MULTIPLE Булевый флаг множественности (N или Y). По умолчанию N
  • MANDATORY Булевый флаг обязательности (N или Y). По умолчанию N
  • SHOW_FILTER Булевый флаг наличия поля в фильтре (N или Y). По умолчанию N
  • SHOW_IN_LIST Булевый флаг наличия поля в списке (N или Y). По умолчанию N
  • EDIT_IN_LIST Булевый флаг разрешения редактирования в списке (N или Y). По умолчанию N
  • IS_SEARCHABLE Булевый флаг наличия поиска по этому полю (N или Y). По умолчанию N
  • SETTINGS Сериализованный (через serialize) массив дополнительных настроек поля, которые зависят от типа



Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
3
Руслан Зажирский
Сообщение не промодерировано, возможны ошибки и неточности.
Пример получения пользовательских полей с названиями:
Код
$userFields = \Bitrix\Main\UserFieldTable::getList(array (
   'select'   =>   array ('ID', 'FIELD_NAME', 'ENTITY_ID', 'USER_TYPE_ID', 'MULTIPLE', 'SETTINGS', 'TITLE'),
   'filter'   =>   array (
      '=ENTITY_ID'                     =>   'USER',
      '=MAIN_USER_FIELD_TITLE_LANGUAGE_ID'   =>   'ru',
   ),
   'runtime'   =>   array (
      'TITLE'         =>   array (
         'data_type'      =>   \Bitrix\Main\UserFieldLangTable::getEntity(),
         'reference'      =>   array (
            '=this.ID'      =>   'ref.USER_FIELD_ID',
         ),
      ),
   ),
));
while ($arUserField = $userFields->fetch()):
   var_dump($arUserField);
endwhile;
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Наверх