Публикация
Получение через esq значений колонки помеченной как Displayed value
31 мая 2018 04:08
Вопрос
Делаю ESQ с rootSchemaName: "X". Как мне узнать, какое свойство этого объекта является его текстовым представлением (значение колонки, указанной в скриншоте)?
На некоторые запросы, написанные не мной приходит ответ. В ответе объекты и у объектов есть свойство displayValue, вот мне нужно такое же.
Пример кода
var select = Ext.create("Terrasoft.EntitySchemaQuery", { rootSchemaName: dimensionItem.get("SysSchemaName") }); select.getEntityCollection(function(response) { if (response.success) { var collection = response.collection; if (collection && collection.getCount() > 0) { } } })
Ответ
Для получения через esq значений колонки помеченной в объекте как Displayed name, Вам необходимо воспользоваться методом esq esq.addMacrosColumn().
Пример кода:
var esq = this.Ext.create("Terrasoft.EntitySchemaQuery", { rootSchemaName: 'UsrTestObj' }); esq.addMacrosColumn(Terrasoft.QueryMacrosType.PRIMARY_DISPLAY_COLUMN, "displayValue"); esq.addMacrosColumn(Terrasoft.QueryMacrosType.PRIMARY_COLUMN, "value"); esq.getEntityCollection(function(result) { if (result.success) { debugger; } }, this);
В результате получаем коллекцию из значений колонок Id и колонки помеченной как Displayed value из таблицы UsrTestObj.
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать