Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.
ru:technical_manual:work_via_ole:script_work_via_ole [2019/09/06 08:58] belkin |
ru:technical_manual:work_via_ole:script_work_via_ole [2019/09/13 09:35] (текущий) belkin |
||
---|---|---|---|
Строка 376: | Строка 376: | ||
</code> | </code> | ||
- | ===== Пример вывода сообщением всех потомков папок из справочника с использованием фильтра с условием ВключатьПодгруппы=False ===== | + | ===== Пример вывода сообщением всех потомков папок с первого уровня справочника Направления Деятельности ===== |
- | + | ||
- | Требуется вывести древовидную структуру для класса «БизнесМодель.НаправленияДеятельности». | + | |
<code> | <code> | ||
+ | |||
Sub ВыводПотомковПапок() | Sub ВыводПотомковПапок() | ||
+ | |||
' Получение объекта приложения | ' Получение объекта приложения | ||
+ | |||
Set oleapp = CreateObject("ByteEnterprise.OleApplication") | Set oleapp = CreateObject("ByteEnterprise.OleApplication") | ||
' Инициализации приложения, в качестве параметров передаются имя сервера, название базы, версия продукта | ' Инициализации приложения, в качестве параметров передаются имя сервера, название базы, версия продукта | ||
+ | |||
Set client_app = oleapp.ЗапуститьКлиентскоеПриложение("<Имя_сервера_БД>", "<Имя_базы>", "<Редакция_продукта>") | Set client_app = oleapp.ЗапуститьКлиентскоеПриложение("<Имя_сервера_БД>", "<Имя_базы>", "<Редакция_продукта>") | ||
' Получаем только папки в корне | ' Получаем только папки в корне | ||
- | Set Корень = oleapp.ПолучитьКорневуюГруппуКласса("БизнесМодель.НаправленияДеятельности") | + | |
+ | Set Корень = oleapp.ПолучитьКорневуюГруппуКласса("БизнесМодель.НаправленияДеятельности") | ||
+ | |||
Set Фильтр = Корень.СоздатьФильтр | Set Фильтр = Корень.СоздатьФильтр | ||
+ | |||
Фильтр.ВключатьПодгруппы = False | Фильтр.ВключатьПодгруппы = False | ||
- | Фильтр. РезультатВключает = 9 | + | |
+ | Фильтр.РезультатВключает = 9 | ||
+ | |||
Set Папки = Фильтр.Выполнить | Set Папки = Фильтр.Выполнить | ||
'Для каждой папки строим свой подфильтр | 'Для каждой папки строим свой подфильтр | ||
+ | |||
For Счётчик = 1to Папки.КоличествоЭлементов | For Счётчик = 1to Папки.КоличествоЭлементов | ||
+ | |||
Set Папка = Потомки.ПолучитьЭлемент(Счётчик) | Set Папка = Потомки.ПолучитьЭлемент(Счётчик) | ||
+ | |||
Set Фильтр2 = Папка.СоздатьФильтр | Set Фильтр2 = Папка.СоздатьФильтр | ||
+ | |||
Фильтр2.ВключатьПодгруппы = False | Фильтр2.ВключатьПодгруппы = False | ||
+ | |||
Set Потомки = Фильтр2.Выполнить | Set Потомки = Фильтр2.Выполнить | ||
+ | |||
For Счётчик2 = 1 to Потомки | For Счётчик2 = 1 to Потомки | ||
- | ' И выводим на экран | + | |
+ | ' И выводим на экран | ||
+ | |||
Set Потомок = Потомки.ПолучитьЭлемент(Счётчик) | Set Потомок = Потомки.ПолучитьЭлемент(Счётчик) | ||
+ | |||
MsgBox Потомок | MsgBox Потомок | ||
+ | |||
Next Счётчик2 | Next Счётчик2 | ||
+ | |||
Next Счётчик | Next Счётчик | ||
+ | |||
End Sub | End Sub | ||
+ | |||
</code> | </code> | ||