Класс "Система.ПараметрФильтра"

Свойство Значение

Свойство: Значение

Тип параметра: Соответствует типу параметра в объектной модели.

Свойство содержит значение параметра фильтра.

Пример кода. См. код в свойствах данного класса.

Свойство ОтрицаниеУсловия

Свойство: ОтрицаниеУсловия

Тип параметра: Bool (True, False).

Свойство задает отрицание заданного условия фильтра.

Пример кода.

Задача: показать количество оргединиц, у которых название не равно "директор".

Sub ПримерOLE_ФильтрСубъектовБезДиректора()

   'Получение объекта приложения

   Set oleapp = CreateObject("ByteEnterprise.OleApplication")

   'Запустить Business Studio в редакции и с базой на сервере, указанными ранее.

   'В Диспетчере задач появится Business Studio. В панели задач приложения не будет видно.

   Set client_app = oleapp.ЗапуститьКлиентскоеПриложение("ИмяСервера", "ИмяБазы", "Enterprise")

   'В панели задач появится приложение

   oleapp.ПоказатьКлиентскоеПриложение

 

   'Указываем, что дальнейшая работа будет с Оргединицами

   Set ВсеСубъекты = oleapp.ПолучитьКорневуюГруппуКласса("БизнесМодель.Субъекты")

 

   'Создать фильтр, отбирающий только должности

   Set ФильтрНеДиректор = ВсеСубъекты.СоздатьФильтр

        ФильтрНеДиректор.Условия.Параметры.Название.Значение = "Директор"

        ФильтрНеДиректор.Условия.Параметры.Название.ОтрицаниеУсловия = True

    

   'Выполняем фильтр и определяем количество записей

   Set РезультатФильтрНеДиректор = ФильтрНеДиректор.Выполнить

   КолвоСубъектов = РезультатФильтрНеДиректор.КоличествоЭлементов

 

   'Выводим сообщение

   MsgBox "Количество субъектов без Директора: " + CStr(КолвоСубъектов)

 

End Sub

Свойство ТипФильтрации

Свойство: ТипФильтрации

Результат: Int (целое число от 0 до 4) 

Свойство задает тип фильтрации. При задании условия по умолчанию устанавливается тип фильтрации "Значение".

Допустимые варианты:

0 - Значение,  

1 - Диапазон,

3 - Подфильтр,

4 - Нет.

Задание типа фильтрации отличного от умолчания (Значение) может осуществляться по номеру.

Пример кода.

Задача: определить список показателей, к целевому значению которых будет стремиться компания в указанных год.

Sub ПримерOLE_РаботаСФильтромДиапазон()

   ' Получение объекта приложения

   Set oleapp = CreateObject("ByteEnterprise.OleApplication")

   'Запустить Business Studio Enterprise с базой под именем demo_ole на сервере\\ U6S\SQLEXPRESS2005. В Диспетчере задач появится Business Studio. В панели задач приложения не будет видно.

   Set client_app = oleapp.ЗапуститьКлиентскоеПриложение("ИмяСервера", "ИмяБазы", "Enterprise")

   'В панели задач появится приложение

   oleapp.ПоказатьКлиентскоеПриложение

 

   'Указываем, что дальнейшая работа будет с Показателями

   Set ПоказателиОПУ = oleapp.ПолучитьКорневуюГруппуКласса("БизнесМодель.ПоказателиBSC")

 

   'Создать фильтр, показывающий количество показателей, к достижению которых стремимся в 2014 г.

   Set ФильтрПоказатели = ПоказателиОПУ.СоздатьФильтр

      'Задание условий

      ФильтрПоказатели.Условия.Параметры.ЦелеваяДата.ТипФильтрации = 1 'Диапазон

      ФильтрПоказатели.Условия.Параметры.ЦелеваяДата.Мин = CDate("01.01.2014")

      ФильтрПоказатели.Условия.Параметры.ЦелеваяДата.ВключатьМин = True

      ФильтрПоказатели.Условия.Параметры.ЦелеваяДата.Макс = CDate("31.12.2014")

      ФильтрПоказатели.Условия.Параметры.ЦелеваяДата.ВключатьМакс = True

   'Выполняем фильтр

   Set Результат = ФильтрПоказатели.Выполнить

 

   КолвоПоказатель = Результат.КоличествоЭлементов

 

   MsgBox "Количество показателей, к достижению которых стремимся в 2014: " + CStr(КолвоПоказатель)

 

End Sub

Свойство ОператорСравнения

Свойство: ОператорСравнения

Результат: Int (целое число от 0 до 5)

Оператор сравнения для типа фильтрации "Значение" (см. Cвойство ТипФильтрации). По умолчанию "Равно".

Возможные варианты:

0 - Больше,

1 - БольшеИлиРавно,

2 - Меньше,

3 - МеньшеИлиРавно,

4 - Равно,

5 - Подобный (только для строковых параметров).

Задание оператора сравнения отличного от умолчания (Равно) может осуществляться по номеру.

Пример кода.

Задача: показать количество оргединиц, у которых в названии есть слово "директор".

Sub ПримерOLE_СоздатьФильтрОператорСравнения()

   'Получение объекта приложения

   Set oleapp = CreateObject("ByteEnterprise.OleApplication")

   'Запустить Business Studio в редакции и с базой на сервере, указанными ранее.

   'В Диспетчере задач появится Business Studio. В панели задач приложения не будет видно.

   Set client_app = oleapp.ЗапуститьКлиентскоеПриложение("ИмяСервера", "ИмяБазы", "Enterprise")

   'В панели задач появится приложение

   oleapp.ПоказатьКлиентскоеПриложение

 

   'Указываем, что дальнейшая работа будет с Оргединицами

   SetВсеСубъекты = oleapp.ПолучитьКорневуюГруппуКласса("БизнесМодель.Субъекты")

 

   'Создать фильтр, отбирающий только должности

   SetФильтр = ВсеСубъекты.СоздатьФильтр

   

       'Условие - в названии субъекта содержится слово "директор"

        Фильтр.Условия.Параметры.Название.ОператорСравнения = 5 'строковый параметр, соответствует "~"

        Фильтр.Условия.Параметры.Название.Значение = "%директор%"

    

   'Выполняем фильтр и определяем количество записей

   SetРезультатФильтр = Фильтр.Выполнить

   КолвоДолжностей = РезультатФильтр.КоличествоЭлементов

 

   'Выводим сообщение

   MsgBox"Количество субъектов, у которых в названии есть слово 'директор' : " + CStr(КолвоДолжностей)

 

End Sub

Свойства Мин и Макс

Свойство: Мин

Свойство: Макс

Тип параметра: Соответствует типу параметра в объектной модели.

Минимальное и максимальное значения параметра фильтра для типа фильтрации "Диапазон" (см. Cвойство ТипФильтрации).

Пример кода. См. код в свойстве "ТипФильтрации" (Cвойство ТипФильтрации).

Свойства ВключатьМин и ВключатьМакс

Свойство: ВключатьМин

Свойство: ВключатьМакс

Тип параметра: Bool (True, False)

Свойство логики, управляющей включением минимального и максимального значения в результат фильтрации при типе фильтрации "Диапазон" (см. Cвойство ТипФильтрации). Если логика включена, граничное значение войдет в результат фильтрации. По умолчанию логика включена.

Пример кода. См. код в свойстве "ТипФильтрации" (Cвойство ТипФильтрации).

Свойство Подфильтр

Свойство: Подфильтр

Тип параметра: Система.Фильтр (см. Класс "Система.Фильтр").

Свойство задает вложенный фильтр для данного параметра фильтра. Используется с типом фильтрации "Подфильтр" (см. Cвойство ТипФильтрации). Только для объектных и списковых параметров. Подфильтр строится по тому классу, которому принадлежит параметр.

Пример кода.

Задача:

Sub ПримерOLE_СоздатьФильтрСПодфильтром()

   'Получение объекта приложения

   Set oleapp = CreateObject("ByteEnterprise.OleApplication")

   'Запустить Business Studio в редакции и с базой на сервере, указанными ранее.

   'В Диспетчере задач появится Business Studio. В панели задач приложения не будет видно.

   Set client_app = oleapp.ЗапуститьКлиентскоеПриложение("ИмяСервера", "ИмяБазы", "Enterprise")

   'В панели задач появится приложение

   oleapp.ПоказатьКлиентскоеПриложение

  

   'Указываем, что дальнейшая работа будет с Показателями

   SetПоказателиОПУ = oleapp.ПолучитьКорневуюГруппуКласса("БизнесМодель.ПоказателиBSC")

 

   'Создаем фильтр по единицам деятельности

   SetФильтрПоказатели = ПоказателиОПУ.СоздатьФильтр

         ФильтрПоказатели.Условия.Параметры.ЕдиницаИзмерения.ТипФильтрации = 3 'Подфильтр

   

        'задаем условия подфильтра по единице измерения показателя

        'подфильтр будет по Единицам измерения

         Set ЕдиницыОПУ = _

         oleapp.ПолучитьКорневуюГруппуКласса("БизнесМодель.ЕдиницыИзмеренияЗатрат")

   

           'подфильтр отбирает единицы с сокращением "руб."

           Set ФильтрЕдиницы = ЕдиницыОПУ.СоздатьФильтр

           ФильтрЕдиницы.Условия.Параметры.Сокращение.Значение = "руб."

    

       'непосредственное задание условия фильтра Показателя по подфильтру

       ФильтрПоказатели.Условия.Параметры.ЕдиницаИзмерения.Подфильтр = ФильтрЕдиницы

   

   

   'Выполняем фильтр по Показателю и определяем количество записей

   SetРезультатФильтрПоказатели = ФильтрПоказатели.Выполнить

   КолвоПоказателей = РезультатФильтрПоказатели.КоличествоЭлементов

 

   'Выводим сообщение

   MsgBox"Количество показателей, которые измеряются в рублях: " + CStr(КолвоПоказателей)

 

End Sub
« ПредыдущаяНа уровень вышеСледующая »
 0     0
Driven by DokuWiki