Что произойдет с предопределенными данными при объединении конфигурации с приоритетом основной
Сравнение и объединение конфигураций 1С
Механизм сравнения и объединения конфигураций позволяет сравнивать между собой два прикладных решения и объединять их полностью или выборочно по результатам сравнения, например:
Механизм сравнения и объединения конфигураций обеспечивает сравнение:
Все результаты сравнения можно просмотреть в детальном виде.
Вызов механизма сравнения и объединения конфигураций осуществляется с помощью меню «Конфигурация»:
Установка соответствия объектов в 1С
При запуске режима сравнения система анализирует сравниваемые конфигурации и устанавливает соответствие между их объектами, исходя из имен:
разработчик имеет возможность отказаться от соответствий, установленных по умолчанию, и установить их вручную.
Сначала отменяем автоматические соответствия:
Затем устанавливаем вручную:
Сравнение конфигураций 1С
Алгоритмы сопоставления объектов сравниваемых конфигураций:
Его особенность связана с наличием двух вариантов поддержки:
В первом случае используется управляемое объединение конфигураций, и при этом новые объекты получают новые идентификаторы. Вместе с тем, сопоставлять объекты по именам в этом случае нельзя, поскольку изменение пользователем имени не должно приводить к потере связи с объектом поставщика. В связи с этим используется следующая техника. Для каждого объекта поставщика запоминается пара идентификаторов объектов (в конфигурации поставщика и в конфигурации на поддержке). И сопоставление выполняется только по этим парам. Для обеспечения логической целостности поддержки конфигурации единожды созданная пара никогда не изменятся. Если в новой версии поставщика появился новый объект, то пользователь при обновлении может просто его скопировать, а может сопоставить с каким-то своим объектом. Но в дальнейшем эту связь изменить будет нельзя.
Во втором случае обновление выполняется путем загрузки новой версии конфигурации поставщика, то есть идентификаторы объектов при этом не изменяются.
В качестве сравниваемых конфигураций могут выступать:
Таким образом, например, возможно сравнение двух конфигураций, сохраненных во внешних файлах, или сравнение основной конфигурации с конфигурацией поставщика.
Результат сравнения конфигураций отображается в специальном окне. При этом разработчик имеет возможность настроить состав информации, отображаемой в этом окне и установить отображение:
Для каждого отличающегося объекта можно просмотреть детальную информацию об отличиях.
Кроме того, информация об отличиях может быть получена в виде отчета (текстовый или табличный документ).
Объединение конфигураций 1С
Для выполнения объединения конфигураций следует отметить те объекты прикладного решения, которые будут участвовать в объединении и установить режим объединения конфигураций в поле «Режим объединения и порядок подчиненных объектов» (или через контекстное меню).
Установка режима объединения конфигураций возможна:
Особенности сравнения (объединения) конфигураций 1С:
Сохранение (загрузка) настроек объединения конфигураций
Настройки объединения конфигураций (или настройки обновления конфигурации на поддержке) можно:
Пакетный режим запуска конфигуратора также поддерживает использование настроек при объединении и обновлении конфигураций. Таким образом при объединении конфигураций, содержащих большое количество изменений, когда объединение выполняется регулярно, существует возможность полностью автоматизировать операции сборки конфигураций.
Использование для сравнения и объединения модулей конфигурации 1С внешней программы
Существует целый ряд сторонних специализированных программ, с помощью которых (после их подключения в настройках конфигуратора) можно выполнять сравнение, настройки объединения и собственно объединение модулей конфигурации.
В конфигураторе 1С:Предприятия уже содержатся параметры командной строки для запуска самых распространённых программ:
При желании можно использовать и другие программы, которые поддерживают запуск из командной строки. Их параметры нужно добавить в настройки конфигуратора самостоятельно.
Добавить комментарий Отменить ответ
Для отправки комментария вам необходимо авторизоваться.
Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.
Сравнение и объединение конфигураций
Механизм сравнения и объединения конфигураций позволяет сравнивать между собой два прикладных решения и объединять их полностью или выборочно по результатам сравнения.
Такая возможность используется, например, когда одно прикладное решение разрабатывается несколькими независимыми разработчиками, или в случае, когда в исходную конфигурацию нужно загрузить сделанные изменения.
Этот механизм обеспечивает не только сравнение общих свойств объектов прикладного решения (справочников, документов и т. д.), но и сравнение их отдельных реквизитов, табличных частей. Также выполняется сравнение форм: сравниваются тексты модулей, тексты описаний и макеты.
Все результаты сравнения можно просмотреть в детальном виде.
Установка соответствия объектов
При запуске режима сравнения система анализирует сравниваемые конфигурации и устанавливает соответствие между объектами конфигураций, исходя из их имен:
Однако не исключена ситуация, когда одинаковые объекты прикладного решения будут иметь различные имена или наоборот, различные объекты будут называться одинаково. В этом случае разработчик имеет возможность отказаться от соответствий, установленных по умолчанию, и установить их вручную:
Сравнение конфигураций
Результат сравнения конфигураций отображается в специальном окне:
Разработчик имеет возможность настроить состав информации, отображаемой в этом окне. Возможен просмотр всех объектов прикладного решения, только отличающихся, только измененных, присутствующих только в какой-либо одной конфигурации или только неизмененных объектов.
Для каждого отличающегося объекта можно просмотреть детальную информацию об отличиях:
Кроме того, информация об отличиях может быть получена в виде отчета:
Объединение конфигураций
Для выполнения объединения конфигураций следует отметить те объекты прикладного решения, которые будут участвовать в объединении и установить режим объединения конфигураций.
Установка режима объединения конфигураций возможна как для всей конфигурации в целом, так и для каждого элемента прикладного решения в отдельности:
Варианты сравнения и объединения конфигураций
Таким образом, например, возможно сравнение двух конфигураций, сохраненных во внешних файлах, или сравнение основной конфигурации с конфигурацией поставщика.
Сохранение / загрузка настроек объединения конфигураций
Настройки объединения конфигураций (или настройки обновления конфигурации на поддержке) можно сохранять в xml файл. Также доступна и обратная операция — загрузка этих настроек из файла.
Пакетный режим запуска конфигуратора также поддерживает использование настроек при объединении и обновлении конфигураций. Таким образом при объединении конфигураций, содержащих большое количество изменений, когда объединение выполняется регулярно, существует возможность полностью автоматизировать операции сборки конфигураций.
Использование внешней программы
Существует целый ряд сторонних специализированных программ, с помощью которых можно выполнять объединение модулей. Если недостаточно встроенных возможностей 1С:Предприятия, или если хочется использовать одну из сторонних программ, есть возможность подключить её в настройках конфигуратора и использовать для сравнения, настройки объединения и собственно объединения модулей конфигурации.
При желании можно использовать и другие программы, которые поддерживают запуск из командной строки. Их параметры нужно добавить в настройки конфигуратора самостоятельно.
Сравнение и объединение конфигураций
В окне производится управление процессом сравнения и объединения конфигураций или внешних отчетов и обработок.
Режим объединения конфигураций
Порядок подчиненных объектов | Описание режима |
Порядок из основной конфигурации | Сопоставленные объекты будут упорядочены в соответствии с их порядком в основной конфигурации. |
Порядок из загружаемой конфигурации | Сопоставленные объекты будут упорядочены в соответствии с их порядком в загружаемой конфигурации. |
Если флажок «Сохранять настройки автоматически» установлен, то перед выполнением операции настройки будут автоматически сохранены.
Чтобы выполнить объединение в соответствии с заданными правилами, следует нажать кнопку Выполнить.
Объединить с приоритетом новой конфигурации поставщика. Режим объединения
В этой статье будет рассказано про обновление нетиповой конфигурации 1С (редакций 8.2 и 8.3), с сохранением всех изменений внесенных вами (или другими разработчиками) в типовую конфигурацию 1С 8.
Рассмотрим пример обновления конфигурации Бухгалтерия 2.0 с нетиповыми изменениями в модулях, ролях, подписках на события, планах обмена и т.д. Рассмотренные здесь случаи не будут слишком сложными для обновления, при их помощи я лишь покажу методику обновления, что позволит вам разобраться со своими случаями.
Обновление нетиповой конфигурации 1С пошаговая инструкция
Рассмотрим по шагам алгоритм обновления конфигурации 1С 8. Данный алгоритм является универсальным, первые одиннадцать его шагов описывают процесс обновления любой типовой конфигурации 1С 8, а все пункты в совокупности описывают обновление нетиповой конфигурации 1С 8:
Обновление нетиповой конфигурации 1С разбор примера
Перейдем к подробному разбору правильного обновления нетиповой конфигурации 1С 8. Вся проблема обновления такой конфигурации заключается в том, что в типовые объекты метаданных (общие модули, роли, документы, справочники и т.д.) внесены сторонние изменения. Надо сделать так, что бы все ваши изменения остались на своем месте, в целости и сохранности, но при этом все изменения фирмы 1С, содержащиеся в файле обновления, тоже были применены. Именно для этого при обновлении измененной конфигурации появляется окно сравнения Основной конфигурации (с вашими изменениями) и Новой конфигурации поставщика (обновленная типовая конфигурация).
В данном окне присутствует две колонки, каждая из которых содержит дерево метаданных. В первой показаны метаданные текущей конфигурации базы данных, а во второй обновленные метаданные конфигурации поставщика (обновленная типовая конфигурация). Зелеными карандашиками отмечены измененные объекты, в первом столбце помечены измененные вами типовые объекты метаданных, а во втором измененные обновлением типовые объекты метаданных. Таким образом, чтобы произвести правильное обновление нетиповой конфигурации 1с, нужно найти все объекты метаданных, которые изменены и вами и обновлением (то есть дважды измененные).
Теперь в окне сравнения будут видны только нужные нам объекты, что значительно облегчает процесс обновления. Следует заметить, что если в вашей конфигурации добавлены новые нетиповые документы, справочники, роли, модули и т. п., то их обновление конфигурации не затрет, они останутся на своем месте и ничего с ними не случиться. Проблему составляют только измененные типовые объекты.
Для правильного обновления разных объектов метаданных нужен свой подход, поэтому рассмотрим на несложных примерах различные ситуации. Замечу также, что обновление сильно переписанных конфигураций задача сложная и требует максимальной внимательности и сосредоточения.
Обновление общего модуля.
При обновлении этот модуль изменился, поставив в окне сравнения фильтр по дважды измененным мы увидим, что он попал в список.
Рассмотрим подробнее данное окно, и поймем какую информацию из него мы сможем почерпнуть. Во-первых, мы видим, что общий модуль изменен и в основной конфигурации и в обновленной конфигурации поставщика, об этом говорят зеленые карандашики в обоих столбцах. Во-вторых, в первом столбце мы видим установленный флажок возле имени общего модуля, он говорит о том, что будет произведено объединение модулей (того, что изменен нами и типового обновленного). В-третьих, в последнем столбце мы видим в каком режиме произойдет объединение модулей. В данном случае установлено значение: Взять из новой конфигурации поставщика, это означает, что наши изменения будут полностью затерты, а изменения внесенные обновлением будут полностью применены.
Другие режимы объединения предлагают частичное объединение модулей, с различными приоритетами. Но я вам настоятельно рекомендую не использовать эти режимы, так как после этого в вашем модуле может получиться натуральная «каша»: некоторые ваши изменения будут затерты, а некоторые типовые изменения не применятся. Поэтому изменять значения в столбце Режим объединения… мы никогда не будем. В-четвертых, если снять галку установленную в первом столбце напротив модуля, то объединение производиться не будет и модуль останется в том виде в котором он был до обновления.Исходя из перечисленных пунктов есть два способа обновить общий модуль:
Механизмы сравнения конфигураций
Для сравнения изменений в модуле можно воспользоваться следующими встроенными механизмами окна сравнения-объединения конфигураций:
Не смотря на то, что данный отчет предоставляет всю информацию о изменениях, он не удобен в работе (по крайней мере при обновлении модулей). Гораздо более интересны две его модификации: Отчет о сравнении объектов основной конфигурации со старой конфигурацией поставщика (в этом отчете видны только изменения внесенные вами) и (в этом отчете видны только только изменения внесенные в модуль обновлением).
При помощи первого отчета можно увидеть во скольких местах внесены ваши изменения в модуле, это позволит быстро найти их в окне Просмотра различий в модулях. Во втором же отчете можно увидеть во скольких местах типовое обновление внесло свои изменения.
Мы разобрали все инструменты необходимые для обновления модуля. Для того, что бы показать их практическое применение рассмотрим по шагам процесс обновления модуля КонтрольВерсииКонфигураци с перечисленными выше изменениями. Обновим модуль двумя способами:
Найдем ее в модуле и установим комментарий;
Обновление плана обмена.
Рассмотрим пример: в состав плана обмена ПоОрганизации вы включили справочник ВнешниеОбработки. При обновлении нетиповой конфигурации 1с состав данного плана обмена изменился и перед нами стоит задача правильно обновить план обмена, не затерев ни типовые изменения, ни свои. Инструменты используемые для сравнения измененных объектов метаданных были подробно описаны в предыдущих пунктах, поэтому для данного случая все будет описано кратко.
Рассмотрим по шагам обновление состава плана обмена ПоОрганизации с указанными изменениями:
Обновление подписки на событие.
Рассмотрим пример: в источник подписки на событие ПередУдалениемСправочникаДляОбменаПоОрганизации вы включили справочник ВнешниеОбработки. При обновлении состав источников изменился, задача аналогичная предыдущим — выполнить обновление нетиповой конфигурации 1с правильно.
Рассмотрим по шагам обновление состава источников подписки на событие с указанными изменениями:
Обновление ролей в 1С
Перед тем, как начать рассказывать про обновление ролей в 1С 8, хочется заметить, что лучше не изменять типовые роли, в этом нет никакой необходимости, к тому же сильно затрудняется обновление нетиповой конфигурации 1с. Если вы дорабатываете какую либо типовую конфигурацию и добавляете в нее свои документы, справочники и т.д., то создайте свою роль (или несколько, в зависимости от ситуации), в которую включите новые объекты метаданных. Если вы так не сделаете, то со временем вам будет очень тяжело обновлять типовые роли (а под час невозможно), так как почти в каждом релизе они сильно изменяются и отчеты о сравнении конфигураций могут выглядеть не слишком понятно.
Но все же часто бывают случаи когда роль уже изменена, и не один раз, а разбираться зачем и почему времени нет. Поэтому рассмотрим пример: в типовой роли Бухгалтер для справочника НалоговыеОрганы добавлены права на чтение и просмотр, при обновлении набор прав роли также был изменен.
Рассмотрим обновление роли по шагам:
При добавлении нового объекта в отчете не выводятся данные о том, какие права необходимо для него установить. Поэтому после обновления можно либо посмотреть их расстановку в конфигурации поставщика, либо установить все доступные.
При этом можно указать какой это объект метаданных, но в данном случае и так видно, что отчет;
На этом статья про Обновление нетиповой конфигурации 1С завершена. Если после прочтения у вас остались вопросы — смело задавайте их в комментариях! По желанию читателей в следующей статье я могу рассказать о других интересных и сложных аспектах обновления нетиповой конфигурации 1С 8.
В них подробно и понятно объясняются ключевые моменты обновления типовых конфигураций.
Чего там нет? Собственно самой технологии обновления. То есть поэтапного описания действий при анализе Основной конфигурации и Обновления. Попробуем описать этот процесс в виде алгоритма:
Если изменения коснулись реквизита, формы, макета то решение принимается в целом на подчиненный объект, в зависимости от степени изменения. Здесь так же 4 варианта объединения:
После того как принято решение о варианте объединения, не лишним будет отметить, для себя, те объекты, к которым нужно будет вернуться после объединения для проверки работоспособности, и исправлений если они понадобятся.
5. В целом для объектов, которые остались нетронутыми можно установить такие режимы объединения. Если объект был изменен по сравнению со старой конфигурацией поставщика, то его не нужно вообще обновлять. То есть необходимо снять флаг объединения. Если объект нужно обновить, необходимо установить режим в значение: «Взять из загружаемой конфигурации». Более детально о том какой результат объединения получится в результате установки того или иного режима для различных объектов можно почитать.
6. После настройки режимов обновления необходимо нажать кнопку «Выполнить».
7. Иногда возникает проблема в ходе обновления, что ссылка на какие-либо объекты использующиеся в других объектах не участвуют в обновлении при этом система выводит соответствующее сообщение. Необходимо вернуться в режим сравнения и объединения и выбрать вариант объединения этих объектов.
8. Еще одна ситуация к которой необходимо отнестись с вниманием, это вот такое сообщение:
(смотри картинку анонса:)
Коротко говоря: «Вы сотрете доработки конфигурации». Нужно вернуться и еще раз все проверить, или же осознано выполнить замещение объектов.
2. Т.к. статья позиционируется как краткая инструкция для новичка многие моменты опущены, зато очевидный момент про то, что у нас должна быть 2 база копия текущей расписано аж на 3 абзаца. Причём расписано неправильно:
Сравниваем выгруженную рабочую конфигурацию с конфигурацией нашей копии – они должны быть идентичны. Если нет, то можем снять конфигурацию копии с поддержки и полностью загрузить конфигурацию из файла.
Устанавливаем переключатель на «Выбор файла обновления» и указываем наш файл обновления.
Зачем? Почему рекомендуется для новичков в краткой инструкции именно этот метод, а не рекомендованный фирмой 1с? Поиск доступных обновлений на конфигурации УправлениеПтицефабрикой не работает?
После того как появилось окно сравнения, первым делом снимаем галочку с корневого элемента конфигурации.
.
Потом заходим в фильтр и устанавливаем «Показывать отличия новой конфигурации поставщика от старой конфигурации поставщика».
При этом фильтре устанавливаем галку на корневом элементе конфигурации – у нас выберутся все необходимые объекты.
У ролей и тех объектов, у которых изменен состав – устанавливаем «объединить с приоритетом новой конфигурации поставщика»
И ни слова о том, что результат желательно проверить. Сколько пользовался «Объединить с приоритетом. » время от времени возникают ситуации когда результат отличный от того, что ожидается по логике. Короче все эти «объединить с приоритетом» лучше проверять после.
Возможно, достаточно будет объединить форму с приоритетом новой конфигурации поставщика или вовсе взять из файла, если модуль формы не менялся.
Во-первых: если это чисто ваша база и только вы её обновляете, возможно стоит задуматься чтобы сделать все изменения формы кодом. Минусы: придётся почитать ИС как это делается (если не знаете); на начальном этапе уйдёт куча времени. Плюс: экономия времени при каждом обновлении.
Во-вторых: ничего не сказано что нужно (и как это сделать) определить была ли форма изменена по сравнению со старой конфигурацией поставщика.
В-третьих: когда конкретно «возможно достаточно будет объединить форму с приоритетом»? Вообще статься про обновление, а основные моменты уж очень кратко расписаны!
Так можно накатить сразу несколько релизов (на копии мы последовательно накатываем релизы с обновлением в режиме предприятия), а на рабочую базу накатываем общий получившийся в результате этого фай cf.
Это инструкция для новичка? Если поставщиком не предусмотрен переход с версии 1 на 3, то и не нужно новичку этого делать. А не новичку нужно понимать, что он берёт на себя риск. В указанной выше статье написано:
Если обновление выполняется через несколько версий, то при обновлении следует обязательно обратить внимание на удаляемые объекты и на объекты с измененными именами, а также на действия, выполняемые при первом запуске после обновления. Если эти объекты используются в обработке при первом запуске после обновления, то не следует их удалять, а по объектам с измененными именами следует внести соответствующие изменения в текст модуля обработки. В этом случае, оставленные объекты могут быть удалены при повторном или следующем обновлении.
Итак, мы хотим внести изменения в типовую конфигурацию 1С:Бухгалтерия предприятия, редакция 3.0 (3.0.9.4).
2. Включаем возможность изменения нажатием одноименной кнопки. Соглашаемся с предупреждением о невозможности в дальнейшем автоматического обновления;
3. Настройку правил поддержки оставляем по умолчанию, т.е. «Объект поставщика не редактируется» и жмем ОК. Теперь возможность изменения включена, но ни один объект конфигурации не доступен для редактирования;
4. Если мы собираемся изменить, например, документ РеализацияТоваровУслуг, в настройке поддержки находим этот документ. Если требуется добавить реквизит, придется изменить правило поддержки самого объекта документ РеализацияТоваровУслуг. Меняем правило поддержки на «Редактируется с сохранением поддержки», при этом правила подчиненных объектов документа РеализацияТоваровУслуг (реквизиты, табличные части, формы и т.д.) остаются без изменений, т.е. «Не редактируется». Реквизит мы, вероятно, захотим разместить на форме, поэтому меняем правило поддержки формы нашего документа на «Редактируется с сохранением поддержки»;
5. Теперь мы можем добавить реквизит, разместить его на форме и изменить модуль документа. Добавляем «МойРеквизит», тип Булево. Далее открываем форму документа и перетаскиваем «МойРеквизит» из «Объекта» на форму, а в модуль документа в процедуре «ПриЗаписи» добавляем строки:
// >>> Поддержка и выбираем «Обновить конфигурацию». Выбираем файл обновления или доверяем платформе его найти. Нажимаем «Готово» и продолжаем обновление;
2. Поскольку у нас включена возможность изменения, обновление проходит не в автоматическом режиме, а запускается механизм сравнения и объединения конфигураций.
К этому моменту в нашей базе содержится уже три конфигурации: Основная конфигурация (та которую мы можем изменять), Конфигурация поставщика (абсолютно типовая) и конфигурация базы данных. Конфигурация базы данных в сравнении и объединении не участвует, зато участвуют две другие: «Основная конфигурация», «Конфигурация поставщика» и третья — «Новая конфигурация поставщика».
Итак, перед нами список отличий Основной конфигурации от Новой конфигурации поставщика. В этом списке для нас самое интересное — это объекты которые мы дорабатывали, и не просто дорабатывали мы, но и дорабатывал поставщик, в них нужно оставить все то что было сделано нами, но и привнести новшества придуманные поставщиком типовой конфигурации.
Мы помним, что в сравнении участвовало три конфигурации (Основная, Поставщика старая и Поставщика новая), платформа дает нам возможность увидеть те объекты, которые изменили и мы и поставщик.
Применим фильтр (жмем кнопку «Фильтр») и устанавливаем флажок «Показывать только дважды измененные свойства». Нажимаем ОК и видим, что в новом релизе поставщик тоже внес свои изменения в документ РеализацияТоваровУслуг. Анализируем изменения в обновлении. В нашем случае мы можем просто установить режим объединения для модуля документа РеализацияТоваровУслуг и его формы: «Объединить с приоритетом новой конфигурации поставщика». Если бы мы оставили режим по умолчанию («Взять из новой конфигурации поставщика»), то все сделанные нами доработки были бы утрачены;
3. Отключим фильтр и убедимся, что снят флажок с добавленного нами реквизита «МойРеквизит». Такой реквизит в конфигурации поставщика отсутствует, если поставим флажок — потеряем реквизит, а вместе с ним и данные, которые в нем хранились, «МойРеквизит» заменится «отсутствующим реквизитом»;
4. Нажимаем «Выполнить». Настройку правил поддержки оставляем по умолчанию и жмем ОК;
5. После того как процесс объединения завершится, ищем в дереве Основной конфигурации документ РеализацияТоваровУслуг. Убедимся что «МойРеквизит» никуда не исчез, посмотрим на форму — и там он на месте, заглянем в модуль. В нем в виде комментариев вставляются все отличия модуля неприоритетной конфигурации фрагменты текста. В начало каждой строки вставляемого фрагмента текста добавляется двойной слеш (два символа косой черты), что в тексте программного модуля делает эти строки закомментированными. Кроме того, для облегчения дальнейшей работы с результирующим текстом, в него вставляются специальные строчки-комментарии.
Измененные фрагменты обрамляются сверху и снизу строками
В нашем модуле мы видим что платформа все наши труды закомментировала, но хоть не удалила:
Уберем лишние комментарии: