Различия

Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.

Ссылка на это сравнение

ru:technical_manual:work_via_ole:filter [2017/04/21 14:55]
ru:technical_manual:work_via_ole:filter [2023/03/16 12:20] (текущий)
Строка 1: Строка 1:
 +====== Класс "Система.Фильтр" ======
  
 +===== Метод Выполнить =====
 +
 +**Синтаксис**: Выполнить()
 +
 +**Возвращаемый результат**: Система.Список (см. [[ru/technical_manual/work_via_ole/list]])
 +
 +Метод запускает фильтр на выполнение, в результате возвращает список элементов класса.
 +
 +**Пример кода**. См. код в методе "СоздатьФильтр" ([[ru/technical_manual/work_via_ole/metaclass#метод_создатьфильтр|Mетод СоздатьФильтр]]).
 +
 +===== Свойство Условия.Параметры. =====
 +
 +**Свойство**: Условия.Параметры.<ИмяПараметра>
 +
 +**Тип параметра**: Система.ПараметрФильтра (см. [[ru/technical_manual/work_via_ole/filter_param]])
 +
 +Обращение к параметру фильтра осуществляется по имени параметра из Объектной модели Business Studio.
 +
 +== ==
 +**Внимание!** Рекомендуется задавать условия только по хранимым параметрам класса. Возможность построения фильтра по нехранимым параметрам можно проверить, открыв окно фильтра по соответствующему классу в Business Studio.
 +===== =====
 +\\
 +**Пример кода**. См. код в методе "СоздатьФильтр" ([[ru/technical_manual/work_via_ole/metaclass#метод_создатьфильтр|Mетод СоздатьФильтр]]).
 +
 +===== Метод Условия.Параметры.Параметры.ПолучитьЭлемент =====
 +
 +**Свойство**: Условия.Параметры.Параметры.ПолучитьЭлемент(string "<ИмяПараметра>")
 +
 +**Возвращаемый результат**: Система.ПараметрФильтра (см. [[ru/technical_manual/work_via_ole/filter_param]]).
 + 
 +Метод для получения пользовательского параметра фильтра.
 +
 +Обращение к параметру фильтра осуществляется по имени параметра из Объектной модели Business Studio.
 +
 +===== Свойство ВключатьПодгруппы =====
 +
 +**Свойство**: ВключатьПодгруппы
 +
 +**Тип** **параметра**: Bool (True, False).
 +
 +Свойство указывает, будут ли в результат выполнения фильтра включены подгруппы класса, по которому выполняется фильтр. Соответствует выбору кнопки "Смотреть в подгруппах" на панели инструментов фильтра.
 +
 +Значение по умолчанию True.
 +
 +**Пример кода**. См. код в свойстве "РезультатВключает" ([[ru/technical_manual/work_via_ole/filter#свойство_результатвключает|Cвойство РезультатВключает]]).
 +
 +===== Свойство ВключатьГруппуФильтра =====
 +
 +**Свойство**: ВключатьГруппуФильтра
 +
 +**Тип** **параметра**: Bool (True, False).
 +
 +Свойство указывает, будет ли в результат выполнения фильтра включена группа, по которой выполняется фильтр. Соответствует выбору кнопки "Включать группу фильтра" на панели инструментов окна фильтра.
 +
 +Значение по умолчанию False.
 +
 +**Пример кода**. См. код в свойстве "РезультатВключает" ([[ru/technical_manual/work_via_ole/filter#свойство_результатвключает|Cвойство РезультатВключает]]).
 +
 +===== Свойство РезультатВключает =====
 +
 +**Свойство**: РезультатВключает
 +
 +**Тип параметра**: Int (целое число)
 +
 +Свойство задает условия вхождения полученных данных в результат выполнения фильтра. Соответствует выбору кнопок панели инструментов окна фильтра: "Включать подгруппы", "Включать конечные объекты", "Показать удаленные", "Показать неудаленные".
 +
 +Свойство может принимать следующие значения:
 +
 +1 - Группы,
 +
 +2 - Конечные объекты,
 +
 +4 - Удаленные,
 +
 +8 - НеУдаленные.
 +
 +Для выбора нескольких значений необходимо брать их сумму. Например, 11 - это 1 + 2 + 8, т.е. выбрать все неудаленные, 7 - это 1 + 2 + 4, т.е. включаем удаленные группы и конечные объекты.
 +
 +Значение по умолчанию - 11.
 +
 +**Пример кода**.
 +
 +__Задача__: определить, есть ли удаленные объекты в базе.
 +
 +<code>
 +Sub ПримерOLE_НаличиеУдаленныхОбъектов()
 +
 +'=============================================================
 +
 +' Задание необходимых параметров перед запуском
 +
 +    'БД и редакция Business Studio, с которыми будем работать
 +
 +    СерверБД = "ИмяСервера"
 +
 +    База = "ИмяБазы"
 +
 +    Редакция = "РедакцияПрограммы"
 +
 +'===============================================================
 +
 +   'Запуск Business Studio
 +
 +   'Получение объекта приложения
 +
 +   Set oleapp = CreateObject("ByteEnterprise.OleApplication")
 +
 + 
 +
 +   'Запустить Business Studio в той редакции и с выбором того сервера и базы, какие указаны ранее.
 +
 +   'В Диспетчере задач появится Business Studio. В панели задач приложения не будет видно.
 +
 +   Set client_app = oleapp.ЗапуститьКлиентскоеПриложение(СерверБД, База, Редакция)
 +
 +   'В панели задач появится приложение
 +
 +   oleapp.ПоказатьКлиентскоеПриложение
 +
 + 
 +
 +   'Создаем фильтр по всем Справочникам
 +
 +   SetВсеСправочники = oleapp.ПолучитьКорневуюГруппуКласса("База.Справочники")
 +
 + 
 +
 +      'Определяем количество удаленных объектов
 +
 +   Set ФильтрУдаленных = ВсеСправочники.СоздатьФильтр
 +
 +        ФильтрУдаленных.ВключатьПодгруппы = True
 +
 +        ФильтрУдаленных.ВключатьГруппуФильтра = True
 +
 +        ФильтрУдаленных.РезультатВключает = 7 'Включаем удаленные группы и конечные объекты
 +
 +   SetСписокУдаленных = ФильтрУдаленных.Выполнить
 +
 +   КолвоУдаленных = СписокУдаленных.КоличествоЭлементов
 +
 + 
 +
 +   'Готовимся к выводу результатов
 +
 +   If КолвоУдаленных = 0 Then
 +
 +         РезультатУдаленных = "В базе нет удаленных объектов."
 +
 +      Else
 +
 +         РезультатУдаленных = "В базе есть удаленные объекты."
 +
 +   End If
 +
 + 
 +
 +    'Вывод сообщения о результатах
 +
 +    MsgBox"Проверка удаленных: " + РезультатУдаленных
 +
 + 
 +
 +End Sub
 +</code>
 +
 +
 +
 +
 +
 +[<contextnavigator>]
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +{(rater>id=ru_technical_manual_work_via_ole_filter|name=Класс "Система.Фильтр"|type=vote|trace=ip|headline=off)}
Driven by DokuWiki