Всем доброго времени суток.
Версия 7.10.
Задача по сути состоит в доработке мобильного приложения. Как я понял, взаимодействия между колонками в мобильном приложении регулируются бизнес-правилами. Как правильно подключить правило, может быть есть какой-нибудь гайд?
Для примера на детали "Продукт в продаже" я хочу поменять правило, в соответствии с которым в случае, если для количества задано отрицательное значение в колонку выставлялось значение 0, а не 1, как сейчас + дополнительно, если для логической колонки UsrService "Услуга" выставлено значение true, то колонка Quantity выставлялась 0 и блокировалась для изменения.
Для этого я создал файл UsrMobileOpportunityProductInterestModelConfig в пакете Custom и добавил там следующий код по аналогии с оригиналом:
Terrasoft.sdk.Model.addBusinessRule("OpportunityProductInterest", {
name: "UsrOpportunityProductInterestQuantityBelowZeroRule",
ruleType: Terrasoft.RuleTypes.Custom,
triggeredByColumns: ["Quantity"],
events: [Terrasoft.BusinessRuleEvents.ValueChanged, Terrasoft.BusinessRuleEvents.Save],
executeFn: function(model, rule, column, customData, callbackConfig) {
if (model.get("Quantity") 0) {
model.set("Quantity", 0, true);
}
Ext.callback(callbackConfig.success, callbackConfig.scope);
}
});
Далее в файле MobileApplicationManifestDefaultWorkplace в том же пакете Custom в Models пытаюсь подключить созданный файл:
"OpportunityProductInterest": {
"ModelExtensions": [
"MobileOpportunityProductInterestModelConfig",
"UsrMobileOpportunityProductInterestModelConfig"
]
},
При синхронизации и загрузке один файл судя по всему добавился (вместо 232 стало 233). И всё равно при изменении в этом случае получаю в количестве 1 вместо 0.
Помимо этого, в браузерном эмуляторе приложения почему-то не доступно рабочее место "Полевые продажи", но это отдельно.