среда, 23 февраля 2011 г.

1С 8 ХРАНИЛИЩЕ КОНФИГУРАЦИИ

Профессор: - Как называется хранилище для воды? 
Студент: - Презервуар?
Профессор: - Правильно, только без "п".
Студент: - Резерватив?...


Хранилище конфигурации - это полезный функционал 1С 8 для групповой разработки прикладных решений, для версионирования прикладного решения а так же документирования изменений прикладного решения в процессе разработки.
После изучения теоретических материалов выложенных в сети я сделал первый практический шаг в освоении, с которым и хочу с Вами поделится:

Релиз платформы 1С: 8.1.15.14
ОС: WinXP Pro SP3

1. Установим службу Сервера хранилищ конфигурации 8.1 используя команду:
"D:\Program Files\1Cv81\bin\crserver.exe" -instsrvc -d "D:\1c_repository\"
Каталог D:\1c_repository\ был создан предварительно, для размещения в нем конфигураций хранилища.
В отличие от рекомендаций, широко опубликованных в сети, между ключом «-d» и его параметром (путем к корневому каталогу, в котором хранятся каталоги с отдельными хранилищами конфигурации) ОБЯЗАТЕЛЬНО ДОЛЖЕН БЫТЬ ПРОБЕЛ.
2. Настраиваем и стартуем службу.



3. Создадим конфигурацию в каталоге хранилища D:\1c_repository\.

Созданная конфигурация у меня чистая(пустая) и я предполагаю что с ней будут работать программисты удаленно с своих компьютеров.

4. В конфигураторе созданной базы создаем Хранилище.

Указываем путь к файловому каталогу конфигурации.


Заводим учетную запись Администратора Хранилища.


И подключаемся к Хранилищу.


5. Создадим учетную запись для первого удаленного разработчика.



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



В данном примере я подключаюсь к хранилищу с этого же компьютера, поэтому путь указан напрямую к каталогу. Для подключения к Хранилищу по локальной сети необходимо использовать протокол tcp, тогда строка расположения каталога будет иметь следующий вид: "tcp//192.168.0.18/МДБ". Так же, есть возможность использовать протокол http(я не рассматривал).


При успешном подключении будет:

Переключившись на конфигурацию Хранилища с залогиненым Администратором в администрировании Хранилища можно видеть что пользователь подключился к Хранилищу.

Что значит "пользователь подключился к Хранилищу"? Как я понимаю в нашем примере пользователь prada развернул у себя в каталоге ТестХранилищеМожноУдалить копию базы из МБП каталога, которые взаимосвязаны как база разработчика - база хранилища. Т.е. в базе разработчика prada может разрабатывать конфигурацию и после выгрузить свои изменения в хранилище. Получается что все удаленные разработчики работают с базой хранилища через свои базы разработчика. Попробуем поработать с хранилищем.

7. Разработчик prada захватывает объект конфигурации для добавления своих изменений. В примере я захватываю всю конфигурацию, но есть возможность захватить отдельные объекты, что очень удобно.



В дереве конфигурации появится значок указывающий на захваченный объект.

У Администратора(и как я понимаю у других пользователей) значок в дереве конфигурации будет следующий:

Кроме того, у администратора есть возможность отменить захват объекта в меню Администрирование хранилища(не тестировалось).

8. Разработчик prada создает константу и справочник.

У Администратора пока никаких изменений нет.

В меню работы с Хранилищем есть полезная функция "Сравнить/объединить конфигурацию с хранилищем"

В нашем примере, prada добавил константу и справочник.

9. Разработчик prada помещает свои изменения в Хранилище МДБ.

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


У разработчика prada значки в дереве конфигурации изменятся на:

а у Администратора(и других) на:

10. История Хранилища. Хранилище хранит историю внесенных изменений.

11. После завершения работы prada отменяет захват объектов хранилища.


Всё. На этом первый практический урок завершен.

Полезные ссылки:

  1. Групповая разработка прикладных решений от 1С - http://v8.1c.ru/overview/DeveloperGroupp.htm
  2. Опыт развертывания сервера хранилищ конфигураций 8.1 от GrayMagellan на Мисте - http://www.forum.mista.ru/topic.php?id=442593
  3. Хранилище конфигураций 1С:Предприятие 8 от Гилёв Вячеслав - http://www.gilev.ru/1c/storage/index.htm
  4. НАСТРОЙКА УДАЛЕННОГО ХРАНИЛИЩА КОНФИГУРАЦИИ. от Сутчев Андрей - http://www.time1c.ru/index.php?option=com_content&view=article&id=54:2009-12-24-14-57-59&catid=38:2010-01-11-08-12-28&Itemid=64
  5. Радченко М. Г. - Профессиональная разработка в системе 1С Предприятие 8 - 2006 - книга

11 комментариев:

  1. О! Хорошо разобрался с хранилищем, ставлю тебе зачёт! =)

    ОтветитьУдалить
  2. Но увы, хранилище нормально работает примерно с такой конфигурацией какую вы и создали. Работать в хранилище с УПП(большими конфигами) практически невозможно.
    можно пробовать http://blog.1c-ei.ru/2010/12/blog-post_26.html

    ОтветитьУдалить
  3. Ну, до сих пор особых проблем не наблюдалось. У нас размер cf ~21Мб (не предел, конечно, но и не мало) и все работает хорошо. Конечно, блокирующий режим имеет свои особенности, зато без мерджей. Слегка тормозит на узких каналах и от рекурсивного комита всей конфы пришлось отказаться.
    Посмотрим что будет дальше.

    ОтветитьУдалить
  4. Трудно что-то комментировать не имея опыта. Спасибо Герман за сообщение и ссылку, будем пробовать, набираться опыта.

    ОтветитьУдалить
  5. Хорошая статья спасибо. Направлю к Вам в блог студентов, которых обучаю программированию в 1с, пусть ознакомятся с основными принципами работы с хранилищем.

    Так же по опыту могу сказать, что очень помогает публикация хранилища на веб-вервере, ну или как вариант проброс портов для работы с хранилищем по tcp. Так как не всегда есть возможность работать в терминале в полевых условиях, а вот с мобильного интернета взять и захватить объекты в хранилище самое то :)

    ОтветитьУдалить
  6. Спасибо Андрей. Не пробовал еще с веб-сервером. Пробовал только по tcp. Всё обычно упирается в проблему нехватки времени. "Все приходит с опытом." =)

    ОтветитьУдалить
  7. Большое спасибо. Статья очень помогла.

    ОтветитьУдалить
  8. Спасибо Вам, Варя за отзыв. Значит не зря я потратил время и выложил её в интернет.

    ОтветитьУдалить
  9. Про хранилище еще вот хорошая статья есть - http://compaud.ru/blog/2012/06/designer-setup/
    Я как-то у себя в блоге ее упоминал.

    ОтветитьУдалить
  10. Да. Я туда попал как раз с Вашего блога, Александр. ;)
    Цитирую себя "Спасибо. Полезно. Банально, но актуально. Стоило выкладывать 100%."

    ОтветитьУдалить