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

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

comparisonType
Тип сравнения.
leftExpressionColumnPath
Путь к колонке, содержащей выражение левой части фильтра.
rightExpressionParameterValues
Перечислитель значений параметров из правой части фильтра.
useDisplayValue
Признак типа значения колонки-справочника, которое используется в фильтре: true - значение для отображения; false - хранимое значение.

Glossary Item Box

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

Синтаксис

Параметры

comparisonType
Тип сравнения.
leftExpressionColumnPath
Путь к колонке, содержащей выражение левой части фильтра.
rightExpressionParameterValues
Перечислитель значений параметров из правой части фильтра.
useDisplayValue
Признак типа значения колонки-справочника, которое используется в фильтре: true - значение для отображения; false - хранимое значение.

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

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

Пример

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

// Создание экземпляра результирующего запроса.
var esqResult = new EntitySchemaQuery(esqManager, "Country");
esqResult.AddColumn("[City:Country:Id].Name");

// Определяем список значений параметров.
var filterValues = new Collection<object>
{
    "Россия",
    "Украина"
};

// Создание экземпляра фильтра с заданными параметрами.
var filter = esqResult.CreateFilterWithParameters(FilterComparisonType.Equal,
                        "Name", filterValues, false);
// Добавление фильтра в коллекцию фильтров результирующего запроса.
esqResult.Filters.Add(filter);

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

// Установление признака, что параметры будут добавлены в запрос как значения.
esqSelectQuery.BuildParametersAsValue = true;

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

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

// MS SQL:
// SELECT
//          [City].[Name] [City.Name]
// FROM
//          [dbo].[Country] [Country]
//LEFT OUTER JOIN 
//          [dbo].[City] [City] ON ([City].[CountryId] = [Country].[Id])
// WHERE
//          [Country].[Name] IN (N'Россия', N'Украина') 

Смотри также

© Terrasoft 2002-2016.

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

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