1. В код страницы, на которой мы будем добавлять нашу кнопку, добавляем зависимость страницы от модуля ProcessModuleUtilities. Пример:
define("ContractPageV2", ["RightUtilities","ProcessModuleUtilities"], function(RightUtilities,ProcessModuleUtilities)
2. Добавляем в блок diff[] страницы редактирования раздела следующий код:
{ "operation": "insert", "name": "YourButtonName", // название нашей кнопки (используется в коде, пользователь не видит) "values": { "itemType": 5, "style": "green", //цвет кнопки. Выбор из наших стандартных "classes": { "textClass": ["actions-button-margin-right"], //чтобы при добавлении еще одной кнопки был отступ справа "wrapperClass": ["actions-button-margin-right"] }, "caption": { // заголовок вашей кнопки (который отображается пользователю) "bindTo": "Resources.Strings.YourButtoncaptionLocalizableString" // можно задать явно. Например, "caption": "Красивая кнопка" }, "click": { "bindTo": "onYourButtonClick" // Название метода, который будет отрабатывать при клике на кнопку }, "visible": true, //Отвечает за видимость кнопки "enabled": true //для ознакомления, можно удалить. Отвечает за активность кнопки }, "parentName": "LeftContainer", "propertyName": "items", "index": 10 //следующая кнопка будет иметь индекс 11 и т.д. }
3. Добавляем в блок methods{} страницы редактирования раздела следующий код:
onYourButtonClick: function() { //название метода, указанное при добавлении кнопки ProcessModuleUtilities.executeProcess({ sysProcessName: "YourProcessName", //имя вашего процесса parameters: { ParamName: this.get("Id"), //слева название параметра процесса, в который мы передаем то, что справа }, callback: function(item) { //этот блок не обязательнен this.onReloadCard(); //перезагружает страницу после окончания БП this.hideBodyMask(); //не выводит заглушку загрузки на карточке }.bind(this) }); }
4. Дублируем код для кнопки из пункта 2 в блок diff[] секции раздела. Все тоже самое, кроме атрибута "click": и нового "tag" (в блоке "values"):
"click": { "bindTo": "onCardAction" }, "tag": "onYourButtonClick", //название метода, указанное при добавлении кнопки
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать