Как добавить поле зависящее от другого поля BPMonline 7.2.0.900
Добрый день!
Нужно создать 2 поля на странице продажи. В первом выбирается тип, во втором выбирается значения соответствующие выбранному типу.
Как это можно осуществить?
Нравится
Довольно просто. По аналогии с полями контакт-контрагент:
{ type: Terrasoft.core.enums.ViewModelSchemaItem.ATTRIBUTE, name: 'Contact', columnPath: 'Contact', dataValueType: Terrasoft.DataValueType.LOOKUP, visible: true, rules: [ { ruleType: BusinessRuleModule.enums.RuleType.FILTRATION, autocomplete: true, autoClean: false, baseAttributePatch: 'Account', comparisonType: Terrasoft.ComparisonType.EQUAL, type: BusinessRuleModule.enums.ValueType.ATTRIBUTE, attribute: 'Account' } ] },
Здравствуйте, Василий!
Попробуйте воспользоваться предоставленной выше рекомендацией . Также советую обратить Ваше внимание на топик Настройка логики полей в BPMonline 7.0.
Акмаль, спасибо за предоставленный совет.
Приятного дня!
я делал по аналогии.
Этот код нужно вставлять в замещающий клиентский модуль же?
Я его вставлял туда, но у меня в результате просто белое окно при патытке редактировать продажу.
Затем я удалил содержимое процедуры и опубликовал еще раз, в замещающем клиентском модуле. Вот что оставил, но при нажатии на изменить продажу все ровно чистый экран:
define('OpportunityPage', ['terrasoft', 'Opportunity', 'OpportunityPageStructure', 'OpportunityPageResources'], function(Terrasoft, Opportunity, structure, resources) { return structure; });
При этом, потом если заходить в замещающий модуль для редактирования кода, всплывает сообщение "Не удалось загрузить Silverlight Plug-In". Он начинает подгружаться, только после перезапуска сайта и выключения/включения плагина.
Акмаль, куда вообще нужно вставлять этот код???
Спасибо за Ваше обращение. Мы зарегистрировали его в Службе технической поддержки и назначили специалиста, который сможет Вас компетентно проконсультировать по данному вопросу.
Спасибо, все работает !!!
Но, у меня тогда еще вопрос:
Почему у меня без копирования всего кода все работало при добавлении детали?
Код в замещающем модуле, куда добавлял деталь:
define('AccountPage', ['terrasoft', 'Account', 'AccountPageStructure', 'AccountPageResources'], function(Terrasoft, Account, structure, resources) { structure.userCode = function() { this.schema.rightPanel.push({ name: 'Product', schemaName: 'UsrSupplierProductDetail', type: Terrasoft.ViewModelSchemaItem.DETAIL, filterPath: 'UsrSupplier', filterValuePath: 'Id', caption: resources.localizableStrings.SupplierProductDetailCaption, visible: true, collapsed: true, leftWidth: '60%', rightWidth: '40%', wrapContainerClass: 'control-group-container' }); }; return structure; });
Когда я добавлял деталь, я код не копировал из страницы контрагента, и пустого экрана у меня не было (все работало). Когда я начал добавлять поле, я опирался на это и не копировал код из родительского модуля. В результате, у меня получился просто пустая страничка продажи. Вопрос: "Почему у меня без копирования всего кода все работало при добавлении детали?"