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

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

comparisonType
Тип сравнения.
leftExpressionColumnPath
Путь к колонке, содержащей выражение левой части фильтра.
macrosType
Тип макроса.
rightValue
Значение типа System.DayOfWeek, которое обрабатывается макросом в правой части фильтра.

Glossary Item Box

Возвращает фильтр с заданным типом сравнения для выражения колонки, расположенной по указанному пути, типа макроса и значения типа System.DayOfWeek, которое обрабатывается макросом в правой части фильтра.

Синтаксис

Параметры

comparisonType
Тип сравнения.
leftExpressionColumnPath
Путь к колонке, содержащей выражение левой части фильтра.
macrosType
Тип макроса.
rightValue
Значение типа System.DayOfWeek, которое обрабатывается макросом в правой части фильтра.

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

Экземпляр созданного фильтра IEntitySchemaQueryFilterItem.

Заметки

Данный метод работает только с типом макроса [День недели] (EntitySchemaQueryMacrosType.DayOfWeek). При передаче в качестве параметра macrosType любого другого типа макроса будет генерироваться исключение.

Пример

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

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

// В качестве типа макроса выбирается тип [День недели].
var esqMacrosType = EntitySchemaQueryMacrosType.DayOfWeek;

// Создание выражения типа [День недели].
var esqRightValue = DayOfWeek.Friday;

// Создание экземпляра фильтра с заданными параметрами.
var esqFilter = esqResult.CreateFilter(FilterComparisonType.Equal, "ModifiedOn", esqMacrosType, 
                    esqRightValue);

// Добавление фильтра в коллекцию фильтров результирующего запроса.
esqResult.Filters.Add(esqFilter);

// Параметры в запрос будут добавлены как значения.  
esqResult.GetSelectQuery(UserConnection).BuildParametersAsValue = true;

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

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

// MS SQL:
// SELECT
//          [Contact].[Id] [Id],
//          [Contact].[Name] [Name]
// FROM
//          [dbo].[Contact] [Contact]
// WHERE
//          DATEPART(WEEKDAY, [Contact].[ModifiedOn]) = 6 

Смотри также

© Terrasoft 2002-2016.

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

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