К статье
Практический материал

Администрирование · 8 мин

Как получить ИД в 1С: полная инструкция по идентификаторам

Как получить ИД в 1С: GUID ссылки, идентификатор информационной базы, пользователя и конфигурации. Способы через интерфейс, код и обработки, частые ошибки.

Под «ИД в 1С» обычно понимают несколько разных вещей: уникальный идентификатор ссылки (GUID) справочника или документа, идентификатор информационной базы, идентификатор пользователя, а также идентификатор конфигурации или поставки. Способ получения зависит от того, какой именно идентификатор нужен и какие права есть у вас в системе.

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

Важно понимать: встроенный интерфейс 1С не показывает GUID объектов напрямую — для этого нужны либо специальные обработки, либо выполнение кода во встроенном языке. Идентификаторы базы и пользователей, напротив, доступны штатными средствами.

Какие идентификаторы существуют в 1С

Прежде чем искать ИД, определите, что именно требуется. В экосистеме 1С используются несколько типов идентификаторов, и путать их — типичная причина ошибок при интеграции.

GUID ссылкиУникальный идентификатор объекта

36-символьная строка вида 8-4-4-4-12, нужна для обменов и интеграций

ИД информационной базыУникальный номер базы

Требуется при регистрации в сервисах и при копировании баз

ИД пользователяСлужебный номер учётной записи

Используется в журнале регистрации и настройках прав

ИД конфигурацииИмя и версия поставки

Нужен при обращении в поддержку и обновлении

GUID (глобальный уникальный идентификатор) присваивается каждой ссылке — элементу справочника, документу, записи плана счетов и т.д. Именно он фигурирует в ссылках вида «e1cib/data/Справочник.Номенклатура?ref=...» и в большинстве обменных механизмов.

Идентификатор информационной базы генерируется при создании базы и меняется при её копировании через создание новой базы (но не при простом копировании файла 1Cv8.1CD — тогда идентификаторы совпадут, что важно учитывать при обменах).

Как получить GUID объекта через код

Самый надёжный способ узнать уникальный идентификатор ссылки — выполнить небольшой фрагмент кода во встроенном языке. Для этого подойдёт консоль кода, внешняя обработка или отладчик.

bsl
Сообщить(СсылкаНаОбъект.УникальныйИдентификатор());

Если нужен обратный путь — найти объект по известному GUID (например, из сообщения об ошибке «Объект не найден»), используйте метод ПолучитьСсылку с конструктором уникального идентификатора:

bsl
Ид = Новый УникальныйИдентификатор("a1b2c3d4-e5f6-7890-abcd-ef1234567890");
Ссылка = Справочники.Номенклатура.ПолучитьСсылку(Ид);
Сообщить(Ссылка.ПолучитьОбъект() <> Неопределено);

Обратите внимание на порядок символов: GUID, который показывает 1С в строке ссылки «ref=...», записан в обратном порядке байтов по сравнению со стандартным представлением. При передаче идентификатора во внешнюю систему проверяйте, в каком формате его ожидает принимающая сторона.

Как узнать GUID без программирования

Если доступа к конфигуратору и прав на выполнение кода нет, есть обходные пути. Самый простой — открыть объект и посмотреть на адресную строку браузера (в веб-клиенте) или скопировать навигационную ссылку через меню «Ещё» либо команду «Получить ссылку» в тонком клиенте. Идентификатор будет в конце строки после параметра ref.

Второй вариант — воспользоваться готовой универсальной обработкой «Поиск объектов по GUID» или аналогичной. Такие обработки запускаются через Файл → Открыть и позволяют как получить GUID выбранного объекта, так и найти объект по идентификатору. Запуск внешних обработок требует соответствующих прав, а в некоторых конфигурациях заблокирован настройками безопасности.

Получение GUID через навигационную ссылку
  1. 1
    Откройте нужный объект (элемент справочника или документ) в режиме просмотра
  2. 2
    Выполните команду «Получить ссылку» (кнопка в форме или меню «Ещё»)
  3. 3
    Скопируйте строку и найдите в ней фрагмент после «ref=»
  4. 4
    При необходимости преобразуйте идентификатор в стандартный формат GUID

Как узнать идентификатор информационной базы

Идентификатор базы нужен при регистрации в сервисах 1С:Линк, при настройке обменов между базами и при обращении в поддержку. В файловой базе его можно получить кодом через функцию стандартных подсистем:

bsl
Сообщить(СтандартныеПодсистемыСервер.ИдентификаторИнформационнойБазы());

В типовых конфигурациях идентификатор базы также отображается в разделе настройки синхронизации данных (Администрирование → Синхронизация данных) — там же можно изменить префикс базы. В клиент-серверном варианте идентификатор виден администратору в консоли кластера серверов 1С в свойствах информационной базы.

Как узнать идентификатор пользователя и конфигурации

Идентификатор пользователя информационной базы доступен администратору: Администрирование → Пользователи, откройте карточку пользователя. В коде текущий идентификатор получают через ПользователиИнформационнойБазы.ТекущийПользователь().УникальныйИдентификатор. Этот ИД используется в журнале регистрации и при разборе прав доступа.

Данные о конфигурации — её имя, версия, поставщик — находятся в разделе «О программе» (кнопка с символом «i» или меню Сервис → О программе). Именно эти сведения запрашивает поддержка при обращениях. Там же указана версия платформы, которая тоже часто требуется.

Способы получения ИД: что выбрать

Навигационная ссылка

Подходит всем пользователям без прав разработчика; ограничение — только GUID объектов и обратный формат записи

Консоль кода / отладчик

Универсальный способ для любых идентификаторов; требует прав и навыка работы с кодом

Внешние обработки

Удобны для массового поиска объектов по GUID; зависят от настроек безопасности базы

Интерфейс администрирования

Для ИД базы, пользователей и конфигурации; доступен только администраторам

Частые ошибки при работе с идентификаторами

Типичные ошибки
01
Использование GUID из веб-ссылки без преобразования — внешняя система не находит объект из-за другого порядка байтов
02
Обмен между копиями базы с одинаковым идентификатором — конфликты и рассинхронизация данных
03
Попытка найти объект по GUID не в том типе справочника — ПолучитьСсылку возвращает «битую» ссылку без ошибки
04
Передача в интеграцию внутреннего кода объекта вместо GUID — после перенумерации связи ломаются

Отдельная ловушка — «битые ссылки». Если объект удалён, его GUID никуда не ведёт, и ПолучитьСсылку вернёт ссылку, у которой ПолучитьОбъект() даст Неопределено. Всегда проверяйте результат перед использованием.

Контрольные точки

Как проверить результат

Длина и формат GUID
Норма

36 символов с дефисами в формате 8-4-4-4-12

Тревожный признак

Строка другой длины или без дефисов — скопирован не тот фрагмент

Поиск объекта по GUID
Норма

ПолучитьОбъект() возвращает объект, реквизиты доступны

Тревожный признак

Возвращается Неопределено — объект удалён или неверный тип

Идентификаторы двух баз
Норма

У рабочей базы и её копии идентификаторы различаются

Тревожный признак

Идентификаторы совпадают — копию нельзя подключать к обмену

FAQ

Можно ли узнать GUID документа без доступа к конфигуратору?

Да. Откройте документ и скопируйте навигационную ссылку через команду «Получить ссылку» — идентификатор содержится в параметре ref. Учтите, что он записан в обратном порядке байтов относительно стандартного GUID.

Меняется ли GUID объекта при перезаписи или пометке на удаление?

Нет. GUID присваивается ссылке один раз при создании и не меняется ни при редактировании, ни при пометке на удаление. Он исчезает только при физическом удалении объекта из базы.

Как найти объект, если в ошибке указан «Объект не найден (123:abc...)»?

Извлеките шестнадцатеричную часть идентификатора, преобразуйте её в GUID и выполните поиск через ПолучитьСсылку по всем предполагаемым типам объектов либо используйте универсальную обработку поиска по ссылке.

Где посмотреть идентификатор базы без программирования?

В типовых конфигурациях — в разделе Администрирование → Синхронизация данных. В клиент-серверном варианте администратор может увидеть его в консоли кластера серверов в свойствах информационной базы.

Чем GUID отличается от кода или номера объекта?

Код и номер — видимые пользователю реквизиты, которые могут повторяться между базами и меняться при перенумерации. GUID — скрытый служебный идентификатор, уникальный и постоянный, поэтому именно он используется в обменах и интеграциях.

Итог

Что важно запомнить

Сначала определите, какой идентификатор нужен: GUID объекта, ИД базы, пользователя или конфигурации. GUID получают кодом или через навигационную ссылку, остальные идентификаторы — штатными средствами интерфейса. Проверяйте формат GUID и не настраивайте обмен между копиями базы с одинаковым идентификатором.