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

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

userConnection
User connection.
summaryColumns
Collection of columns for which the select query for totals is built.

Glossary Item Box

Gets the select query for the totals (aggregate values) for the specified collection of columns of the current EntitySchemaQuery instance, using the specified user connection.

Синтаксис

public Select GetSummarySelectQuery( 
   UserConnection userConnection, 
   EntitySchemaQueryColumnCollection summaryColumns 
)

Параметры

userConnection
User connection.
summaryColumns
Collection of columns for which the select query for totals is built.

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

The Terrasoft.Core.DB.Select instance of the select query.

Исключения

ИсключениеОписание
SelectFromVirtualSchemaExceptionWhen trying to build the select query to the virtual schema.
Terrasoft.Common.ArgumentNullOrEmptyExceptionIf the null value is passed as the summaryColumns parameter, or if the collection of columns has no items.

Пример

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

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

// В запрос добавляются колонки CreatedOn и ModifiedOn, для которых задается тип функции для подсчета 
// итога по этим колонкам.
esqResult.AddColumn("CreatedOn").SummaryType = AggregationType.Count;
esqResult.AddColumn("ModifiedOn").SummaryType = AggregationType.Count;

// Получение коллекции колонок запроса, для которых вычисляются итоговые значения.
var esqSummaryColumns = esqResult.GetSummaryColumns();

// Получение текста sql-запроса для формирования итоговых значений для колонок из коллекции 
// esqSummaryColumns.
var summarySqlText = esqResult.GetSummarySelectQuery(UserConnection, esqSummaryColumns).GetSqlText();

// Текст sql-запроса для формирования итоговых значений.

// MS SQL:
// SELECT
//            COUNT(*) [CreatedOn],
//            COUNT(*) [ModifiedOn]
// FROM
//            (
// SELECT
//            [Contact].[CreatedOn] [CreatedOn],
//            [Contact].[ModifiedOn] [ModifiedOn]
// FROM
//            [dbo].[Contact] [Contact]
// GROUP BY
//            [Contact].[CreatedOn], [Contact].[ModifiedOn]) [SubSelectSource]

// Oracle:
// SELECT
//            COUNT(*) "CreatedOn",
//            COUNT(*) "ModifiedOn"
// FROM
//            (
// SELECT
//            "Contact"."CreatedOn" "CreatedOn",
//            "Contact"."ModifiedOn" "ModifiedOn"
// FROM
//            "Contact" "Contact"
// GROUP BY
//            "Contact"."CreatedOn", "Contact"."ModifiedOn") "SubSelectSource" 

Смотри также

© Terrasoft 2002-2017.

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

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