Различия

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

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

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>
  
Актуальные новости, публикации и практики для бизнес-архитекторов и аналитиков
Driven by DokuWiki