Администрирование · 9 мин
ID в 1С: что это такое и как работать с идентификаторами
Что такое ID в 1С: внутренний идентификатор, GUID, уникальный идентификатор ссылки. Как найти ID объекта, зачем он нужен при обмене и интеграции.
В системе 1С каждый объект базы данных — справочник, документ, элемент плана счетов — имеет свой уникальный идентификатор. Когда пользователь или разработчик говорит «ID в 1С», чаще всего речь идёт об уникальном идентификаторе ссылки (GUID), который платформа присваивает объекту автоматически в момент его создания. Именно этот идентификатор позволяет однозначно отличить один элемент номенклатуры от другого, даже если их наименования полностью совпадают.
Понимание того, что такое ID и где его искать, требуется в нескольких практических ситуациях: при настройке обмена данными между базами, при интеграции 1С с сайтом или сторонней системой, при поиске «битых» ссылок и при разборе ошибок вида «Объект не найден». Путаница между кодом элемента, внутренним идентификатором и GUID — одна из самых частых причин ошибок при синхронизации.
Материал разбирает, какие виды идентификаторов существуют в 1С, чем они отличаются, как найти ID конкретного объекта и в каких случаях без него не обойтись.
Что такое ID в 1С простыми словами
ID (идентификатор) — это внутренний «паспорт» объекта в базе данных. Пользователь видит на экране наименование товара, номер документа или код контрагента, но для самой платформы эти реквизиты вторичны: связи между объектами строятся именно через уникальные идентификаторы. Когда в строке документа указан товар, в базе хранится не его название, а ссылка — идентификатор элемента справочника «Номенклатура».
Благодаря этому переименование товара или изменение его кода не разрушает связей: все документы продолжают ссылаться на тот же объект, потому что его ID остался прежним. Идентификатор создаётся один раз — при записи нового объекта — и не меняется ни при редактировании, ни при переносе в архив, ни при пометке на удаление.
Виды идентификаторов: код, GUID и внутренний ID
В разговорах про «айди» часто смешиваются три разные сущности. Первая — код элемента справочника или номер документа: это прикладной реквизит, видимый пользователю, который может быть числовым или строковым, иногда редактируется вручную и не гарантирует уникальности между разными базами. Вторая — GUID ссылки: технический идентификатор, единый для объекта на всём протяжении его жизни. Третья — внутренний идентификатор в таблицах СУБД, который используется на уровне SQL-базы и обычно не применяется в прикладной работе.
| Вид идентификатора | Где виден | Можно ли изменить | Для чего используется |
|---|---|---|---|
| Код / номер | В формах, списках, печатных документах | Да, если не запрещено настройками | Поиск и ориентация пользователя |
| GUID ссылки | В запросах, отладчике, обменах | Нет | Связи между объектами, обмен, интеграции |
| Внутренний ID СУБД | Только в таблицах базы данных | Нет | Работа сервера баз данных |
Для практических задач — обменов, выгрузок, поиска дублей — значим именно GUID. Код и номер могут дублироваться в разных информационных базах, поэтому ориентироваться на них при синхронизации нельзя.
Как найти ID объекта в 1С
Простейший способ — через встроенный язык. В консоли кода или через внешнюю обработку достаточно получить ссылку на объект и вызвать метод, возвращающий уникальный идентификатор. Для этого не нужно менять конфигурацию.
Сообщить(СсылкаНаОбъект.УникальныйИдентификатор());Если под рукой нет консоли кода, ID можно увидеть в адресной строке при открытии объекта в веб-клиенте или тонком клиенте через функцию «Получить ссылку» (в ряде конфигураций доступна по кнопке «Ещё»). Часть идентификатора присутствует в навигационной ссылке вида e1cib/data/Справочник.Номенклатура?ref=... — это то же самое значение в другом представлении.
- 1Откройте консоль кода или любую обработку с возможностью выполнения произвольного кода
- 2Найдите ссылку на нужный элемент — через поиск по коду, наименованию или выбор из списка
- 3Выполните вызов метода УникальныйИдентификатор() для полученной ссылки
- 4Скопируйте строку GUID и сверьте её с данными во второй системе
- 5При массовой задаче выгрузите пары «код — GUID» в таблицу через запрос
Для массового получения идентификаторов удобнее запрос: выборка справочника с выводом ссылки и последующее преобразование в GUID позволяет сформировать таблицу соответствий для интеграции.
Зачем ID нужен при обмене и интеграции
При обмене данными между базами 1С или с внешними системами GUID — главный ключ сопоставления. В типовых планах обмена для каждого узла хранится соответствие «GUID объекта — ссылка в этой базе». Когда приходит пакет данных, платформа ищет объект по идентификатору: нашла — обновляет, не нашла — создаёт новый или ищет по полям поиска.
При интеграции с сайтом, CRM или учётной системой GUID обычно передаётся в выгрузке как внешний ключ. Например, каталог товаров, выгружаемый в формате CommerceML, содержит блок «Ид» — это и есть уникальные идентификаторы товаров и групп. Если сторонняя система сохранит эти значения, последующие обновления пройдут без задвоений.
«Битые» ссылки и ошибка «Объект не найден»
Характерный признак проблем с идентификаторами — записи вида «<Объект не найден> (123:abc...)» в документах и регистрах. Это означает, что в поле хранится ссылка с GUID, но объекта с таким идентификатором в базе уже нет: он был удалён физически, потерян при обмене или база восстанавливалась из неполной копии.
Битые ссылки не исчезают сами. Их находят штатной обработкой «Поиск и удаление дублей», групповой обработкой справочников и документов или сервисом «Тестирование и исправление» с включённой проверкой ссылочной целостности. Дальше возможны два пути: очистить ссылку (если данные не критичны) или восстановить объект, создав новый элемент и подставив его вместо битой ссылки.
Как проверить результат
В полях видны наименования объектов
Надписи «Объект не найден» с кодом
Объекты сопоставляются и обновляются без дублей
Появляются задвоенные элементы или ошибки регистрации
Данные сходятся, строки заполнены
Пустые поля там, где раньше были значения
Типичные ошибки при работе с идентификаторами
Отдельная ошибка — ожидание, что GUID «сам синхронизируется» при копировании базы. Если базу скопировали целиком, идентификаторы действительно совпадут. Но если данные вводились в двух базах независимо, совпадений не будет, и потребуется первичное сопоставление.
Перед настройкой нового обмена полезно один раз выгрузить из обеих баз таблицы «ссылка — GUID — код — наименование» по ключевым справочникам и сверить их. Это занимает немного времени, но позволяет заранее увидеть несовпадения и избежать массовых дублей после первого сеанса синхронизации.
FAQ: частые вопросы про ID в 1С
Можно ли изменить GUID существующего объекта?
Штатными средствами — нет, идентификатор назначается при создании и неизменен. Обходной приём — создать новый объект с нужным GUID через установку ссылки для нового объекта, но это требует аккуратного переноса всех связей и оправдано только в редких сценариях миграции.
Чем код элемента отличается от ID?
Код — прикладной реквизит для пользователя: его видно в списках, он может редактироваться и повторяться в разных базах. ID (GUID) — технический ключ, невидимый в обычной работе, уникальный и неизменный. Для поиска человеком удобен код, для связей и обменов используется GUID.
Где посмотреть ID без прав разработчика?
Откройте объект и воспользуйтесь функцией получения навигационной ссылки (кнопка «Ещё» → «Получить ссылку» в типовых конфигурациях). Идентификатор содержится в параметре ref этой ссылки. Полноценный просмотр GUID через консоль кода потребует соответствующих прав.
Почему после обмена появились дубли контрагентов?
Чаще всего потому, что объекты в двух базах имели разные GUID и не были сопоставлены при первой синхронизации, а поля поиска (ИНН, наименование) не совпали или не были настроены. Нужно выполнить сопоставление вручную в настройках синхронизации и удалить лишние дубли.
Что делать с записью «Объект не найден» в документе?
Сначала определите, какой объект был на этом месте — по GUID из текста ошибки можно проверить, существует ли он в другой базе или копии. Затем либо восстановите объект и подставьте ссылку, либо очистите поле, если данные не нужны. Массовую проверку выполняют через «Тестирование и исправление».
Что важно запомнить
ID в 1С — это уникальный идентификатор объекта, в первую очередь GUID ссылки. Он создаётся один раз, не меняется и служит основой связей, обменов и интеграций. Код и наименование для этого не подходят. Идентификаторы нельзя править напрямую в базе, а битые ссылки нужно находить и устранять штатными средствами.