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

FieldTable

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

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

Цепочка наследования

Является наследником класса Bitrix\Main\ORM\Data\DataManager.

Методы

Метод Описание С версии
public static function removeByTypeId(int $typeId): Result Удаляет все записи из таблицы для фильтра TYPE_ID = $typeId. Используется при удалении процесса.

Возвращает объект Bitrix\Main\Result

public static function removeByTypeId(int $stageId): Result Удаляет все записи из таблицы для фильтра STAGE_ID = $typeId. Используется при удалении стадии.

Не рекомендуется использовать этот метод при $stageId = 0 - наверняка удалится много того, чего не должно было удаляться.

Возвращает объект Bitrix\Main\Result

public static function getGroupedList(int $typeId, int $stageId, bool $isFullInfo = false): array Возвращает массив настроек, сгруппированный по видимости и коду поля.

Если $isFullInfo = false, то в значении только true. Если $isFullInfo = true, то в значении полный массив строки из БД.

В следующем примере поле UF_RPA_1_NAME выводится в быстрой форме создания и в карточке на канбане.

// $isFullInfo = false;
[
	'kanban' => [
		'UF_RPA_1_NAME' => true,
		'UF_RPA_1_1246818523891' => true, 
	], 
	'create' => [
		UF_RPA_1_NAME' => true,
	],
];

// $isFullInfo = true;
[
	'kanban' => [
		'UF_RPA_1_NAME' => [
			'ID' => '1',
			'TYPE_ID' => '1',
			'STAGE_ID' => '0',
			'FIELD' => 'UF_RPA_1_NAME',
			'VISIBILITY' => 'kanban',
		],
		'UF_RPA_1_1246818523891' => [...], 
	], 
	'create' => [
		'UF_RPA_1_NAME' => [...],
	],
];
public static function mergeSettings(int $typeId, int $stageId, array $fields, string $visibilityType = null): Result Метод производит сохранение актуальных настроек для типа $typeId на стадии $stageId из массива $fields. Если передан $visibilityType, то сохранение будет произведено только для этого типа видимости. Это нужно для сохранения только одного набора настроек, чтобы остальные не сбрасывались.

Этот метод сразу делает запросы к БД - удаляет лишние настройки, добавляет новые.

Возвращает объект Bitrix\Main\Result.

public static function getVisibilityTypes(): array Возвращает массив доступных значений для поля VISIBILITY

[
	'visible',
	'editable',
	'mandatory',
	'kanban',
	'create',
];

Поля таблицы

Поле Описание Тип Обяз.
ID Int
TYPE_ID Идентификатор процесса.Int Да
STAGE_ID Идентификатор стадии. Если в этом поле записан 0, то эта настройка распространяется на все стадии.Int Да
FIELD Код пользовательского поля.Строка Да
VISIBILITY Тип настройки, принимает одно из значений:
  1. visible - если у поля есть эта настройка, то его значение отображается при просмотре. По умолчанию считается, что все поля видимы везде и на данный момент этот вариант не используется
  2. editable - если у поля есть эта настройка, то его значение доступно для изменения на стадии. По умолчанию все поля везде можно редактировать, на данный момент не используется
  3. mandatory - аналогично настройка обязательности поля на стадии. По умолчанию все поля не обязательны, на данный момент не используется
  4. kanban - поля с этой настройкой отображаются в карточке просмотра в канбане
  5. create - поля с этой настройкой выводятся в быстрой форме создания элемента в канбане
Строка Да


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

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

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

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

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Наверх