Разработка и Конфигурация · 11 мин
Как добавить объект в хранилище конфигурации 1С
Пошаговая инструкция: как добавить объект в хранилище конфигурации 1С, захватить его для изменения, поместить обратно и проверить результат без потери данных.
Хранилище конфигурации в 1С — это централизованное хранилище версий конфигурации, которое позволяет нескольким разработчикам работать над одной базой, не мешая друг другу. Каждый объект метаданных (справочник, документ, отчёт, модуль) должен быть захвачен в хранилище перед изменением и помещён обратно после завершения работы. Без этого механизма коллективная разработка превращается в хаос: изменения затирают друг друга, а откатить ошибку становится невозможно.
Добавить объект в хранилище требуется в двух типичных ситуациях: когда вы создали новый объект метаданных и хотите, чтобы он стал доступен другим разработчикам, и когда конфигурацию только подключили к хранилищу и нужно выполнить первоначальную загрузку. Оба сценария выполняются в конфигураторе через меню «Конфигурация — Хранилище конфигурации» и требуют административных прав на хранилище.
Ниже разобраны подготовка, пошаговые действия, проверка результата, типичные ошибки и ограничения, о которых нужно знать перед началом работы.
Что такое хранилище конфигурации и когда объект нужно добавлять
Хранилище конфигурации — это отдельная база (файловая или серверная), в которой платформа сохраняет историю версий конфигурации и данные о том, какой пользователь какие объекты захватил. Разработчик работает со своей локальной информационной базой, подключённой к хранилищу, и обменивается с ним объектами: захватывает для редактирования и помещает обратно.
Объект оказывается «в хранилище» не в момент создания в конфигураторе, а в момент помещения конфигурации, в состав которой он входит. Пока вы просто создали новый справочник в локальной базе, другие разработчики его не видят. Только после команды «Поместить в хранилище» новый объект фиксируется в версии хранилища и становится доступен остальным при получении изменений.
Отдельный случай — создание хранилища с нуля. Администратор создаёт хранилище из эталонной базы, и вся конфигурация целиком загружается как первая версия. Дальнейшие добавления объектов идут уже в штатном режиме захвата и помещения.
Подготовка: права, подключение и резервная копия
Перед добавлением объектов убедитесь, что у вашей учётной записи хранилища есть права на захват и помещение объектов. Права назначает администратор хранилища через окно «Пользователи хранилища конфигурации» (Конфигурация → Хранилище конфигурации → Администрирование → Пользователи). Минимально необходимый набор — право захвата объектов и право изменения версий.
Проверьте, что база подключена к хранилищу: в конфигураторе откройте Конфигурация → Хранилище конфигурации → Подключиться и укажите путь к каталогу хранилища (для файлового варианта) или строку подключения к серверу хранилища. Если база уже подключена, пункт меню будет называться «Отключиться» — это признак активного соединения.
Перед любыми массовыми операциями с хранилищем сделайте выгрузку информационной базы в файл .dt (Администрирование → Выгрузить информационную базу). Это займёт несколько минут, но позволит вернуться к рабочему состоянию, если при помещении что-то пойдёт не так — например, в хранилище попадут недоработанные объекты, которые потом придётся откатывать всей команде.
Как добавить новый объект в хранилище: пошаговая инструкция
Основной сценарий — вы создали новый объект метаданных и хотите зафиксировать его в хранилище. Порядок действий следующий. Откройте конфигуратор, убедитесь, что база подключена к хранилищу, и создайте объект обычным способом — например, новый справочник через контекстное меню ветки «Справочники» в дереве конфигурации.
Чтобы изменения вообще стали возможны, корневой объект конфигурации и нужные родительские ветки должны быть захвачены вами. При попытке редактирования платформа сама предложит выполнить захват — согласитесь. Если диалог не появился, захватите объекты вручную: Конфигурация → Хранилище конфигурации → Захватить в хранилище, и отметьте нужные элементы в дереве.
После того как объект создан и настроен, выполните помещение: Конфигурация → Хранилище конфигурации → Поместить в хранилище. В открывшемся окне отметьте изменённые и новые объекты, введите осмысленный комментарий к версии — он сохранится в истории и поможет понять, что и зачем менялось. Подтвердите операцию. Новый объект будет зафиксирован в новой версии хранилища.
- 1Подключите базу к хранилищу: Конфигурация → Хранилище конфигурации → Подключиться
- 2Захватите нужные объекты или согласитесь на захват при редактировании
- 3Создайте или измените объект метаданных в дереве конфигурации
- 4Выполните проверку конфигурации и устраните ошибки
- 5Выберите Конфигурация → Хранилище конфигурации → Поместить в хранилище
- 6Отметьте объекты, введите комментарий к версии и подтвердите
- 7Проверьте в истории хранилища, что появилась новая версия с вашими объектами
Добавление объектов при создании хранилища с нуля
Если хранилище ещё не существует, первым шагом становится его создание из эталонной базы. Откройте конфигуратор базы, которая послужит источником, и выберите Конфигурация → Хранилище конфигурации → Создать хранилище. Укажите каталог для файлового хранилища или параметры сервера хранилищ, задайте имя и пароль администратора хранилища.
При создании хранилища вся текущая конфигурация загружается в него как первая версия — отдельно добавлять объекты не требуется. Это единственный сценарий, где объекты попадают в хранилище массово и автоматически. После создания хранилища остальные разработчики создают свои базы из хранилища (через «Создать информационную базу из хранилища» в стартовом окне или подключением существующей копии) и начинают штатную работу с захватом и помещением.
Учтите: база, из которой создавалось хранилище, автоматически становится подключённой к нему. Если эта база использовалась как рабочая, переведите пользователей на другую копию — эталонную базу лучше зарезервировать под задачи администрирования хранилища.
Как проверить, что объект добавлен корректно
Первый признак успеха — новая версия в истории хранилища. Откройте Конфигурация → Хранилище конфигурации → История хранилища и найдите свою версию с комментарием. В деталях версии должен быть виден список изменённых объектов, включая добавленный вами.
Второй способ проверки — со стороны другого разработчика. Попросите коллегу выполнить «Получить из хранилища» в его базе: новый объект должен появиться в дереве конфигурации. Если объект появился, открывается и не вызывает ошибок при обновлении конфигурации базы данных — добавление выполнено корректно.
Также проверьте статус захвата: после помещения объект либо остаётся захваченным вами (если вы не сняли флажок отмены захвата), либо освобождается. Решите осознанно: если работа над объектом закончена, отменяйте захват при помещении, чтобы не блокировать коллег.
Как проверить результат
Появилась новая версия с вашим комментарием и списком объектов
Версии нет или в ней отсутствуют нужные объекты
Новый объект появляется в базе коллеги после получения из хранилища
Объект не виден или вызывает ошибку обновления
Завершённые объекты освобождены, в работе — захвачены вами
Объекты «висят» захваченными, хотя работа закончена
Типичные ошибки и ограничения
Самая частая ошибка — попытка поместить объект, захваченный другим разработчиком. Платформа откажет в операции, и это нормально: дождитесь освобождения объекта или попросите коллегу отменить захват. Администратор хранилища может снять чужой захват принудительно, но делать это стоит только если владелец недоступен, иначе его несохранённые правки могут конфликтовать с вашими.
Вторая группа проблем — помещение конфигурации, не прошедшей проверку. Ошибки в модулях, битые ссылки на удалённые объекты, незаполненные обязательные свойства — всё это уедет в хранилище и разойдётся по базам команды. Перед помещением всегда запускайте проверку конфигурации и обновление конфигурации базы данных в своей локальной копии.
Третья типичная ситуация — забытый захват. Разработчик правит объект в базе, отключённой от хранилища, а потом не может поместить изменения, потому что объект уже захвачен и изменён коллегой. Лечение — только ручное сравнение и перенос доработок. Правило простое: не редактируйте конфигурацию в отключённой от хранилища базе, если изменения планируется вернуть в общую линию разработки.
Ограничения механизма и альтернативы
Хранилище конфигурации работает только в клиент-серверном или файловом варианте с прямым доступом к каталогу хранилища; для распределённых команд с медленными каналами механизм может ощутимо тормозить, особенно операции получения больших версий. Кроме того, хранилище не поддерживает ветвление в привычном по системам контроля версий смысле — линия разработки одна, параллельные ветки ведутся через отдельные хранилища.
Для команд, которым нужны ветки, код-ревью и интеграция с привычными инструментами, существует альтернатива — EDT (1C:Enterprise Development Tools) с выгрузкой конфигурации в файлы и хранением в Git. Это более современный подход, но он требует перехода команды на другую среду разработки и перестройки процессов. Для небольших команд, работающих в конфигураторе, классическое хранилище остаётся простым и надёжным решением.
Сравнение вариантов
Подходит для команд в конфигураторе; простая настройка, но нет ветвления и требуется захват объектов
Подходит для зрелых процессов: ветки, код-ревью, CI; требует перехода на EDT и навыков работы с Git
Допустимо только для одного разработчика; при коллективной работе неизбежны потери изменений
FAQ
Можно ли добавить объект в хранилище, не захватывая его?
Захват нужен для изменения существующих объектов. Новый объект вы создаёте внутри захваченных родительских веток (например, корня конфигурации и ветки «Справочники»), поэтому формально захват всё равно происходит — просто на уровне родителей. Полностью без захвата поместить изменения в хранилище нельзя.
Что делать, если объект захвачен уволившимся сотрудником?
Администратор хранилища может отменить чужой захват: Конфигурация → Хранилище конфигурации → Администрирование, либо через окно захваченных объектов с правами администратора. Перед этим убедитесь, что в базе сотрудника не осталось нужных несохранённых доработок — после отмены захвата вернуть их будет сложно.
Почему при помещении возникает ошибка «Объект изменён в хранилище»?
Это значит, что после вашего захвата в хранилище появилась более новая версия объекта — например, администратор отменял захваты или выполнялся откат версии. Получите актуальную версию из хранилища, перенесите свои изменения поверх неё и повторите помещение.
Можно ли добавить в хранилище сразу много новых объектов?
Да. Создайте все нужные объекты в локальной базе, затем в окне «Поместить в хранилище» отметьте их все — они войдут в одну версию. Это даже удобнее: связанные объекты фиксируются атомарно, и коллеги получают целостное изменение, а не промежуточные состояния.
Как откатить объект, ошибочно добавленный в хранилище?
Удалить объект из истории хранилища нельзя — версии неизменяемы. Правильный путь: захватите объект, удалите его в конфигураторе и поместите удаление новой версией. Если требуется вернуться к старому состоянию многих объектов, получите в отдельную базу нужную версию из истории и перенесите объекты оттуда.
Обязательно ли писать комментарий при помещении?
Технически платформа позволяет поместить версию без комментария, но на практике это создаёт проблемы: по истории версий невозможно понять, где какое изменение. Договоритесь в команде о формате комментариев — например, номер задачи плюс краткое описание сути доработки.
Что важно запомнить
Объект попадает в хранилище конфигурации 1С при помещении версии, а не при создании в конфигураторе. Рабочий цикл: подключение → захват → изменение → проверка → помещение с комментарием. Перед помещением делайте резервную копию и проверку конфигурации, после — сверяйте результат по истории хранилища и получению изменений в другой базе.