Доброго времени суток!
Проблема заключается в следующем:
Расположено две одинаковые детали на одной странице редактирования на разных табах.
при открытии первого таба, кнопка добавления инициализируется нормально, при открытии второго, не срабатывает запись в атрибут значения и не показывается нужная кнопка
attributes: { "isEngineeringDivision": { "dataValueType": Terrasoft.DataValueType.BOOLEAN, "type": Terrasoft.ViewModelColumnType.VIRTUAL_COLUMN, "value": true }, "isNotEngineeringDivision": { "dataValueType": Terrasoft.DataValueType.BOOLEAN, "type": Terrasoft.ViewModelColumnType.VIRTUAL_COLUMN, "value": true } }
methods: { init: function() { this.callParent(arguments); this.checkEnabledButton(); }, checkEnabledButton: function() { this.sandbox.publish("checkUserInAuPublish", null, ["checkUserInAuPublish"]); this.sandbox.subscribe("checkUserInAU", function(result) { this.set("isEngineeringDivision", result); this.set("isNotEngineeringDivision", result === true ? false : true); }, this, ["checkUserInAU"]); } },
Нравится
Попробуйте по-другому объявить эти детали в блоке details.
Вот аналогичный пример:
"SamplesDetail": {
"schemaName": "SampleInKitDetailV2",
"entitySchemaName": "BTSample",
"filter": {
"detailColumn": "BTKitIDLookup",
"masterColumn": "Id"
},
"defaultValues": {
"BTKitIDLookup": {
"masterColumn": "Id"
},
"BTFromSupply": false
},
"filterMethod": "samplesFilter",
"profileKey": "PatientParametersDetail1"
},
Метод фильтрации в данном случае выглядит так:
samplesFilterMethod: function(kitId, isSupply) {
var filterGroup = new Terrasoft.createFilterGroup();
filterGroup.add("KitId", Terrasoft.createColumnFilterWithParameter(
Terrasoft.ComparisonType.EQUAL, "BTKitIDLookup", kitId));
filterGroup.add("SamplesIsSupply", Terrasoft.createColumnFilterWithParameter(
Terrasoft.ComparisonType.EQUAL, "BTFromSupply", isSupply));
return filterGroup;
},
Обратите внимание, что в ситуации, если на разные табы добавляется одна и та же деталь, нужно добавить свойство "profileKey" и оно должно отличаться у одинаковых деталей.
Однако в такой ситуации служба поддержки рекомендует создавать разные детали.
Попробуйте отладиться.
Уточните, возникают ли какие-то ошибки в консоли?
Также сделайте скриншот, чтобы было понятно, что отображается в первом табе и не отображается во втором.