Вопрос

Автозаполнение полей формы реклассификации

Добрый день!

Версия продукта: 7.14.1.935
Bpm Online Service

Идет доработка формы реклассификации в разделе обращений.
"Схема карточки редактирования действия реклассификации"
Был создал замещающий клиентский модуль.

Каким образом можно для кастомных полей прописать, чтобы при открытии формы реклассификации поля заполнялись текущими значениеми из обращения?
 

Нравится

8 комментариев

В этой карточке ReclassificationEditPage аналогичная логика реализована для полей из объекта обращения ServicePact, ServiceItem и Category. Попробуйте для своих полей сделать в коде подобным образом.

Зверев Александр,

Добрый день!
Извините за задержку с ответом. Ожидал оповещения на почту в случае комментариев, но видимо они уже не ходят.
Да, спасибо. Так и делал.
Только не все действия удалось вычленить из того кода. 
Можете подсказать, какая логика в реклассификаторе отвечает за первоначальное заполнение полей при открытии консоли?
Попытки корректировки логики именно в этой части к успеху пока не привели.

О какой консоли речь?

Зверев Александр,

Есть карточка Обращения. В ней заполнены необходимые поля.
Далее открываю консоль Реклассификации.
Вопрос: куда копать, чтобы найти логику заполнения полей консоли Реклассификации при ее открытии?

Ранее коробочный js-файл консоли реклассификации крутил, но не смог верным образом изменить заполнение новых полей.

Смотрите код ReclassificationEditPage. Что такое «консоль реклассификации» — увы, не знаю, стандартно такого механизма в системе нет. Возможно, это дополнение или проектная доработка.

Зверев Александр,

Возможно я неверно выразился.
Из карточки заявки выбираем действие: "Реклассифицировать обращения"
js-страница: ReclassificationEditPage
Ее я и называл консолью.

В CasePage вижу нечто похожее на искомое:

/**
 * Prepares Reclassification properties name.
 * @protected
 * @virtual
 * @return {Array} Reclassification properties name.
 */
prepareReclassificationPropertyNames: function() {
	return ["Id", "Contact", "Account", "Category", "ServiceItem", "ServicePact", "ServiceCategory"];
},
.....
/**
 * Returns Reclassification default values.
 * @protected
 * @virtual
 * @return {Array} Reclassification default values.
 */
getRunReclassificationDefaultValues: function() {
	var defaultValues = [];
	var propertyNames = this.prepareReclassificationPropertyNames();
	Terrasoft.each(propertyNames, function(name) {
		this.addDefaultValue(defaultValues, name);
	}, this);
	return defaultValues;
},
 
.....
/**
 * Returns run Reclassification config.
 * @protected
 * @virtual
 * @return {Array} Run Reclassification config.
 */
getRunReclassificationConfig: function() {
	var defaultValues = this.getRunReclassificationDefaultValues();
	return {
		"schemaName": "ReclassificationEditPage",
		"operation": "add",
		"primaryColumnValue": null,
		"moduleId": this.sandbox.id + "_ReclassificationEditPage",
		"isSeparateMode": false,
		"isInChain": true,
		"defaultValues": defaultValues
	};
},

 

Зверев Александр,

Огромное спасибо!

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