Добрый день!
Подскажите, пожалуйста, как правильно обратиться к результату выполнения запроса с использованием прямых связей.
Вот такой пример
есть объект сервис, берем из него в запросе контрагента владельца сервиса,
и значение контрагента получаем и записываем.
var serviceItem = this.get("ServiceItem");
if (!serviceItem) {
return;
}
var select = this.Ext.create("Terrasoft.EntitySchemaQuery", {
rootSchemaName: "ServiceItem"
});
select.addColumn("Owner.Account");
select.filters.add("ServiceItemIdFilter",
select.createColumnFilterWithParameter(
this.Terrasoft.ComparisonType.EQUAL, "Id", serviceItem.value));
select.getEntityCollection(function(result) {
if (result.success && result.collection.getCount()) {
var entity = result.collection.getByIndex(0);
this.set("UsrColumn", entity.values.Owner.Account);
}
}, this);
Вопрос - как правильно получить здесь значение контрагента ответственного в последней строке?
Такой способ неправильный entity.values.Owner.Account...
Если бы в select получили бы просто select.addColumn("Owner"),
то обратиться можно было бы entity.values.Owner
А как правильно обращаться в случае более сложного селекта select.addColumn("Owner.Account")?
Подскажите, пожалуйста
entity.values.Owner
Нравится
Можно добавить колонку в select следующим образом:
select.addColumn("Owner.Account","OwnerAccount");
И затем получить ее по заданному имени:
this.set("UsrColumn", entity.get("OwnerAccount"));