Back to top

Хранилище конфигурации 1С: основные принципы работы.

Опубликовано e-1c@mail.ru - пн, 05/29/2017 - 04:15

Для групповой разработки конфигурации в системе «1С:Предприятия» 8 используется специальный механизм — хранилище конфигурации. Хранилище конфигурации — это файловая база данных, в которую средствами конфигуратора помещается конфигурация, и которая хранит в себе информацию о редактируемых в данный момент объектах, а также историю изменения этих объектов. Доступ разработчиков к хранилищу конфигурации осуществляется либо в рамках локальной сети, либо по удаленному доступу с использованием веб-сервера. Изначально, конфигурация рассматривается как набор объектов, закрытых для изменения. Чтобы произвести изменения в объекте, его следует захватить, а одновременно объект может быть захвачен только одним пользователем. После работы с захваченными объектами, результат их модификации помещается в хранилище, после чего эти объекты становятся доступными всем участникам групповой разработки. Таким образом, осуществляется контроль доступа к одним и тем же объектам конфигурации, а также обеспечивается синхронизация работы группы разработчиков по модификации конфигурации.

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

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

Так как хранилище- это ничто иное как информационная база, то создать его очень просто. Переходим Конфигурация — Хранилище конфигураций Создать хранилище. В появившемся окне указываем путь, где будет расположена ИБ , а также логин и пароль администратора(данный пользователь не связан с пользователями БД). Нажимаем Ок, в результате чего в указанное место будет выгружена текущая конфигурация.

hranilishe1.jpg

hranilishe1_1.jpg

рис.1

P.S Сразу же после создания хранилища, создайте еще одного пользователя с административными правами, даже если будете работать только вы. Для чего это делается? Объясняю. Не редки случаи, когда пользователь «зависает», а так как увас есть еще один, то вы сможете зайти и снять свой же зависший сеанс. Пользователь создается в пункте Администрирование хранилища.

hranilishe2.jpg

рис.2

Подключение к хранилищу

Собственно хранилище у нас уже есть. Теперь необходимо подключить пользователей к нему. На каждом персональном компьютере разработчика требуется создать пустую базу или загрузить в нее либо *.dt файл либо просто конфигурацию *.cf из основной базы . После этого необходимо перейти в пункт Подключение к хранилищу и ввести имя пользователя и пароль, которые предоставит администратор для каждого пользователя. В результате подключения ваша локальная конфигурация будет полностью заменена конфигурацией из хранилища.

P.S Все данные локальной информационной базы останутся на месте. То есть как бы происходит объединение конфигураций без затрагивания текущих данных БД.

hranilishe3.jpg

рис.3

Обновление и захват хранилища

Если вы уже произвели редактирование в локальной базе и в хотели бы перенести изменения, то вам необходимо выгрузить «конфу» в *.cf файл. После вы подключаетесь к хранилищу. Ваша конфигурация затирается. Теперь необходимо произвести захват объектов. Если вы один в базе, то произведем рекурсивный захват(захватываются все подчиненные объекты) и правой кнопкой мыши нажимаем Захват в хранилище по корневому элементу конфигурации, либо каждый объект захватываете отдельно , если вы работаете вместе. Далее переходите в пункт Сравнить хранилище с конфигурацией из файла. Вуаля — все ваши изменения теперь в хранилище.

hranilishe4.jpg

рис.4

Способ захвата можно установить в появившемся окне рис.5. Либо рекурсивно( 1 ), либо разрешать другим получать захваченные объекты ( 2 )

hranilishe5.jpg

рис.5

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

hranilishe6.jpg

рис.6

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

hranilishe7.jpg

рис.7

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