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

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

columnNames
Перечислитель имен колонок запроса.

Glossary Item Box

Для заданного перечня имен колонок возвращает коллекцию выражений колонок, для которых вычисляются итоговые значения.

Синтаксис

Параметры

columnNames
Перечислитель имен колонок запроса.

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

Коллекция выражений колонок, для которых вычисляются итоговые значения.

Исключения

ИсключениеОписание
Terrasoft.Common.InvalidObjectStateExceptionЕсли у колонки с именем из перечислителя columnNames не определен тип агрегирующей функции либо если данная колонка не используется для построения результирующего sql-запроса.

Пример

В данном примере продемонстрировано, как построить запрос, возвращающий итоговые значения только для тех колонок, имена которых переданы в коллекции.
// Получение экземпляра менеджера схем объектов.
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-2016.

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

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