При работе с доработанными конфигурациями 1С:Предприятие, особенно при их обновлении или сравнении с типовыми версиями, часто возникает ситуация, когда механизм сравнения и объединения конфигураций выводит отчет с «парными» строками. Это означает, что для объектов, которые, казалось бы, имеют абсолютно одинаковые названия, вы видите две отдельные записи: одна гласит «Объект присутствует только в файле», а другая — «Объект присутствует только в основной конфигурации». Это может ввести в заблуждение, особенно когда речь идет о важных элементах, таких как реквизиты форм или группы справочников, как в случае с объектами, связанными с «Прослеживаемостью» в УТ 10.3.
Рассмотрим подробно, почему это происходит, и как мы можем эффективно управлять такими ситуациями.
Мы сталкиваемся с такой ситуацией, потому что, несмотря на внешнее сходство (одинаковое имя объекта), для 1С:Предприятия это на самом деле два абсолютно разных объекта. Каждый объект метаданных в системе 1С (будь то справочник, документ, форма, реквизит или что-либо еще) при своем создании получает уникальный внутренний идентификатор — UUID (Universally Unique Identifier). Этот идентификатор является его «паспортом» внутри конфигурации.
ЕдиницаИзмеренияПрослеживаемости в одной конфигурации, а в типовой конфигурации такой реквизит появился в результате обновления), то их UUID будут отличаться. Механизм сравнения, пытаясь найти пары, сначала сопоставляет объекты по имени. Однако, если по имени найдено несколько объектов или объекты с одинаковым именем имеют разные UUID, система воспринимает их как два отдельных объекта: один уникален для одной конфигурации, другой — для другой.Прослеживаемость (таких как ЕдиницаИзмеренияПрослеживаемости или КоэффициентПрослеживаемыхТоваров), является показательным. Функционал прослеживаемости импортных товаров (учет РНПТ – регистрационных номеров партий товаров) был добавлен в УТ 10.3 начиная с определенных релизов (например, 10.3.70 или 10.3.71). Если ваша доработанная конфигурация была обновлена с более ранней версии или разрабатывалась параллельно с типовой, которая получила эти изменения, то вполне вероятно, что в одной конфигурации (например, в типовой) эти объекты уже существуют с определенными UUID, а в вашей доработанной конфигурации они либо отсутствуют, либо были созданы или скопированы иным образом, что привело к другим UUID.Таким образом, суть проблемы в том, что 1С видит два разных объекта, даже если мы видим одно и то же название.
Для решения проблемы с «парными» строками и правильного объединения объектов, имеющих одинаковые имена, но разные UUID, мы можем использовать функционал интерактивной установки соответствия объектов в окне сравнения и объединения конфигураций.
ЕдиницаИзмеренияПрослеживаемости.Примечание по поводу сообщения автора "У меня нет установки соответствия": Пункт "Установить соответствие объектов" становится доступен только тогда, когда платформа не смогла самостоятельно найти пару для выбранного объекта. Если платформа уже нашла пару (даже если вы хотите ее отменить, что делается через "Отменить соответствие"), или если вы выбрали объект, который присутствует в обеих конфигурациях и помечен как измененный, то этот пункт может быть неактивен. Вам нужно выбрать именно один из объектов, который по мнению платформы "присутствует только в файле" или "только в основной конфигурации", чтобы предложить ему пару вручную.
Этот механизм позволяет нам вручную «сказать» 1С, что два объекта с разными UUID, но одинаковыми именами, на самом деле являются одним и тем же логическим объектом.
После того как мы установили соответствие между объектами, мы сможем выбрать, как именно объединить их изменения:
Мы можем также настроить параметры сравнения, например, разрешить удаление объектов основной конфигурации, если это необходимо.
Автор в сообщении 9 упоминал, что «по шестеренке показывает различие в модуле». Это очень важный момент. После установки соответствия, если в связанных объектах есть реальные изменения (например, в коде модуля или в свойствах формы), значок «шестеренки» (или аналогичный индикатор различий) появится рядом с объединенным объектом. Мы можем кликнуть по нему, чтобы открыть детальное сравнение, которое покажет поблочно, что именно изменилось в модуле, форме или других свойствах. Это позволяет нам вручную выбрать, какие изменения принять, какие отклонить или какие объединить.
Давайте подробнее разберем, что такое "Прослеживаемость" и почему объекты, связанные с ней, могли появиться в одной конфигурации, но отсутствовать или быть другими в другой.
Функционал прослеживаемости импортных товаров, или учет РНПТ (регистрационных номеров партий товаров), был добавлен в УТ 10.3 для соответствия законодательным требованиям по учету определенных категорий импортных товаров. Это важная часть налогового и управленческого учета.
Номенклатура необходимо указать код ТН ВЭД, единицу измерения прослеживаемости и установить флажок "Прослеживаемый товар". Именно эти поля и связанные с ними реквизиты формы, вероятно, и фигурируют в вашем отчете сравнения.Уведомление об остатках прослеживаемых товаров используется для ввода начальных остатков.Появление объектов, связанных с Прослеживаемость, только в одной из сравниваемых конфигураций (например, в типовой, с которой сравнивается ваша измененная) означает, что в этой конфигурации функционал учета прослеживаемости уже реализован или обновлен до версии, которая его включает. В вашей доработанной конфигурации эти объекты могли отсутствовать, быть созданы другим образом или быть измененными, что привело к расхождению UUID и появлению «парных» строк в отчете сравнения.
Как справедливо было указано в одном из сообщений форума, для глубокого понимания механизмов работы платформы 1С и конфигураций критически важно изучать "матчасть". Основным источником такой информации является ИТС (Информационно-технологическое сопровождение 1С), которое содержит подробные описания функционала, методики работы и решения типовых проблем.
Также стоит учитывать, что поддержка УТ 10.3 прекращается. Фирма "1С" активно рекомендует переход на более современные решения, такие как УТ 11. Обновление с УТ 10.3 на УТ 11 — это, по сути, не просто обновление, а переход на совершенно новую архитектуру (управляемые формы, другие принципы работы). Этот процесс обычно требует выгрузки данных из УТ 10.3 в файл и их загрузки в новую, пустую базу УТ 11 с использованием специальных обработок.
Проблема «парных» строк при сравнении конфигураций в 1С:Предприятии 8.3, особенно в УТ 10.3, является распространенной и вызвана различием во внутренних идентификаторах (UUID) объектов, имеющих одинаковые имена. Для ее решения необходимо использовать механизм интерактивной установки соответствия объектов в окне сравнения и объединения конфигураций. После установления соответствия мы сможем выбрать подходящие режимы объединения, а при наличии реальных различий (в модулях или формах) — детально проанализировать и объединить изменения.
Всегда помните о важности официальной документации 1С (ИТС) для получения точной и актуальной информации о работе платформы и конфигураций.