Подключение базы и расширения к хранилищу конфигурации 1С 8.3

· 9 мин

Содержание

Чтобы подключиться к хранилищу 1С, откройте базу в Конфигураторе и выберите Конфигурация → Хранилище конфигурации → Подключиться к хранилищу…. В окне укажите путь к хранилищу (папку, tcp://сервер/имя или http://…), имя пользователя хранилища и пароль. После подтверждения платформа заменит конфигурацию базы версией из хранилища, и объекты можно будет захватывать для правки.

Типичная ситуация: в команду пришёл второй разработчик, ему развернули копию рабочей базы, а доработки ведутся в общем хранилище конфигурации. Пока он не подключится, его правки живут только у него и при следующем обновлении потеряются. Отдельная история — расширения: у каждого из них своё хранилище и своё подключение.

Как устроено хранилище конфигурации и какие бывают пути

Хранилище — это отдельная база версий конфигурации. Каждый разработчик работает в своей информационной базе, а хранилище раздаёт объекты «под замок»: один объект в один момент правит только один человек. Захватил — правишь, поместил — изменения ушли всем, остальные получают их командой «Получить».

Данные хранилища лежат в файле 1cv8ddb.1CD внутри его каталога. Добраться до этого каталога можно тремя способами.

Способ доступаКак выглядит путьКогда подходитНа что смотреть
ФайловыйD:\Repo\ZUP или \\srv\Repo\ZUP1–3 разработчика в одной сетиправа на запись в папку у всех, антивирус
Сервер хранилища (TCP)tcp://srv-1c/ZUP или tcp://srv-1c:1542/ZUPкоманда, удалённые сотрудники через VPNверсия платформы сервера и клиента совпадает
HTTP-публикацияhttp://srv-web/repo/repo.1ccrдоступ через интернет без VPNвеб-сервер и опубликованный файл .1ccr

Сетевую папку для файлового хранилища открывайте по UNC-пути, а не через подключённый диск Z:. Буква диска у разных пользователей разная, и путь, сохранённый в базе, у коллеги не сработает.

Отдельная база версий нужна и для каждого расширения. Расширение подключается к своему хранилищу, а не к хранилищу основной конфигурации.

Подготовка сервера: создаём хранилище конфигурации

Если хранилище уже создано, этот раздел пропустите и переходите к подключению.

Сервер хранилища конфигураций

Для TCP-доступа на сервер ставят компонент «Сервер хранилища конфигураций 1С:Предприятия» из дистрибутива платформы. Он работает как служба, процесс называется crserver, порт по умолчанию — 1542.

  1. Запустите установщик платформы той же версии, что у разработчиков.
  2. Отметьте компонент сервера хранилища и установите его как службу.
  3. Создайте каталог для хранилищ, например D:\Repo, и дайте учётной записи службы полные права на него.
  4. Откройте входящий порт 1542 в брандмауэре сервера.

Версия сервера хранилища должна совпадать с версией платформы у каждого клиента до последней цифры. Обновили платформу у разработчиков — обновите и crserver, иначе подключение не пройдёт.

При остановке или переустановке службы сервера хранилища у всех разработчиков оборвётся работа с хранилищем. Незавершённое помещение может прерваться. Делайте это вне рабочего времени и предупредите команду.

Создание хранилища

  1. Откройте в Конфигураторе базу с актуальной конфигурацией — она станет первой версией хранилища.
  2. Выберите Конфигурация → Хранилище конфигурации → Создать хранилище….
  3. Укажите путь: для файлового варианта — пустой каталог, для сервера — tcp://srv-1c/ZUP. Каталог ZUP сервер создаст сам внутри своего рабочего каталога.
  4. Задайте имя и пароль администратора хранилища.
  5. Дождитесь окончания загрузки объектов. На типовой ЗУП или ERP это может занять от нескольких минут до часа.

База, из которой создавали хранилище, сразу оказывается к нему подключённой.

Пользователи хранилища и права доступа

Пользователи хранилища не связаны с пользователями информационной базы. Это отдельный список, который ведёт администратор хранилища.

Путь: Конфигурация → Хранилище конфигурации → Администрирование…. Здесь заводят пользователей, задают пароли и права.

ПравоЧто даёт
Захват объектовбрать объекты на редактирование и помещать изменения
Изменение состава версийправка комментариев и меток версий
Административные функцииуправление пользователями, отключение, обслуживание хранилища

Пользователь без прав на захват может подключиться и получать изменения, но править не сможет. Это удобно для тестовых баз и баз сборки.

💡 Заводите на каждого разработчика отдельного пользователя хранилища. Один общий логин на троих — гарантия того, что никто не поймёт, кто захватил справочник и ушёл в отпуск.

Подключение к хранилищу конфигурации из Конфигуратора

Перед подключением сохраните текущую конфигурацию базы в файл: Конфигурация → Сохранить конфигурацию в файл…. Подключение заменяет конфигурацию базы версией из хранилища, и несохранённые локальные доработки исчезнут.

Пошагово

  1. Запустите базу в режиме Конфигуратора и откройте конфигурацию.
  2. Выберите Конфигурация → Хранилище конфигурации → Подключиться к хранилищу….
  3. В поле пути укажите адрес: каталог, tcp://… или http://…/repo.1ccr. Для файлового варианта можно выбрать папку кнопкой выбора.
  4. Введите имя пользователя хранилища и пароль, которые выдал администратор.
  5. Платформа предупредит, что конфигурация базы будет заменена конфигурацией из хранилища. Подтвердите.
  6. Дождитесь загрузки. В дереве конфигурации у объектов появятся значки состояния: свободен, захвачен вами, захвачен другим.
  7. Выполните Конфигурация → Обновить конфигурацию базы данных (F7), чтобы структура данных совпала с полученной конфигурацией.

Подключайте к хранилищу копию для разработки, а не рабочую базу с пользователями. Обновление структуры базы данных требует монопольного доступа, а в рабочей базе это остановит работу людей.

Подключение из командной строки

Для сборочного сервера или скрипта ночного обновления подключение делают без окон. Пример для файловой базы:

"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" DESIGNER /F "D:\Bases\ZUP_dev" /N "Администратор" /P "" ^
 /ConfigurationRepositoryF "tcp://srv-1c/ZUP" /ConfigurationRepositoryN "build" /ConfigurationRepositoryP "pass" ^
 /ConfigurationRepositoryBindCfg /Out "D:\Logs\bind.log"

Для уже подключённой базы получение свежей версии и обновление структуры выглядит так: /ConfigurationRepositoryUpdateCfg вместо /ConfigurationRepositoryBindCfg, а затем /UpdateDBCfg. Полный список ключей с вариантами смотрите в справке по параметрам командной строки запуска в составе документации платформы.

Как подключить расширение к хранилищу

Хранилище расширения ведётся отдельно от основной конфигурации. Если расширение пишет команда, ему тоже нужен свой путь, например tcp://srv-1c/ZUP_ext_otchety.

  1. Откройте Конфигурация → Расширения конфигурации.
  2. Выделите нужное расширение и откройте его дерево двойным щелчком.
  3. Сделайте окно дерева расширения активным, щёлкнув в нём.
  4. Откройте меню Конфигурация → Хранилище конфигурации. Команды этого меню применяются к той конфигурации, дерево которой сейчас активно.
  5. Выберите «Подключиться к хранилищу …», укажите путь хранилища расширения, пользователя и пароль.
  6. Подтвердите замену расширения версией из хранилища.
  7. Обновите конфигурацию базы данных.

Если хранилища для расширения ещё нет, на шаге 5 выберите «Создать хранилище…» — его первой версией станет открытое расширение.

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

Права на хранилище расширения настраиваются в его собственном окне администрирования. Пользователь основного хранилища автоматически доступа к хранилищу расширения не получает.

Захват, помещение и получение объектов

После подключения работа идёт по одному циклу. Команды доступны в контекстном меню дерева конфигурации и в окне Конфигурация → Хранилище конфигурации → Хранилище.

КомандаЧто происходитСовет
Захватить в хранилищеобъект блокируется за вами, его можно правитьзахватывайте только то, что правите сейчас
Поместить в хранилищеизменения уходят в новую версию, комментарий обязателенпишите номер задачи и суть правки
Получить из хранилищаваша база получает чужие измененияполучайте перед захватом, а не после
Отменить захватобъект освобождается без сохранения правокваши изменения по объекту пропадут

Флажок «Оставить захваченными» при помещении сохраняет захват за вами. Удобно, когда правка большая и вы помещаете её частями.

Захват «рекурсивно» берёт объект со всеми подчинёнными — модулями, формами, макетами. Для справочника с десятком форм это нормально. Для корня конфигурации — плохая идея: вы заблокируете всю команду.

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

Для навигации по истории есть «История хранилища»: в ней видны все версии с автором, датой и комментарием. Перед крупным обновлением типовой полезно поставить метку на текущую версию — к ней проще вернуться.

Ошибки при подключении к хранилищу 1С: как найти причину

Большинство отказов — это сеть, права или версии. Найдите свой симптом.

Диагностика: выберите симптом

Если не помогло

  • 🔍 Запустите Конфигуратор с ключом /Out "D:\Logs\cfg.log" и повторите попытку — текст ошибки в журнале полнее, чем в окне.
  • 🖥️ Попробуйте подключиться с самого сервера, указав путь tcp://localhost/ZUP. Работает — проблема в сети между клиентом и сервером.
  • 📁 Для файлового хранилища откройте папку из проводника под той же учётной записью Windows и создайте в ней пустой файл. Не создаётся — дело в правах, а не в 1С.
  • 🔁 Если база когда-то была подключена к другому хранилищу, сначала выполните «Отключиться от хранилища», затем подключитесь заново.

Обслуживание хранилища и скорость работы

Хранилище растёт с каждой версией. Через пару лет активной разработки файл 1cv8ddb.1CD типовой ERP легко переваливает за десятки гигабайт, и получение версий заметно тормозит.

Что помогает:

  • 💾 Регулярная копия каталога хранилища. Копируйте его целиком при остановленной службе crserver или в окно, когда никто не помещает изменения. Копия файла «на ходу» может оказаться несогласованной.
  • 🧹 Оптимизация данных. В окне администрирования хранилища есть команда оптимизации данных хранилища — она пересобирает внутренние структуры и уменьшает объём. Запускайте её, когда никто не работает с хранилищем.
  • 🏷️ Метки вместо бесконечной истории. Отмечайте релизы метками: искать нужную версию по метке быстрее, чем листать тысячи записей.
  • 🌐 Сервер вместо сетевой папки. При трёх и более разработчиках или удалённой работе TCP-сервер работает быстрее и надёжнее файлового доступа по сети.
  • ⚡ Быстрый диск под каталог. Хранилище на SSD сервера получает и помещает версии заметно быстрее, чем на сетевом хранилище файлов.

Проверить целостность файла 1cv8ddb.1CD можно утилитой chdbfl.exe из каталога bin платформы. Запускайте её только при остановленном сервере хранилища и на копии файла.

Перед подключением нового разработчика
Выполнено: 0 / 5

Частые вопросы

Можно ли подключить одну информационную базу сразу к двум хранилищам?
Основная конфигурация подключается только к одному хранилищу. Каждое расширение базы может быть подключено к своему отдельному хранилищу.
Чем отличается «Отключиться от хранилища» от отмены захвата?
Отключение разрывает связь базы с хранилищем целиком, конфигурация остаётся как есть. Отмена захвата освобождает конкретный объект и откатывает ваши правки по нему.
Нужна ли отдельная лицензия для сервера хранилища?
Сервер хранилища конфигураций входит в дистрибутив платформы и отдельно не лицензируется. Лицензия нужна на запуск самого Конфигуратора у разработчика.
Что будет с захваченными объектами, если разработчик уволился?
Администратор хранилища отменяет его захваты через окно администрирования или окно хранилища. Неотправленные изменения из базы уволившегося при этом не сохранятся.
Можно ли подключиться к хранилищу через интернет без VPN?
Да, через HTTP-публикацию хранилища на веб-сервере. Путь тогда указывается вида http://адрес/публикация/repo.1ccr, но пароль лучше защищать HTTPS.