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

crm.deal.userfield.add

Scope: crm Права на выполнение: для всех

crm.deal.userfield.add(fields)

Создаёт новое пользовательское поле для сделок.

Системное ограничение на название поля - 20 знаков. К названию пользовательского поля всегда добавляется префикс UF_CRM_, то есть реальная длина названия - 13 знаков.

Возвращает ID, который потом можно идентифицировать методом crm.deal.userfield.list.

Параметры

Параметр Описание
fields Набор полей На данный момент:
ENTITY_ID
USER_TYPE_ID
FIELD_NAME
LIST_FILTER_LABEL
LIST_COLUMN_LABEL
EDIT_FORM_LABEL
ERROR_MESSAGE
HELP_MESSAGE
MULTIPLE
MANDATORY
SHOW_FILTER
SETTINGS
LIST
- массив вида array("поле"=>"значение"[, ...]), содержащий описание пользовательского поля.

В том числе содержит поле LIST, которое содержит набор значений списка для пользовательских полей типа Список. Указывается при создании/обновлении поля. Каждое значение представляет собой массив с полями:

  • VALUE - значение элемента списка. Поле является обязательным в случае, когда создается новый элемент.
  • SORT - сортировка.
  • DEF - если равно Y, то элемент списка является значением по-умолчанию. Для множественного поля допустимо несколько DEF=Y. Для не множественного, дефолтным будет считаться первое.
  • XML_ID - внешний код значения. Параметр учитывается только при обновлении уже существующих значений элемента списка.
  • ID - идентификатор значения. Если он указан, то считается что это обновление существующего значения элемента списка, а не создание нового. Имеет смысл только при вызове методов *.userfield.update.
  • DEL - если равно Y, то существующий элемент списка будет удален. Применяется, если заполнен параметр ID.

Полное описание полей можно получить вызовом метода crm.userfield.fields.

Пример #1

BX24.callMethod(
	"crm.deal.userfield.add",
	{
		fields:
		{
			"FIELD_NAME": "MY_STRING",
			"EDIT_FORM_LABEL": "Моя строка",
			"LIST_COLUMN_LABEL": "Моя строка",
			"USER_TYPE_ID": "string",
			"XML_ID": "MY_STRING",
			"SETTINGS": { "DEFAULT_VALUE": "Привет, мир!" }
		}
	},
	function(result)
	{
		if(result.error())
			console.error(result.error());
		else
			console.dir(result.data());
	}
);

Пример #2

BX24.callMethod(
	"crm.deal.userfield.add",
	{
		fields:
		{
			"FIELD_NAME": "MY_LIST",
			"EDIT_FORM_LABEL": "Мой список",
			"LIST_COLUMN_LABEL": "Мой список",
			"USER_TYPE_ID": "enumeration",
			"LIST": [ { "VALUE": "Элемент #1" },
				{ "VALUE": "Элемент #2" },
				{ "VALUE": "Элемент #3" },
				{ "VALUE": "Элемент #4" },
				{ "VALUE": "Элемент #5" } ],
			"XML_ID": "MY_LIST",
			"SETTINGS": { "LIST_HEIGHT": 3 }
		}
	},
	function(result)
	{
		if(result.error())
			console.error(result.error());
		else
			console.dir(result.data());
	}
);



© «Битрикс», 2001-2024, «1С-Битрикс», 2024