
GUID (Globally Unique Identifier) в 1С используется как уникальный идентификатор элемента справочника, обеспечивая точную ссылку на объект вне зависимости от его названия или кода. В 1С каждый элемент справочника автоматически получает GUID при создании, что позволяет использовать его в обработках, интеграциях и сложных отчетах без риска дублирования.
Для получения GUID элемента важно понимать структуру справочника: каждое значение реквизитов и ссылочные свойства хранятся отдельно, а GUID всегда доступен через свойство Ссылка. Это значит, что прямое обращение к реквизитам не даст уникального идентификатора, а работа через объект справочника позволяет извлечь точный GUID без лишних вычислений.
В зависимости от задачи GUID можно получить несколькими способами: через стандартные методы 1С, например ПолучитьОбъект, через прямой запрос к базе данных или с использованием встроенных обработок. Каждый метод имеет свои особенности: например, запрос к базе быстрее для большого объема элементов, а методы объекта удобны при работе с отдельными элементами в обработках и формах.
В этом руководстве мы разберем практическую последовательность действий для получения GUID в разных сценариях, проверим корректность извлеченного идентификатора и покажем, как безопасно использовать его в обработках и отчетах. После изучения материала вы сможете надежно получать GUID любого элемента справочника без ошибок и дополнительных проверок.
Получение GUID элемента справочника в 1С: пошаговое руководство

Для извлечения GUID элемента справочника откройте нужный справочник в режиме конфигуратора или обычного режима 1С. Определите точное наименование элемента или уникальный код, который будет использоваться для поиска.
Создайте объект элемента с помощью метода Справочники.<имяСправочника>.ПолучитьОбъект(КодИлиНаименование). Этот метод возвращает полноценный объект, содержащий все реквизиты элемента, включая Ссылка, которая является его GUID.
Чтобы получить GUID, используйте конструкцию Элемент.Ссылка. Например, если объект элемента сохранен в переменной ТекущийЭлемент, то GUID извлекается через ТекущийЭлемент.Ссылка. Полученное значение можно сохранить в переменную или сразу передать в обработку.
Для массового извлечения GUID используйте запрос к базе данных 1С с выборкой поля Ref из таблицы справочника. Например, ВЫБРАТЬ Ref КАК GUID, Наименование ИЗ Справочник.Номенклатура. Это ускоряет работу при большом количестве элементов.
После получения GUID проверьте его корректность, сравнив с существующим элементом через метод Справочники.<имяСправочника>.НайтиПоСсылке(ПолученныйGUID). Если объект найден, GUID действителен и готов к использованию в отчетах, обработках или интеграциях.
Сохранение GUID в переменных или регистрах сведений позволяет использовать его повторно без повторного поиска, что особенно удобно при формировании документов или интеграции с внешними системами.
Как открыть нужный справочник для работы с GUID

Для работы с GUID сначала необходимо определить точный справочник, содержащий нужный элемент. В конфигураторе 1С перейдите в раздел Справочники и выберите нужный объект по его названию. Убедитесь, что выбранная конфигурация поддерживает свойства Ссылка для элементов.
В пользовательском режиме откройте справочник через меню или панель навигации. Для быстрого поиска используйте поле фильтра по коду или наименованию. После открытия справочника убедитесь, что видимость реквизитов включает Ссылка, иначе GUID будет недоступен напрямую.
Для систематизации работы с несколькими справочниками удобно использовать таблицу с указанием ссылок на элементы и их кодов:
| Справочник | Код элемента | Наименование элемента | Ссылка (GUID) |
|---|---|---|---|
| Номенклатура | 1001 | Товар А | <получить через Элемент.Ссылка> |
| Контрагенты | 2002 | Компания Б | <получить через Элемент.Ссылка> |
| Сотрудники | 3003 | Иванов И.И. | <получить через Элемент.Ссылка> |
После открытия справочника и фильтрации элементов можно переходить к извлечению GUID через методы объекта или запрос к базе. Таблица помогает отслеживать соответствие кода, наименования и GUID при работе с несколькими элементами одновременно.
Определение элемента справочника по его реквизитам

В конфигураторе 1С откройте справочник и в списке элементов используйте фильтры по реквизитам. Например, чтобы найти товар с кодом 1023 и наименованием «Картридж HP», установите фильтр Код = 1023 и Наименование = ‘Картридж HP’. Это гарантирует, что выбранный элемент уникален и его GUID будет корректным.
При работе через код 1С используйте метод НайтиПоНаименованию или НайтиПоКоду. Если требуется проверка сразу нескольких реквизитов, создайте фильтр через метод Выбрать() с условием Отбор.<Реквизит> = Значение. Например:
Элементы = Справочники.Номенклатура.Выбрать(); Элементы.Отбор.Наименование = «Картридж HP»; Элементы.Найти().
После определения элемента по реквизитам можно получить его объект через метод ПолучитьОбъект, что позволит извлечь свойство Ссылка и использовать GUID в обработках, отчетах или интеграционных сценариях.
Если справочник содержит элементы с одинаковым наименованием, рекомендуется использовать комбинированные фильтры по коду и другим реквизитам, чтобы исключить возможность получения неверного GUID.
Использование стандартного метода ПолучитьОбъект для доступа к GUID
Пошаговая последовательность получения GUID через ПолучитьОбъект:
- Определите справочник и реквизиты элемента, например код или наименование.
- Создайте объект элемента через метод: Элемент = Справочники.Номенклатура.ПолучитьОбъект(КодИлиНаименование).
- Извлеките GUID через свойство Ссылка: GUID = Элемент.Ссылка.
- При необходимости сохраните GUID в переменную или передайте в обработку.
- Для проверки корректности используйте метод Справочники.Номенклатура.НайтиПоСсылке(GUID), чтобы убедиться, что объект существует в базе.
Рекомендации при работе с ПолучитьОбъект:
- Используйте точный код или уникальное наименование для исключения ошибок выбора.
- При массовой обработке элементов предпочтительнее применять выборки через запросы, чтобы снизить нагрузку на систему.
- Сохраняйте GUID в регистрах сведений или временных переменных, чтобы повторно не вызывать метод для того же объекта.
Использование ПолучитьОбъект обеспечивает прямой и безопасный доступ к GUID без необходимости строить сложные запросы, что упрощает интеграцию и автоматизацию обработки справочников.
Получение GUID через свойство Ссылка элемента справочника
Каждый элемент справочника в 1С имеет встроенное свойство Ссылка, которое содержит уникальный идентификатор (GUID). Это свойство доступно после получения объекта элемента через методы справочника, и его можно использовать для любых операций, где требуется уникальная идентификация.
Пошаговая инструкция получения GUID через свойство Ссылка:
- Определите справочник и реквизиты элемента, например код или наименование.
- Получите объект элемента: Элемент = Справочники.Номенклатура.ПолучитьОбъект(КодИлиНаименование).
- Извлеките GUID: GUID = Элемент.Ссылка.
- Сохраните полученное значение для последующего использования в обработках, отчетах или интеграции с внешними системами.
- При работе с несколькими элементами повторите шаги для каждого объекта, используя фильтры по реквизитам.
Рекомендации по использованию свойства Ссылка:
- Для однозначного определения элемента комбинируйте фильтры по коду и наименованию, чтобы исключить дублирование.
- При массовой обработке элементов храните GUID во временной таблице или регистре сведений, чтобы избежать повторного вызова метода.
- Используйте метод НайтиПоСсылке для проверки корректности GUID перед интеграцией с внешними системами.
Свойство Ссылка обеспечивает прямой доступ к уникальному идентификатору элемента без необходимости построения сложных запросов, упрощая работу с элементами справочника в любых сценариях 1С.
Прямой запрос GUID через запрос к базе данных 1С

Для получения GUID большого количества элементов справочника можно использовать прямой запрос к базе данных 1С. В этом случае извлечение идентификатора выполняется напрямую из системного поля Ref, что ускоряет обработку и снижает нагрузку на систему при массовых операциях.
Пример запроса для получения GUID и наименований элементов справочника «Номенклатура»:
| Поля | Описание |
|---|---|
| Ref | GUID элемента справочника |
| Наименование | Название элемента |
Пример кода запроса:
ВЫБРАТЬ Ref КАК GUID, Наименование ИЗ Справочник.Номенклатура
Рекомендации при работе с прямыми запросами:
- Используйте фильтры по реквизитам, чтобы ограничить выборку нужными элементами: ГДЕ Код = 1023 или ГДЕ Наименование = ‘Товар А’.
- При необходимости объединяйте справочники через JOIN, если требуется получить GUID связанных элементов.
- Для массового экспорта GUID храните результаты запроса во временной таблице или регистре сведений для последующего использования в отчетах и обработках.
- Перед использованием полученных GUID проверяйте их корректность через метод НайтиПоСсылке, чтобы исключить ошибки интеграции.
Прямой запрос к базе особенно полезен при интеграции с внешними системами, когда требуется быстрое получение GUID для большого количества элементов без создания объектов каждого элемента через методы справочника.
Проверка корректности полученного GUID

После получения GUID важно убедиться, что он действительно соответствует существующему элементу справочника. В 1С для этого используется метод НайтиПоСсылке, который возвращает объект элемента или значение Неопределено, если GUID недействителен.
Пошаговая проверка:
- Сохраните полученный GUID в переменной: GUID = Элемент.Ссылка.
- Используйте метод поиска по ссылке: ЭлементПроверка = Справочники.Номенклатура.НайтиПоСсылке(GUID).
- Проверьте результат: если ЭлементПроверка <> Неопределено, GUID действителен и соответствует элементу справочника.
- Если результат равен Неопределено, повторите получение GUID через метод ПолучитьОбъект или прямой запрос к базе, чтобы исключить ошибки фильтрации или дублирования.
Рекомендации по проверке:
- Проверяйте GUID сразу после извлечения, особенно при массовой обработке элементов.
- При интеграции с внешними системами используйте проверку для предотвращения ошибок передачи данных.
- Для больших выборок выполняйте проверку через запросы с объединением по Ref, чтобы выявить недействительные GUID без перебора каждого объекта через код.
Систематическая проверка корректности GUID снижает риск работы с неверными ссылками и обеспечивает стабильную работу обработок и отчетов в 1С.
Сохранение GUID для последующего использования в обработках и отчетах

После получения GUID элемента справочника его целесообразно сохранять для повторного использования в обработках, отчетах и интеграциях с внешними системами. Это исключает повторное выполнение методов ПолучитьОбъект или запросов к базе, повышая скорость обработки данных.
Варианты сохранения GUID в 1С:
- В переменных обработки или модуля формы: ТекущийGUID = Элемент.Ссылка, удобно для временного хранения при выполнении последовательных действий.
- В регистрах сведений или накопления: создайте реквизит типа СправочникСсылка для хранения GUID, что обеспечивает долговременное хранение и возможность фильтрации по идентификатору.
- В таблицах временных данных: используйте внутренние таблицы 1С с полем для GUID, чтобы массово сохранять идентификаторы элементов для дальнейших отчетов или пакетной обработки.
Рекомендации при сохранении GUID:
- Всегда проверяйте корректность GUID перед сохранением через НайтиПоСсылке, чтобы исключить недействительные значения.
- При массовом сохранении используйте индексирование по полю GUID для ускорения поиска и фильтрации в отчетах.
- Для интеграции с внешними системами сохраняйте GUID в формате Строка, чтобы исключить ошибки при передаче данных между платформами.
Систематическое сохранение GUID позволяет ускорить работу обработок, обеспечить точное соответствие элементов и исключить ошибки при построении отчетов и интеграционных сценариев в 1С.
Ошибки и ограничения при работе с GUID в 1С

Работа с GUID в 1С требует учета ряда особенностей и возможных ограничений, чтобы избежать ошибок в обработках и отчетах.
Основные ошибки при работе с GUID:
- Использование некорректного или устаревшего GUID, который больше не соответствует элементу справочника.
- Попытка извлечь GUID напрямую из реквизитов элемента вместо свойства Ссылка.
- Пренебрежение проверкой корректности GUID перед передачей в интеграционные сценарии или массовую обработку.
- Ошибки фильтрации элементов при массовом получении GUID, приводящие к выбору нескольких объектов с одинаковым наименованием.
Ограничения при работе с GUID:
- GUID уникален только внутри конфигурации 1С и не гарантирует совпадения при переносе данных между различными базами без корректной миграции ссылок.
- При массовом извлечении элементов через методы объекта может возникнуть высокая нагрузка на систему; предпочтительно использовать запросы к базе.
- Невозможность изменения GUID вручную – идентификатор формируется автоматически и сохраняется системой.
- Некоторые внешние интерфейсы и обмены требуют преобразования GUID в строковый формат для корректной передачи данных.
Рекомендации по минимизации ошибок:
- Всегда проверяйте GUID через метод НайтиПоСсылке перед использованием.
- Для массовой обработки используйте запросы к базе с выборкой поля Ref, чтобы снизить нагрузку и исключить дубли.
- Сохраняйте GUID в регистрах сведений или таблицах для последующего безопасного использования.
- Используйте комбинированные фильтры по коду и наименованию при определении элементов для исключения ошибок при совпадении реквизитов.
Учет этих ошибок и ограничений обеспечивает точное и надежное использование GUID в обработках, отчетах и интеграциях 1С.
Вопрос-ответ:
Как правильно получить GUID конкретного элемента справочника по его коду?
Чтобы извлечь GUID элемента по коду, нужно использовать метод ПолучитьОбъект справочника. Например, для справочника «Номенклатура» используйте Элемент = Справочники.Номенклатура.ПолучитьОбъект(КодЭлемента). После этого GUID доступен через свойство Элемент.Ссылка. Для проверки корректности GUID применяйте метод НайтиПоСсылке. Если объект возвращается, GUID соответствует элементу.
Можно ли получить GUID сразу для нескольких элементов справочника?
Да, для массового получения GUID удобнее использовать запрос к базе данных 1С. В запросе выбирается системное поле Ref, которое содержит GUID, и дополнительные реквизиты, например наименование или код. Пример запроса: ВЫБРАТЬ Ref КАК GUID, Наименование ИЗ Справочник.Номенклатура. Результаты запроса можно сохранить во временной таблице или регистре сведений для дальнейшей работы.
Что делать, если метод ПолучитьОбъект возвращает несколько элементов с одинаковым наименованием?
Если элементы справочника имеют одинаковое наименование, метод ПолучитьОбъект может выбрать первый подходящий объект, что приведет к некорректному GUID. В этом случае рекомендуется использовать уникальный код элемента или комбинированные фильтры по реквизитам. Также можно применять метод Выбрать с условиями по нескольким реквизитам, чтобы однозначно определить нужный объект и получить точный GUID.
Можно ли вручную изменить GUID элемента справочника?
Нет, GUID формируется системой автоматически при создании элемента и является неизменяемым. Любая попытка напрямую изменить поле Ссылка недоступна через стандартные методы конфигуратора или обработки. Для привязки внешних систем или отчетов используется существующий GUID, а при переносе данных между базами применяется механизм обмена с сохранением ссылок.
Как проверить, что полученный GUID корректен перед использованием в обработке?
Для проверки корректности GUID применяется метод НайтиПоСсылке соответствующего справочника. Если метод возвращает объект элемента, GUID действителен и можно использовать его в отчетах, обработках или интеграции. Если возвращается Неопределено, GUID недействителен, и необходимо повторно получить его через метод ПолучитьОбъект или прямой запрос к базе.
Можно ли получить GUID элемента справочника без использования метода ПолучитьОбъект?
Да, GUID можно получить напрямую через запрос к базе данных 1С. В этом случае выбирается системное поле Ref из таблицы справочника, которое содержит уникальный идентификатор элемента. Например, для справочника «Номенклатура» можно использовать запрос: ВЫБРАТЬ Ref КАК GUID, Наименование ИЗ Справочник.Номенклатура. Такой подход удобен при работе с большим количеством элементов, поскольку не требует создания объектов каждого элемента через методы справочника. После получения GUID рекомендуется проверить его корректность через метод НайтиПоСсылке, чтобы убедиться, что идентификатор соответствует существующему элементу и можно безопасно использовать его в отчетах, обработках или интеграционных сценариях.
