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

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

parentQuery
Запрос к схеме объекта, для которого создается экземпляр функции.
rootSchema
Корневая схема.
columnPaths
Массив путей к колонкам относительно корневой схемы.

Glossary Item Box

Возвращает экземпляр функции EntitySchemaCoalesceQueryFunction для заданных родительского запроса, корневой схемы и массива путей к колонкам.

Синтаксис

Параметры

parentQuery
Запрос к схеме объекта, для которого создается экземпляр функции.
rootSchema
Корневая схема.
columnPaths
Массив путей к колонкам относительно корневой схемы.

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

Созданный экземпляр EntitySchemaCoalesceQueryFunction.

Исключения

ИсключениеОписание
Terrasoft.Common.ArgumentEmptyExceptionЕсли в качестве параметра columnPaths передано значение null.

Пример

В данном примере создается запрос, который созвращает имя контакта и телефон контакта.
// Создание экземпляра менеджера схем объектов.
EntitySchemaManager esqManager = UserConnection.EntitySchemaManager;

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

// Создание массива путей к колонкам - агрумента функции COALESCE.
var columnPaths = new string[]
    {
        "Phone",
        "MobilePhone"
    };

// Создание экземпляра функции COALESCE.
var coalesceFunction = EntitySchemaQuery.CreateCoalesceFunction(esqResult,
                        esqManager.GetInstanceByName("Contact"), columnPaths);

// Добавление сохданной фукнции в качестве колонки к результирующему запросу.
esqResult.AddColumn(coalesceFunction);

// Получение sql-текста результирующего запроса. 
string esqSqlText = esqResult.GetSelectQuery(UserConnection).GetSqlText();

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

// MS SQL:
// SELECT
//            [Contact].[Name] [Name],
//            COALESCE([Contact].[Phone], [Contact].[MobilePhone]) [COALESCE]
// FROM
//            [dbo].[Contact] [Contact]

// Oracle:
// SELECT
//            "Contact"."Name" "Name",
//            COALESCE("Contact"."Phone", "Contact"."MobilePhone") "COALESCE"
// FROM
//            "Contact" "Contact" 

Смотри также

© Terrasoft 2002-2016.

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

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