Как очистить список баз?

При запуске программы пользователь должен выбрать в какую базу ему необходимо зайти. Хорошо когда у пользователя так баз немного, и плохо разработчику, который постоянно работает в 5-6 базах, и при этом успевает удалять копии, тестовые базы, и всякие временные. Чтобы дерево баз не захломлялось, его можно легко почистить этой обработкой – http://infostart.ru/public/75891/

Сама по себе обработка проста, не хватает функции удаления пустых каталогов, которые раньше содержали БД, но это можно доработать. Интересен код обработки, с точки зрения использования системных скриптов:

Процедура ПриОткрытии() КЧ = Новый КвалификаторыЧисла(12,2); ОписаниеТиповЧ = Новый ОписаниеТипов(“Число”,КЧ); ДеревоБаз.Колонки.Добавить(“Name”); ДеревоБаз.Колонки.Добавить(“Connect”); ДеревоБаз.Колонки.Добавить(“ID”); ДеревоБаз.Колонки.Добавить(“OrderInList”,ОписаниеТиповЧ); ДеревоБаз.Колонки.Добавить(“Folder”); ДеревоБаз.Колонки.Добавить(“OrderInTree”,ОписаниеТиповЧ); ДеревоБаз.Колонки.Добавить(“External”); ДеревоБаз.Колонки.Добавить(“Exist”); //0 – база есть, 1 – нет файла базы, каталог не пустой, 2 – нет файла базы, каталог пустой, 3 – нет каталога WshShell=Новый COMОбъект(“wscript.shell”); ИмяОсновногоКаталога = WshShell.SpecialFolders.Item(“AppData”); //ИмяСпискаБаз = ИмяОсновногоКаталога + “1C1Cv81ibases.v8i”; ИмяСпискаБаз = ИмяОсновногоКаталога + “1C1CEStartibases.v8i”; КопироватьФайл(ИмяСпискаБаз,ИмяСпискаБаз+“_bak”); //сохраним предыдущий список от греха подальше. ПрочитатьСписокБаз(); КонецПроцедуры

Дальше как вы можете посмотреть идет разбор дерева. Рекомендую использовать в работе, очень облегчает жизнь.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *