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

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

columnNames
Enumerator of the query column names.

Glossary Item Box

For the specified list of column names, gets the collection of columns for which totals are calculated.

Синтаксис

Параметры

columnNames
Enumerator of the query column names.

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

Collection of column expressions for which totals are calculated.

Исключения

ИсключениеОписание
Terrasoft.Common.InvalidObjectStateExceptionIf the aggregate function type is not defined for the column with the name from the columnNames enumerator, or if this column is not used for building the resulting SQL query.

Пример

В данном примере продемонстрировано, как построить запрос, возвращающий итоговые значения только для тех колонок, имена которых переданы в коллекции.
// Получение экземпляра менеджера схем объектов.
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 esqSummaryColumnsNames = new Collection<string>
{
    "CreatedOn"
};

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

// Текст sql-запроса.

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

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

Смотри также

© Terrasoft 2002-2017.

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

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