CAllUserTypeEntity::Add()
Класс: \CAllUserTypeEntity
Сигнатура
public Add(array<string|int, mixed> $arFields[, bool $bCheckUserType = true ]) : int
Описание
Сначала вызывается метод экземпляра CheckFields (то есть $this->CheckFields($arFields) ).
Если проверка прошла успешно, выполняется проверка, существует ли уже такое поле для данной сущности.
Затем, при необходимости, создаются таблицы вида b_uts_[ENTITY_ID] и b_utm_[ENTITY_ID].
После этого метаданные сохраняются в базе данных.
Только после этого изменяется структура таблицы b_uts_[ENTITY_ID].
Массив arFields:
ENTITY_ID - сущность
FIELD_NAME - фактическое имя столбца в базе данных, где будут храниться значения свойства.
USER_TYPE_ID - тип свойства
XML_ID - идентификатор для использования при импорте/экспорте
SORT - порядок сортировки (по умолчанию 100)
MULTIPLE - флаг множественности Y/N (по умолчанию N)
MANDATORY - флаг обязательного ввода значения Y/N (по умолчанию N)
SHOW_FILTER - показывать ли в фильтре административного списка и какой тип использовать. См. ниже.
SHOW_IN_LIST - показывать ли в административном списке (по умолчанию Y)
EDIT_IN_LIST - разрешить редактирование в формах, но не в API! (по умолчанию Y)
IS_SEARCHABLE - поле участвует в поиске (по умолчанию N)
SETTINGS - массив с настройками свойства, зависящими от типа свойства. Они «очищаются» через обработчик типа PrepareSettings.
EDIT_FORM_LABEL - массив языковых сообщений в виде array("ru"=>"привет", "en"=>"hello")
LIST_COLUMN_LABEL
LIST_FILTER_LABEL
ERROR_MESSAGE
HELP_MESSAGE
В случае ошибки перехватывайте исключение приложения!
Значения для SHOW_FILTER:
N - не показывать
I - точное совпадение
E - маска
S - подстрока
Параметры
$arFields
array<string|int, mixed>
$bCheckUserType
bool
= true
Возвращаемое значение
int
Исходный файл: source/main/classes/general/usertype.php:437

