Обязательность полей при отклонении визы. BPM 7.6
Здравствуйте!
Подскажите пожалуйста, возможно ли сделать поле комментарий при отклонении визы обязательным?
Нравится
Александр, здравствуйте!
Проконсультировался с Product Owner'ом продукта.
К сожалению изменение данного функционала невозможно выполнить пользовательски.
Мы зарегистрировали Ваше обращение для реализации в будущих версиях продукта.
Спасибо!
Добрый день Александр!!!
предлагаю вам вариант решения вашей проблемы. Для решения вашего вопроса требуется выполнить замещения схемы VisaHelper. В данной схеме требуется заместить Три функции. Ниже привожу листинг данных функций.
function baseAction(caption, buttonCaption, entity, action, callback, scope) { var checkRightCallback = function() { Terrasoft.utils.inputBox(caption, function(result, arg) { if (result === Terrasoft.MessageBoxButtons.YES.returnCode) { var comment = prepareComment(arg.name.value); action.apply(scope || this, [entity, comment, callback]); } }, [{ className: 'Terrasoft.Button', caption: buttonCaption, returnCode: 'yes' }, 'cancel'], this, { name: { dataValueType: Terrasoft.DataValueType.TEXT, caption: resources.localizableStrings.UpoComments, customConfig: { className: 'Terrasoft.MemoEdit', height: '77px' }, isRequired: true } }, { defaultButton: 0, style: { borderStyle: 'ts-messagebox-border-style-blue ts-messagebox-border-no-header', buttonStyle: 'blue' } } ); };
function reject(entity, comment, callback) { if (Ext.isEmpty(comment)) { this.showInformationDialog(resources.localizableStrings.UpoCommentsIsEmptyError); return; } setStatus(entity, rejectStatus, comment, callback, this); }
function approve(entity, comment, callback) { if (Ext.isEmpty(comment)) { this.showInformationDialog(resources.localizableStrings.UpoCommentsIsEmptyError); return; } setStatus(entity, approveStatus, comment, callback, this); }
Во вложении прилагаю MD файл замещенной схемы VisaHelper
Михаил, а возможно сделать так, чтобы окно визирования не закрывалось при подтверждении или отклонении визы?
Александр, судя по
this.methods.approve = function() {
VisaHelper.approveAction(this, this.onSaved, this);
};
в VisaPage, попробуйте перекрыть метод onSaved, не вызывая callParent