Уважаемые форумчане.
Вопрос по версии 7.6
Не получается сделать фильтрацию на детали.
Создал деталь активностей связанных контрагентов Activity на странице контрагента. Она похожа на деталь
Ативности в контрагенте, только она должна выдавать перечень активностей не текущего контрагента,
а активности контрагентов, которые связаны с текущим контрагентом. Связи контрагентов хранятся во
вьюхе VwAccountRelationship. В ней есть колонки AccountId и RelatedAccountId.
Сделал запрос
SELECT * FROM Activity
INNER JOIN VwAccountRelationship ON Activity.AccountId = VwAccountRelationship.RelatedAccountId
WHERE VwAccountRelationship.AccountId = 'a40cfdfb-cd46-4c63-9448-44110861c12c'
INNER JOIN VwAccountRelationship ON Activity.AccountId = VwAccountRelationship.RelatedAccountId
WHERE VwAccountRelationship.AccountId = 'a40cfdfb-cd46-4c63-9448-44110861c12c'
a40cfdfb-cd46-4c63-9448-44110861c12c - Id текущего контрагента.
Этот запрос выдает верный результат. Там всего одна запись.
Но сделать с помощью фильтра на js не получается.
Пробовал следующий код, но он выдает кучу ненужных записей.
"Activity": {
"schemaName": "SuSchema1Detail",
"entitySchemaName": "Activity",
"filter": {
"detailColumn": "Account",
"masterColumn": "Id"
},
filterMethod: "activityFilter"
}
methods: {
activityFilter: function() {
var currentAccount = this.get("Id");
var filterGroup = Ext.create("Terrasoft.FilterGroup");
filterGroup.add("CurrentAccountRelatedAccounts", Terrasoft.createColumnFilterWithParameter(Terrasoft.ComparisonType.EQUAL,
"=[VwAccountRelationship:RelatedAccount:Account].Account", currentAccount));
return filterGroup;
}
}
"schemaName": "SuSchema1Detail",
"entitySchemaName": "Activity",
"filter": {
"detailColumn": "Account",
"masterColumn": "Id"
},
filterMethod: "activityFilter"
}
methods: {
activityFilter: function() {
var currentAccount = this.get("Id");
var filterGroup = Ext.create("Terrasoft.FilterGroup");
filterGroup.add("CurrentAccountRelatedAccounts", Terrasoft.createColumnFilterWithParameter(Terrasoft.ComparisonType.EQUAL,
"=[VwAccountRelationship:RelatedAccount:Account].Account", currentAccount));
return filterGroup;
}
}
Заранее благодарен.
Нравится
1 комментарий
8 ноября 2016 12:42
Задача решена. Кстати код выше верный, если кому интересно
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать