---
title: "Интерфейс IReportFilter"
type: interface
api: [api7]
tags: [interface, api7, ireportfilter]
sources:
  - ireportfilter.html
---

*API интерфейсов. Версия 7 > Документ  > Отчет  > Интерфейс IReportProcess *


## Интерфейс IReportFilter

Интерфейс для управления фильтрами в процессе Создать отчет.
Иерархия
IDispatch
IReportFilter
Описание:
Позволяет управлять фильтром в процессе Создать отчет.
Примечание:
Данный интерфейс можно получить с помощью свойства IReportProcess::ReportFilter.


## Clear - Удалить все условия фильтра

Синтаксис Automation:
```
BOOL Clear();
```
Синтаксис COM:
```
HRESULT Clear( BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
```


## ConditionCount - Количество условий

Тип данных: long
Синтаксис Automation:
```
ConditionCount = Object.ConditionCount    Получить свойство (* )
ConditionCount = Object.GetConditionCount()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ConditionCount( &ConditionCount)    Получить свойство
Свойство позволяет получить количество условий.
```
Примечание:
Свойство только для чтения.


## FilterOperatorType - Тип операторов сравнения

Тип данных: из перечисления ksFilterOperatorTypeEnum
Синтаксис Automation:
```
FilterOperatorType = Object.FilterOperatorType( Index )    Получить свойство(* )
Object.FilterOperatorType( Index ) = FilterOperatorType    Установить свойство (* )
FilterOperatorType = Object.GetFilterOperatorType( Index )    Получить свойство (**)
Object.SetFilterOperatorType( Index, FilterOperatorType )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_FilterOperatorType( Index, &FilterOperatorType )    Получить свойство
Object.put_FilterOperatorType( Index, FilterOperatorType )    Установить свойство
Входные параметры:
long    Index - индекс фильтра.
КOMPAS v24
```


## GetCondition - Получить условия фильтра по индексу

Синтаксис Automation:
```
BOOL GetCondition( long index, VARIANT * uniqId, ksReportFiltersTypeEnum * type, VARIANT * val );
```
Синтаксис COM:
```
HRESULT GetCondition( long Index, VARIANT * UniqId, ksReportFiltersTypeEnum * Type, VARIANT * Val, BOOL * Result );
Входные параметры:
index    - индекс в массиве.
Выходные параметры:
uniqId    - уникальный номер свойства VT_R8,
type    - условие фильтрации,
val    - значение фильтра; тип значения фильтра зависит от типа свойства, для которого задается фильтр.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
```
Примечание:
Свойство только для чтения.


## RemoveCondition - Удалить условия фильтра по индексу

Синтаксис Automation:
```
BOOL RemoveCondition( long index )
```
Синтаксис COM:
```
HRESULT RemoveCondition( long Index, BOOL * Result );
Входные параметры:
index    - индекс в массиве.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
```


## SetCondition - Установить условия фильтра по индексу

Синтаксис Automation:
```
BOOL SetCondition( long index, VARIANT uniqId, ksReportFiltersTypeEnum type, VARIANT Val );
```
Синтаксис COM:
```
HRESULT SetCondition( long Index, VARIANT UniqId, ksReportFiltersTypeEnum Type, VARIANT Val, BOOL * Result );
Входные параметры:
index    - индекс в массиве; -1 - добавить в конец,
uniqId    - уникальный номер свойства VT_R8,
type    - условие фильтрации,
val    - значение фильтра; тип значения фильтра зависит от типа свойства, для которого задается фильтр.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
```
