1с хранилище конфигурации как пользоваться

Обновлено: 05.07.2024

Изначально было интересно как же устроено хранилище конфигурации, возможно ли каким-либо образом вытащить из него данные и работать с ними. Стандартные средства работы с хранилищем из конфигуратора есть, но для доступа к данным необходим доступ в конфигуратор, а это не всегда возможно обеспечить. Например, есть потребность у службы технической поддержки посмотреть какие были сделаны изменения в рабочей конфигурации за вчера, чтобы сопоставить с обращениями пользователей. Или для системы учета обращений сопоставить конкретное обращение с изменениями в конфигурации (измененные объекты). Или, наконец, построить банальный отчет по изменениям в конфигурации за период.

Что нам потребуется:

Интересующие нас на данном этапе параметры в секции auth: password и user.

Если с User все понятно - это логин, то с password все оказалось сложнее. Это хэш пароля, но как оказалось, хэш не простой. Я долго не мог понять как он формируется, но в итоге удалось определить, что хэш пароля формируется по алгоритму CAPICOM_HASH_ALGORITHM_MD5.

В ответ на этот запрос сервер хранилища отвечает нам тоже данными в виде XML


В итоге, имеем 3 секции:

  1. statMap - информация о версиях
  2. bindInfos - информация о подключениях к хранилищу
  3. users - информация о пользователях хранилища

Уже что-то есть, но нам этого мало. Хотим историю хранилища.

Идем дальше.

Запрос на получение истории хранилища следующий (получил я его так же как и в первом примере)


По авторизации все понятно, остальные параметры я оставлял как есть. Предполагаю, что параметры begindate, enddate, beginvernum и endvernum для фильтрации истории по дате и номерам версий.

Отправив такой запрос мы получим ответ в следующем формате:


Уже интереснее. Мы имеем номер версии, версию платформы (pver. ), дату версии, версию конфигурации, а так же метку(комментарий).

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


Уже все просто. Помимо авторизации нам необходим параметр verNum - номер версии. Отправляем этот запрос серверу хранилища и получаем ответ:


Вот это именно то, чего я хотел.

  • Name - наименование объекта
  • action - действие (опытным путем понял, что "0" - Добавление, 1 и 5 - изменение)
  • fullName - полное наименование объекта метаданных, где нечто похожее на ГУИД - это идентификатор родителя (Справочник, документ, форма и т.д.), ниже приведу расшифровку того, что мне удалось расшифровать

Дальше, в планах получение версии объекта из хранилища, если кого-то заинтересует, опишу и этот функционал.

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

Рассмотрим настройки и работу с хранилищем конфигурации подробнее.

Внешний вид хранилища

Как работает хранилище 1С

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

Захватить можно как объект целиком (рекурсивно), так и отдельно объект или формы.

Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>

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

Как создать хранилище 1С

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

Как подключиться к хранилищу 1С

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

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

Администрирование хранилища конфигурации 1С

Администрирование хранилища

Как просмотреть историю хранилища 1С

История изменения объектов

В истории хранилища 1С можно увидеть, когда, кем и что было изменено.

Разработка с хранилищем 1С 8.3

Работу с хранилищем условно можно разделить на основные действия:

    конфигурации из хранилища конфигурации 1С;
  • обновить статусы хранилища 1С;
  • захват в хранилище;
  • помещение в хранилище.

Остановимся подробнее на каждом действии:

Обновить статусы хранилища 1С

Производит получение последних статусов объектов (захвачен или нет).

Обновление конфигурации из хранилища конфигурации 1С

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

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

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

Произвести захват можно, вызвав правой кнопкой контекстное меню у объекта метаданных:

Захват в хранилище 1С

В открывшемся окне можно установить некоторые настройки:

Объект в хранилище

Помещение в хранилище 1С

Поместить константу в хранилище

Как добавить новый объект в хранилище 1С


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

Создание хранилища конфигурации

Начнём работу с создания хранилища конфигурации. Запускаем 1С в режиме Конфигуратор.

Хранилище конфигурации в 1С

Выбираем меню «Конфигурация», подменю «Хранилище конфигурации» пункт «Создать хранилище».

Хранилище конфигурации в 1С

В появившемся окне необходимо указать каталог в котором будет располагаться наше хранилище конфигурации. Затем нажимаем «Далее».

Хранилище конфигурации в 1С

В данном окне необходимо задать пароль для учётной записи «Администратор». Задаём пароль, подтверждаем пароль и нажимаем «ОК».

Хранилище конфигурации в 1С

Начинается процесс создание системой хранилища конфигурации. Дожидаемся окончания.

Хранилище конфигурации в 1С

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

После создания хранилища конфигурации система предложит подключиться к нему. Нажимаем «Да».

Хранилище конфигурации в 1С

Чтобы подключиться к существующему хранилищу конфигурации выбираем меню «Конфигурация», подменю «Хранилище конфигурации» пункт «Подключиться».

Хранилище конфигурации в 1С

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

Указываем адрес хранилища, логин и пароль.

Хранилище конфигурации в 1С

Администрирование хранилища конфигурации

Для администрирования конфигурации выбираем меню «Конфигурация», подменю «Хранилище конфигурации» пункт «Администрирование хранилища».

Хранилище конфигурации в 1С

На первой вкладке расположен список пользователей хранилища. Так же здесь можно создать новых пользователей. Для этого нажимаем создать, указываем логин, пароль нового пользователя и указываем права. Всего есть три роли прав «Административные функции», «Изменение состава версий» и «Захват объектов».

Хранилище конфигурации в 1С

Вторая вкладка «Подключение» здесь содержится информация о всех подключенных к хранилищу пользователях.

Хранилище конфигурации в 1С

Вкладка «Отмена захвата» предназначена для освобождения захваченных пользователями объектов конфигурации. Здесь можно показать захваченные объекты конкретного пользователя и отменить их захват кнопкой «Отменить захват».

Хранилище конфигурации в 1С

Вкладка «Прочее» предназначена для работы с кэшем хранилища и его оптимизации.

Хранилище конфигурации в 1С

Работа с хранилищем конфигурации

Захват объекта в хранилище

Для изменения объекта конфигурации его необходимо захватить в хранилище конфигурации. Нажимаем правой клавишей мыши на интересующий нас объект конфигурации и из контекстного меню выбираем «Захватить в хранилище».

Хранилище конфигурации в 1С

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

Хранилище конфигурации в 1С

Помещение объекта в хранилище

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

Хранилище конфигурации в 1С

В случае, если мы не хотим сохранять внесённые в захваченный объект изменения, необходимо отменить захват. На захваченный объект нажимаем правой кнопкой мыши в контекстном меню выбираем «Отменить захват в хранилище».

Обновление конфигурации из хранилища

Необходимо периодически получать изменённые другими пользователями объекты из конфигурации. Можно получить все изменённые объекты или какой-то конкретный объект.

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

Хранилище конфигурации в 1С

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

История хранилища

Список всех действий с хранилищем конфигурации хранится в «Истории хранилища». Меню «Конфигурация», подменю «Хранилище конфигурации» пункт «История хранилища».

Хранилище конфигурации в 1С

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

Хранилище конфигурации в 1С

Как оптимизировать работу с 1С?

Сделать это можно двумя основными способами:

Иметь в штате квалифицированных специалистов, которые имеют достаточную компетенцию для решения основных вопросов.

Обратиться за сопровождением 1С к сторонним специалистам.

Почему клиенты обращаются именно к нам?

Мы предлагаем не только внедрение, настройку и сопровождение, но и разработку под 1С, которая позволит оптимизировать ваши бизнес-процессы.

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

Вам не нужно оплачивать больничные, отпускные и готовить рабочее место для нового сотрудника.

Среди наших сотрудников не только специалисты 1С, но и опытные бухгалтера и юристы, поэтому мы подходим всесторонне к вопросу документооборота и отчетности.

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

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

Анна Викулина

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

Существуют хранилища двух видов. Рассмотрим их использование на примере программы «1С:Бухгалтерия предприятия 3.0».

Стандартное хранилище настроек пользователя 1С

В решениях 1С:Предприятие предусмотрено стандартное хранение, предустановленное на уровне разработки. При таком варианте сделанные установки хранятся в таблицах ИБ.

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

Если поля хранилищ оставить пустыми, то система будет использовать стандартное хранилище.

Рис.2 Стандартное хранилище настроек пользователя 1С

Рис.2 Стандартное хранилище настроек пользователя 1С

К настройкам из предустановленных хранилищ администратор имеет возможность обратиться как к свойству глобального контекста:

ХранилищеВариантовОтчетов – для установленных параметров вариантов отчетов, сохраненных пользователем.

Пример использования в коде.

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

Пример использования в коде.

ХранилищеНастроекДанныхФорм – хранит пользовательские установки данных форм.

Пример использования в коде.

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

ХранилищеСистемныхНастроек – для организации хранения системных установок программы и доступа к ним.

ХранилищеПользовательскихНастроекДинамическихСписков – с его помощью осуществляется хранение пользовательских установок динамических списков.

Рис.8 ХранилищеПользовательскихНастроекДинамическихСписков

Рис.8 ХранилищеПользовательскихНастроекДинамическихСписков

Механизм работы

Механизм «Хранилища настроек» как объект метаданных описывает порядок хранения настроек некоторых объектов. Откроем для примера программу «1С:Бухгалтерия предприятия 3.0» в конфигурационном режиме и развернем дерево метаданных. Нас интересует узел в разделе «Общие-Хранилища настроек».

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

Использование в отчетах и обработках

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

В управляемых формах имеется два варианта:

  • Сохранение параметров в предустановленное хранилище при закрытии формы автоматом и при открытии – восстановление из него;
  • В настройках. Чтобы воспользоваться этим вариантом, установим в списке реквизитов формы галку напротив сохраняемого реквизита в колонке «Сохранять».

Реквизиты формы отчета

С помощью вышеописанного механизма можно сохранить данные не в системных таблицах, а отдельных объектах конфигурации. Для его реализации программист описывает алгоритмы, по которым идет процесс сохранения/восстановления настроек.

Хранилища настроек дают возможность сохранить и, если надо посмотреть, настройки параметров формируемых отчетов, что позволяет автоматически заполнять формы настроек, тем самым оптимизируя работу. Если у вас остались вопросы, обращайтесь на линию консультаций 1С 8.3, наши специалисты с радостью вам помогут.

Читайте также: