Механизм сравнения и объединения конфигураций позволяет сравнивать между собой два прикладных решения и объединять их полностью или выборочно по результатам сравнения, например:
- когда одно прикладное решение разрабатывается несколькими независимыми разработчиками, или
- когда в исходную конфигурацию нужно загрузить сделанные изменения.
Механизм сравнения и объединения конфигураций обеспечивает сравнение:
- общих свойств объектов прикладного решения (справочников, документов и т.д.);
- отдельных реквизитов, табличных частей объектов прикладного решения;
- форм (сравниваются тексты модулей, тексты описаний и макеты).
Все результаты сравнения можно просмотреть в детальном виде.
Вызов механизма сравнения и объединения конфигураций осуществляется с помощью меню "Конфигурация":
Установка соответствия объектов в 1С
При запуске режима сравнения система анализирует сравниваемые конфигурации и устанавливает соответствие между их объектами, исходя из имен:
При объединении можно установить режим объединения для каждого объекта конфигурации.
В случаях, когда
- одинаковые объекты прикладного решения будут иметь различные имена или наоборот,
- различные объекты будут называться одинаково
разработчик имеет возможность отказаться от соответствий, установленных по умолчанию, и установить их вручную.
Сначала отменяем автоматические соответствия:
Затем устанавливаем вручную:
Сравнение конфигураций 1С
Алгоритмы сопоставления объектов сравниваемых конфигураций:
- Сравнение произвольных конфигураций:
- Выполняется сопоставление по имени объекта.
- Если для каких-то объектов пару найти не удалось, выполняется сопоставление по идентификатору.
- Сравнение родственных конфигураций. Имеются ввиду конфигурации, про которые можно точно утверждать, что они являются различными версиями одной и той же конфигурации (примеры - сравнение основной конфигурации с конфигурацией базы данных или с конфигурацией хранилища).
- Выполняется сопоставление только по идентификатору объекта. Имя объекта не используется.
- Сравнение с конфигурацией поставщика.
- Выполняется сопоставление по идентификаторам, но при этом идентификаторы не обязательно должны быть одинаковы.
Его особенность связана с наличием двух вариантов поддержки:
- с включенной возможностью изменений;
- без возможности изменений.
В первом случае используется управляемое объединение конфигураций, и при этом новые объекты получают новые идентификаторы. Вместе с тем, сопоставлять объекты по именам в этом случае нельзя, поскольку изменение пользователем имени не должно приводить к потере связи с объектом поставщика. В связи с этим используется следующая техника. Для каждого объекта поставщика запоминается пара идентификаторов объектов (в конфигурации поставщика и в конфигурации на поддержке). И сопоставление выполняется только по этим парам. Для обеспечения логической целостности поддержки конфигурации единожды созданная пара никогда не изменятся. Если в новой версии поставщика появился новый объект, то пользователь при обновлении может просто его скопировать, а может сопоставить с каким-то своим объектом. Но в дальнейшем эту связь изменить будет нельзя.
Во втором случае обновление выполняется путем загрузки новой версии конфигурации поставщика, то есть идентификаторы объектов при этом не изменяются.
В качестве сравниваемых конфигураций могут выступать:
- основная конфигурация;
- конфигурация базы данных;
- конфигурация, сохраненная во внешнем файле;
- конфигурация поставщика.
Таким образом, например, возможно сравнение двух конфигураций, сохраненных во внешних файлах, или сравнение основной конфигурации с конфигурацией поставщика.
Результат сравнения конфигураций отображается в специальном окне. При этом разработчик имеет возможность настроить состав информации, отображаемой в этом окне и установить отображение:
- всех объектов прикладного решения;
- только отличающихся объектов;
- только измененных объектов;
- присутствующих только в какой-либо одной конфигурации;
- только неизмененных объектов.
Для каждого отличающегося объекта можно просмотреть детальную информацию об отличиях.
Кроме того, информация об отличиях может быть получена в виде отчета (текстовый или табличный документ).
Объединение конфигураций 1С
Для выполнения объединения конфигураций следует отметить те объекты прикладного решения, которые будут участвовать в объединении и установить режим объединения конфигураций в поле "Режим объединения и порядок подчиненных объектов" (или через контекстное меню).
Установка режима объединения конфигураций возможна:
- для всей конфигурации в целом;
- для каждого элемента прикладного решения в отдельности.
Особенности сравнения (объединения) конфигураций 1С:
- При объединении с приоритетом загружаемой конфигурации текст модулей, измененный в основной конфигурации, будет закомментирован, а текст из загружаемой конфигурации будет добавлен.
- При выполнении сравнения, объединения с конфигурацией из файла, в режиме "Взять из файла" измененный объект будет замещен полностью.
Рисунок[свернуть]
-
При сравнении и объединении конфигурации, в которой используются несколько языков, можно указать выборочное сравнение по языкам.Рисунки[свернуть]
- Элементы управления форм в режиме объединения конфигурации:
- новые всегда добавляются;
- совпадающие по именам заменяются, если приоритет у загружаемой, иначе не изменяются.
- Режим объединения конфигураций можно установить:
- для каждого объекта;
- для всей конфигурации;
- по подсистемам основной конфигурации;
- по подсистемам загружаемого объекта.
Рисунок[свернуть]
- При использовании режима "Сравнение, объединение с конфигурацией из файла" при установленном флаге "Разрешать удаление объектов основной конфигурации":
- объекты текущей конфигурации, которым не сопоставлены объекты загружаемой конфигурации будут удалены;
- при сброшенном флаге, вне зависимости от приоритета объединения, объекты текущей конфигурации, которым не сопоставлены объекты загружаемой конфигурации, будут оставлены в результате объединения.
Сохранение (загрузка) настроек объединения конфигураций
Настройки объединения конфигураций (или настройки обновления конфигурации на поддержке) можно:
- сохранять в xml файл;
- загружать из xml файла;
- добавлять из xml файла.
Пакетный режим запуска конфигуратора также поддерживает использование настроек при объединении и обновлении конфигураций. Таким образом при объединении конфигураций, содержащих большое количество изменений, когда объединение выполняется регулярно, существует возможность полностью автоматизировать операции сборки конфигураций.
Использование для сравнения и объединения модулей конфигурации 1С внешней программы
Существует целый ряд сторонних специализированных программ, с помощью которых (после их подключения в настройках конфигуратора) можно выполнять сравнение, настройки объединения и собственно объединение модулей конфигурации.
В конфигураторе 1С:Предприятия уже содержатся параметры командной строки для запуска самых распространённых программ:
При желании можно использовать и другие программы, которые поддерживают запуск из командной строки. Их параметры нужно добавить в настройки конфигуратора самостоятельно.