gifts2017

Установка баз данных из Проводника

Опубликовал Андрей Овсянкин (Evil Beaver) в раздел Администрирование - Сервисные утилиты

Взяли выгрузку базы у клиента? Прислали по почте файл конфигурации? Хотите развернуть базу данных двойным щелчком на файле *.dt или *.cf? Database Manager - то что вам нужно!

Назначение

Database Manager предназначен для упрощенного развертывания информационных баз на основании файла DT или CF непосредственно двойным щелчком на файле из проводника Windows.

Как правило, у нас всегда есть некие «любимые места», в которые мы устанавливаем все базы 1С. Скорее всего, все базы установлены внутрь какого-то одного каталога (или на конкретный сервер), но при стандартной установке баз его всегда надо указывать «с нуля».

В Database Manager вы указываете несколько «любимых мест» для установки. Это могут быть каталоги или серверы 1С:Предприятия. При развертывании базы вы не думаете «куда ставить», просто выбираете место из предварительно настроенных. Файл автоматически будет распакован, а информационная база добавлена в список информационных баз стартера 1С.

Примерный сценарий использования

  • - Получили выгрузку информационной базы и хотим исследовать ее на предмет проблем
  • - Дважды щелкаем файл, указываем  место установки (из «любимых мест»), имя будущей ИБ для списка баз, нажимаем «установить» и получаем конфигуратор, в который загружена эта база

Второй вариант

  • - Есть конфигурация, которую нужно протестировать в клиент-серверной среде
  • - Делаем выгрузку CF, дважды щелкаем на нем, указываем «любимый» сервер, имя базы на сервере, имя базы в списке ИБ
  • - Получаем конфигурацию, развернутую на сервере.
  • - Утомительные параметры подключения к серверу уже заданы в настройках и каждый раз мы их не вводим

Способ применения

Настройки программы

При запуске программы открывается окно с настройками.

В основных настройках нужно отметить флажками привязку к файлам CF или DT. Привязанные файлы по двойному щелчку будут открываться в программе DBManager.

Основные настройки

Далее, в разделе «Места установки ИБ» нужно задать предпочитаемые места для установки. Например, если вы устанавливаете свои информационные базы в какую либо специально выделенную папку, то ее нужно добавить в список «Места установки ИБ».

Места установки баз данных

Можно указать 2 вида расположения: каталог или сервер. Для сервера задаются основные параметры его размещения, тип СУБД и прочие вещи, которые так муторно вводить каждый раз при развертывании базы на сервере.

Установка новой базы

После того, как мы выполним настройки, у нас появится возможность в Проводнике Windows дважды щелкать на файле DT или CF, чтобы выполнить его развертывание.

При установке в каталог, фактически, нужно указать только имя папки с будущей информационной базой. Имя в списке баз для CF файла берется из синонима устанавливаемой конфигурации, для DT файла – из имени файла.

Опционально можно указать группу (папку) в списке баз и версию платформы, которой нужно развертывать базу.

После нажатия кнопки «Установить базу» будет запущена 1С и выполнено развертывание ИБ.

Установка в существующую ИБ

Имеется также режим установки в уже существующую базу. Удобно применять для восстановления бэкапов или для временных баз, которые созданы «для посмотреть».

Этот режим имеет один нюанс. Когда мы устанавливаем DT, то проблем нет, существующая база заменяется на новую. Если же мы устанавливаем CF, то 1С может не загрузить конфигурацию, если конфигурация не редактируется. Например, в существующей базе конфигурация может стоять на поддержке или иным образом защищена от изменений. В этом случае мы получим ошибку «Необходимо разблокировать все объекты».

Если база временная, и мы точно знаем, что делаем, то можно установить флажок «Полностью удалить базу данных», который очистит базу и все ее данные, а уже в чистую базу загрузит наш CF.

Особенности

Программа поддерживает взаимодействие с сервером 1С и может проверять уникальность имен баз на сервере и прочие вещи, однако, взаимодействие с сервером требует, чтобы компонент доступа comcntr.dll был правильно зарегистрирован в системе и соответствовал версии сервера. В противном случае, проверки правильности данных перед установкой не будет, а контроль ошибок выполнит сама 1С.

Благодарности

Хочется сказать спасибо Виктории Дорохиной за помощь в тестировании программы.

P.S. Не забывайте вернуться на эту страницу и поставить "плюсик", если вам понравится программа :)

Обновление от 06.11.2013

В версии 1.0.0.21 реализованы следующие изменения:

  1. При установке в каталог на диске разрешается указывать вложенные папки в качестве расположения базы. Т.е. можно указать каталог ИБ с помощью строки вида "Каталог\КаталогВложенный\КаталогЕщеРазВложенный"
  2. Главное окно не "замораживается" пока идет установка программы, его можно закрыть не дожидаясь окончания развертывания.
  3. Улучшены возможности по автообновлению программы
  4. Исправлены выявленные ошибки

Скачать файлы

Наименование Файл Версия Размер
Пакет установки 98
.exe 1,40Mb
21.07.15
98
.exe 1.0.0.21 1,40Mb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Алексей Новиков (Новиков) 28.10.13 12:57
Хорошая идея! Но буду делать по старинке :)))
2. Макас (makas) 28.10.13 14:28
За идею - плюс однозначный!
---
3. Макас (makas) 28.10.13 14:29
...А что, SQL - база тоже разворачивается?
4. Андрей Овсянкин (Evil Beaver) 28.10.13 14:41
5. Максим Евсенкин (tehas) 29.10.13 12:36
6. Андрей Овсянкин (Evil Beaver) 29.10.13 13:38
(1) Новиков, а почему вдруг? ;)
7. Андрей Сябренко (AzagTot) 29.10.13 15:42
(1) Новиков и по старинке, явная нестыковочка))

Автору спасибо. Полезная вещь!
8. Андрей Антипенко (Kopman) 30.10.13 06:48
Хорошая идея. Планируется ли реализация запуска "по ключам"? т.е. генераций команд запуска и последующее развертывание.8.
Версия платформы 1С я так понимаю определяется автоматически по *.dt/*.cf ?
9. Андрей Овсянкин (Evil Beaver) 30.10.13 09:46
(8) Kopman, в dt\cf нет информации о версии платформы (известной мне, по крайней мере). Версия платформы определяется наиболее свежей, установленной в системе, причем можно задать маску версии 8.X.X.X в настройках.

Насчет ключей - что именно ожидаете от этого функционала, что конкретно нужно?
10. Андрей Антипенко (Kopman) 30.10.13 11:20
(9) Evil Beaver, По dt/cf жаль - я то размечтался:-)
По ключам какой-то пакетный запуск "Распаковать все .dt в пути".. или может быть список путей, а передавать это список и все параметры уже файлом или каким-то еще другим способом.
11. Андрей Антипенко (Kopman) 30.10.13 11:23
(9) Evil Beaver, по определению версии. Как конкретно из *.dt и *.cf мне может не известно.. но например файловую можно предварительно распаковать во "временное хранилище", потом определить версию и скопировать в нужное место.
12. Андрей Овсянкин (Evil Beaver) 30.10.13 12:17
(11) Kopman, определить версию чего? Кажется мы о разных вещах говорим. Вроде бы вы спрашивали - как определяется версия платформы? Версия платформы, которая будет разворачивать cf(dt) автоматом проставляется, выбирается наиболее свежая, после ее можно поменять.
А какую версию и версию "чего" имеете вы, говоря про временный каталог?
13. Андрей Антипенко (Kopman) 30.10.13 12:34
(12) Evil Beaver, Сейчас поясню:-) Я тоже говорю о версии платформы. Но если база работающая на 8.2.13 у меня будет открываться через 8.2.19 или еще хуже через 8.3.Х то разумеется нужно будет конвертировать это не есть хорошо. Для этого и нужно автоматическое определение версии и установка ее в параметрах открытия базы, если такая версия существует на ПК.
14. Андрей Овсянкин (Evil Beaver) 30.10.13 12:44
(13) Kopman, конвертировать между 8.2. и 8.3 вроде бы не нужно. А прописывание конкретной версии для запуска будет, позже. Автообновление предусмотрено.
cleaner_it; +1 Ответить
15. Александр Тарасов (Sholl) 31.10.13 09:13
Удобная программа.
Хорошо бы добавить асоциацию с .1cd файлами, для быстрого добавления базы. Каталог ИБ - путь к файлу. Имя ИБ - имя папки с файлом.
Для .cf и .dt можно предложить Каталог ИБ по умолчанию - путь к файлу (для новой базы).
Вроде как извлечь в текущую папку.
16. Андрей Овсянкин (Evil Beaver) 31.10.13 09:49
(15) Sholl, Спасибо за отзыв. По поводу 1cd, по-моему, на Инфостарте была разработка, которая, как раз это делает. Посмотрите сюда: http://infostart.ru/public/193222/, а в ней - ссылки на еще 2 проекта. Собственно, мой отличается как раз наличием "любимых мест" ну и по юзабилити, как мне кажется, тоже удобнее. А по приведенным ссылкам вроде бы (я не ставил, точно не знаю) как раз, что вы хотите по 1cd.
17. Программулькин (Программулькин) 31.10.13 12:08
Ошибка!
Прикрепленные файлы:
18. Андрей Овсянкин (Evil Beaver) 31.10.13 12:34
(17) Программулькин, проверьте, пожалуйста, скорее всего у вас в файле настроек стартера 1С (%APPDATA%\1C\1CEStart\1CEstart.cfg) прописан путь к папке "C:\Program Files (x86)\1cv8", в то время, как сама папка не существует. Удалите некорректный путь из конфига стартера. Если моя догадка верна, отпишитесь, пожалуйста. Ошибку исправлю, спасибо.
molodoi1sneg; +1 Ответить
19. Программулькин (Программулькин) 01.11.13 03:43
Нет не верно, программа стоит там где должна, а вот конфиг смотрит из другого файла №2,Вот мои настройки.
Прикрепленные файлы:
20. Андрей Овсянкин (Evil Beaver) 01.11.13 09:49
(19) Программулькин, с конфигами понятно, но папка "C:\Program Files (x86)\1cv8" существует или нет? Именно 1Cv8 на конце, а не 1Cv82?
21. Программулькин (Программулькин) 02.11.13 03:07
(20) Evil Beaver, совершенно верно, отсутствует. Удалил из конфига путь. Заработало. Спасибо. Лови плюс.
22. Александр Тарасов (Sholl) 02.11.13 18:31
Хорошо бы добавить возможность выбора "Имя каталога БД" на ... сразу из "Место установки" с возможностью указать вложеную папку.
Например:
"Место установки" - папка "Клиенты"
"Имя каталога БД" - "Клиент1/До обновления"
А то придется добавлять в "Место установки" каждого клиента.
23. Maxim Kolkin (the1) 04.11.13 13:13
(0) Отличная программулина, экономит много времени! Спасибо!
26. Роман Ложкин (webester) 06.06.14 12:38
Плюсану авансом, по описанию, очень полезная штука.
27. Андрей Овсянкин (Evil Beaver) 06.06.14 14:58
(26) webester, а вы не авансом, вы качайте и пользуйте! От плюсования мне ничего, а от ощущения полезности - приятно ;)
28. Артём Артёмов (TeMochkiN) 03.03.15 12:25
А исходный код предоставлять не будете?) какой язык программирования хотя бы использовали) просто большая часть наших одинэсных разработок всё же с открытым исходным кодом, что позволяет нам дорабатывать под себя что-либо) вот и хотелось бы иметь исходный код вашей разработки, если это конечно приемлемо для вас)
29. Андрей Овсянкин (Evil Beaver) 03.03.15 12:31
(28) TeMochkiN, язык - C#. Код не проблема, я могу дать доступ. А что планируете доработать? Если есть предложения - код дам. Если просто так из любопытства спрашиваете, то и код вам не нужен, верно?
30. Артём Артёмов (TeMochkiN) 04.03.15 17:08
(29) Evil Beaver, ну на самом деле хотелось бы, чтоб можно было ещё добавлять базу в список двойным щелчком по файлу 1Cv8.1CD :)
потому что не всегда выгрузку дают, а тупо в архив папку с базой запаковывают и присылают)
это ещё полезно, когда винду переустанавливаешь.
вообще хотелось бы из этого сотворить даже менеджер списка баз. Не запускалка баз, которых навалом тут, а именно менеджер баз. Для запуска вполне устраивает стандартный 1cestart) но менеджер баз кончено хочется сделать с возможностью доступа к локальной сети, чтобы можно было управлять списком баз и других пользователей.
вообщем, вы наверное подумаете чё за бред я тут наплел, но мне это кажется довольно-таки интересным, несмотря на то, что какие-то похожие инструменты тут уже есть. но те, на которые я натыкался - платные, а т.к. есть знания, то че платить, когда можно самому написать, хоть и корявенько для начала)
31. Андрей Овсянкин (Evil Beaver) 04.03.15 22:20
(30) TeMochkiN, да не вопрос, регистрируйтесь на bitbucket.org и присылайте мне свое имя пользователя. Можно в личку. Дам доступ.