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




Взяли выгрузку базы у клиента? Прислали по почте файл конфигурации? Хотите развернуть базу данных двойным щелчком на файле *.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. Исправлены выявленные ошибки

29 Comments

  1. Новиков

    Хорошая идея! Но буду делать по старинке :)))

    Reply
  2. makas

    За идею — плюс однозначный!


    Reply
  3. makas

    …А что, SQL — база тоже разворачивается?

    Reply
  4. Evil Beaver

    (3) makas, Да, тоже.

    Reply
  5. tehas

    Удобно, спасибо =)

    Reply
  6. Evil Beaver

    (1) Новиков, а почему вдруг? 😉

    Reply
  7. AzagTot

    (1) Новиков и по старинке, явная нестыковочка))

    Автору спасибо. Полезная вещь!

    Reply
  8. Kopman

    Хорошая идея. Планируется ли реализация запуска «по ключам»? т.е. генераций команд запуска и последующее развертывание.8.

    Версия платформы 1С я так понимаю определяется автоматически по *.dt/*.cf ?

    Reply
  9. Evil Beaver

    (8) Kopman, в dtcf нет информации о версии платформы (известной мне, по крайней мере). Версия платформы определяется наиболее свежей, установленной в системе, причем можно задать маску версии 8.X.X.X в настройках.

    Насчет ключей — что именно ожидаете от этого функционала, что конкретно нужно?

    Reply
  10. Kopman

    (9) По dt/cf жаль — я то размечтался:-)

    По ключам какой-то пакетный запуск «Распаковать все .dt в пути».. или может быть список путей, а передавать это список и все параметры уже файлом или каким-то еще другим способом.

    Reply
  11. Kopman

    (9) по определению версии. Как конкретно из *.dt и *.cf мне может не известно.. но например файловую можно предварительно распаковать во «временное хранилище», потом определить версию и скопировать в нужное место.

    Reply
  12. Evil Beaver

    (11) Kopman, определить версию чего? Кажется мы о разных вещах говорим. Вроде бы вы спрашивали — как определяется версия платформы? Версия платформы, которая будет разворачивать cf(dt) автоматом проставляется, выбирается наиболее свежая, после ее можно поменять.

    А какую версию и версию «чего» имеете вы, говоря про временный каталог?

    Reply
  13. Kopman

    (12) Сейчас поясню:-) Я тоже говорю о версии платформы. Но если база работающая на 8.2.13 у меня будет открываться через 8.2.19 или еще хуже через 8.3.Х то разумеется нужно будет конвертировать это не есть хорошо. Для этого и нужно автоматическое определение версии и установка ее в параметрах открытия базы, если такая версия существует на ПК.

    Reply
  14. Evil Beaver

    (13) Kopman, конвертировать между 8.2. и 8.3 вроде бы не нужно. А прописывание конкретной версии для запуска будет, позже. Автообновление предусмотрено.

    Reply
  15. Sholl

    Удобная программа.

    Хорошо бы добавить асоциацию с .1cd файлами, для быстрого добавления базы. Каталог ИБ — путь к файлу. Имя ИБ — имя папки с файлом.

    Для .cf и .dt можно предложить Каталог ИБ по умолчанию — путь к файлу (для новой базы).

    Вроде как извлечь в текущую папку.

    Reply
  16. Evil Beaver

    (15) Sholl, Спасибо за отзыв. По поводу 1cd, по-моему, на Инфостарте была разработка, которая, как раз это делает. Посмотрите сюда: http://infostart.ru/public/193222/, а в ней — ссылки на еще 2 проекта. Собственно, мой отличается как раз наличием «любимых мест» ну и по юзабилити, как мне кажется, тоже удобнее. А по приведенным ссылкам вроде бы (я не ставил, точно не знаю) как раз, что вы хотите по 1cd.

    Reply
  17. Программулькин

    Ошибка!

    Reply
  18. Evil Beaver

    (17) Программулькин, проверьте, пожалуйста, скорее всего у вас в файле настроек стартера 1С (%APPDATA%1C1CEStart1CEstart.cfg) прописан путь к папке «C:Program Files (x86)1cv8», в то время, как сама папка не существует. Удалите некорректный путь из конфига стартера. Если моя догадка верна, отпишитесь, пожалуйста. Ошибку исправлю, спасибо.

    Reply
  19. Программулькин

    Нет не верно, программа стоит там где должна, а вот конфиг смотрит из другого файла №2,Вот мои настройки.

    Reply
  20. Evil Beaver

    (19) Программулькин, с конфигами понятно, но папка «C:Program Files (x86)1cv8» существует или нет? Именно 1Cv8 на конце, а не 1Cv82?

    Reply
  21. Программулькин

    (20) совершенно верно, отсутствует. Удалил из конфига путь. Заработало. Спасибо. Лови плюс.

    Reply
  22. Sholl

    Хорошо бы добавить возможность выбора «Имя каталога БД» на … сразу из «Место установки» с возможностью указать вложеную папку.

    Например:

    «Место установки» — папка «Клиенты»

    «Имя каталога БД» — «Клиент1/До обновления»

    А то придется добавлять в «Место установки» каждого клиента.

    Reply
  23. the1

    (0) Отличная программулина, экономит много времени! Спасибо!

    Reply
  24. webester

    Плюсану авансом, по описанию, очень полезная штука.

    Reply
  25. Evil Beaver

    (26) webester, а вы не авансом, вы качайте и пользуйте! От плюсования мне ничего, а от ощущения полезности — приятно 😉

    Reply
  26. TeMochkiN

    А исходный код предоставлять не будете?) какой язык программирования хотя бы использовали) просто большая часть наших одинэсных разработок всё же с открытым исходным кодом, что позволяет нам дорабатывать под себя что-либо) вот и хотелось бы иметь исходный код вашей разработки, если это конечно приемлемо для вас)

    Reply
  27. Evil Beaver

    (28) TeMochkiN, язык — C#. Код не проблема, я могу дать доступ. А что планируете доработать? Если есть предложения — код дам. Если просто так из любопытства спрашиваете, то и код вам не нужен, верно?

    Reply
  28. TeMochkiN

    (29) ну на самом деле хотелось бы, чтоб можно было ещё добавлять базу в список двойным щелчком по файлу 1Cv8.1CD 🙂

    потому что не всегда выгрузку дают, а тупо в архив папку с базой запаковывают и присылают)

    это ещё полезно, когда винду переустанавливаешь.

    вообще хотелось бы из этого сотворить даже менеджер списка баз. Не запускалка баз, которых навалом тут, а именно менеджер баз. Для запуска вполне устраивает стандартный 1cestart) но менеджер баз кончено хочется сделать с возможностью доступа к локальной сети, чтобы можно было управлять списком баз и других пользователей.

    вообщем, вы наверное подумаете чё за бред я тут наплел, но мне это кажется довольно-таки интересным, несмотря на то, что какие-то похожие инструменты тут уже есть. но те, на которые я натыкался — платные, а т.к. есть знания, то че платить, когда можно самому написать, хоть и корявенько для начала)

    Reply
  29. Evil Beaver

    (30) TeMochkiN, да не вопрос, регистрируйтесь на bitbucket.org и присылайте мне свое имя пользователя. Можно в личку. Дам доступ.

    Reply

Leave a Comment

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