Октябрь 19, 2017
Теги: Хайлоадблоки, ORM, Хранение данных
Добавление хайлоадблока и создание полей.
Добавление хайлоадблока:
Создание поля типа "Строка", обязательное:
$obUserField = new \CUserTypeEntity;
$arLangFields = array("EDIT_FORM_LABEL","LIST_COLUMN_LABEL","LIST_FILTER_LABEL",/*"ERROR_MESSAGE","HELP_MESSAGE"*/);
$arFields = array(
'ENTITY_ID' => 'HLBLOCK_'.$HLBLOCK_ID, // Строковый идентификатор сущности
'FIELD_NAME' => 'UF_FIELD_NAME', // Код поля
'USER_TYPE_ID' => 'string', // Тип
'XML_ID' => '', // Внешний код
'SORT' => '100', // Сортировка
'MULTIPLE' => NULL, // Множественное
'MANDATORY' => 'Y', // Обязательное
'SHOW_FILTER' => 'E', // Показывать в фильтре списка
'SHOW_IN_LIST' => NULL, // Показывать в списке
'EDIT_IN_LIST' => NULL, // Разрешить редактирование в списке
'IS_SEARCHABLE' => NULL, // Индексировать модулем поиска
'SETTINGS' => array( // Дополнительные настройки
'DEFAULT_VALUE' => '', // Значение по умолчанию
'SIZE' => '60', // Ширина поля
'ROWS' => '1', // Высота поля
'MIN_LENGTH' => '0', Минимальная длина строки
'MAX_LENGTH' => '0', // Максимальная длина строки
'REGEXP' => '', // Регулярное выражение для проверки значения
),
);
foreach($arLangFields as $LANG_FIELD)
{
$arFields[$LANG_FIELD]["ru"] = "Название поля";
$arFields[$LANG_FIELD]["en"] = "Field name";
}
$ID = $obUserField->Add($arFields);
if(!$ID)
$arErrors[] = $GLOBALS["APPLICATION"]->GetException();