Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.
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)} |