Creatio development guide
Это документация Creatio версии 7.8.0. Мы рекомендуем использовать новую версию документации.

EntitySchemaQuery.AddColumn(String,AggregationTypeStrict,EntitySchemaQuery) - метод Смотри также  Пример Terrasoft.Core.Entities - пространство имен > EntitySchemaQuery - класс > AddColumn - метод : AddColumn(String,AggregationTypeStrict,EntitySchemaQuery) - метод C#

columnPath
Путь к колонке схемы относительно корневой схемы.
aggregationType
Тип агрегирующей функции. В качестве параметра передаются значения перечисления типов агрегирующей функции Terrasoft.Common.AggregationTypeStrict.
subQuery
Ссылка на созданный подзапрос, помещенный в колонку.

Glossary Item Box

Создает и добавляет колонку в текущий запрос к схеме объекта в виде подзапроса, возвращающего результат указанной агрегирующей функции, по пути к колонке схемы относительно корневой схемы.

Синтаксис

Параметры

columnPath
Путь к колонке схемы относительно корневой схемы.
aggregationType
Тип агрегирующей функции. В качестве параметра передаются значения перечисления типов агрегирующей функции Terrasoft.Common.AggregationTypeStrict.
subQuery
Ссылка на созданный подзапрос, помещенный в колонку.

Тип возвращаемого значения

Экземпляр созданной колонки EntitySchemaQueryColumn.

Пример

// Получение экземпляра менеджера схем объектов.
var esqManager = UserConnection.GetSchemaManager("EntitySchemaManager") as EntitySchemaManager;

// Создание экземпляра EntitySchemaQuery с корневой схемой "City".
var esqResult = new EntitySchemaQuery(esqManager, "City");

// Экземпляр EntitySchemaQuery, в который будет помещен подзапрос, возвращающий результат агрегирующей функции.
EntitySchemaQuery subResultEsq;

// Добавление колонки в виде подзапроса, возвращающего количество городов в разрезе стран, хранящихся в 
// таблице "Country". 
esqResult.AddColumn("[City:Country].Name", AggregationTypeStrict.Count, out subResultEsq);

// Получение текста результирующего запроса созданного экземпляра EntitySchemaQuery.
string sqlText = esqResult.GetSelectQuery(UserConnection).GetSqlText();

// Текст результирующего sql-запроса:

// MS SQL:
// SELECT
//          (SELECT
//                      COUNT([SubCity].[Id]) [Count]
//              FROM
//                      [dbo].[City] [SubCity]
//              WHERE
//                      [SubCity].[CountryId] = [Country].[Id]) [SubCity]
// FROM
//          [dbo].[Country] [Country]

// Oracle:
// SELECT
//          (SELECT
//                      COUNT("SubCity"."Id") "Count"
//              FROM
//                      "City" "SubCity"
//              WHERE
//                      "SubCity"."CountryId" = "Country"."Id") "SubCity"
// FROM
//          "Country" "Country"  

Смотри также

© Terrasoft 2002-2016.

Был ли данный материал полезен?

Как можно улучшить эту статью?