Ошибка при исполнении запроса, с участием колонок которые не запрашивали.

Во время выполнения запроса:

var select = Ext.create("Terrasoft.EntitySchemaQuery", {
        rootSchemaName: "DimensionCustom"
});
select.addColumn("EntitySchemaUId", "EntitySchemaUId");
var levelColumn = select.addColumn("[ForecastDimensionCustom:DimensionCustom:Id].Level");
levelColumn.orderPosition = 1;
levelColumn.orderDirection = this.Terrasoft.OrderDirection.ASC;
select.addColumn("[ForecastDimensionCustom:DimensionCustom:Id].Id", "ForecastDimensionId");
select.filters.addItem(this.Terrasoft.createColumnFilterWithParameter(
        this.Terrasoft.ComparisonType.EQUAL, "[ForecastDimensionCustom:DimensionCustom:Id].ForecastCustom", forecastId));
select.rowCount = 1;
select.getEntityCollection(function(response) {
        if (response.success) {
                var collection = response.collection;
                if (collection && collection.getCount() > 0) {
                        var item = collection.getItems()[0];
                        if (item) {
                                this.set("EntitySchemaUId", item.get("EntitySchemaUId"));
                                this.set("ForecastDimensionId", item.get("ForecastDimensionId"));
                        }
                        if (callback) {
                                callback.call(this);
                        }
                }
        }
}, this);

Получаю Ошибки при исполнении запроса:

Недопустимое имя столбца "DimensionCustomId".
↵Недопустимое имя столбца "ForecastCustomId

Но я никак не могу понять, откуда такие имена колонок взялись - ведь при построении запроса такие колонки не в одной схеме ESQ не указываются.

PS: Объекты ForecastDimensionCustom и DimensionCustom являются копиями базовых объектов из CoreForecast, см.прикрепленные файлы.

Нравится

3 комментария

Здравствуйте, Илья.

Проверьте правильность названия колонок в созданных объектах, а так ж в базе данных. Так же переопубликуйте объекты и обновите структуру базы данных.

Для отладки ошибки будет полезным посмотреть какой запрос отправляется в базу данных при помощи Sql server managment studio или же утилиты fiddler2.

А как можно посмотреть запрос через Sql server managment studio ?

"Севостьянов Илья Сергеевич" написал:

А как можно посмотреть запрос через Sql server managment studio ?


В смысле профайлером :)

Показать все комментарии