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

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

Как получить префикс информационной базы в 1С

Способы узнать префикс ИБ в 1С: через настройки синхронизации, Функциональность, код на встроенном языке и запрос к константе. Примеры и частые ошибки.

Префикс информационной базы в 1С — короткий строковый код, который добавляется к номерам документов и кодам справочников. Он нужен, чтобы при обмене данными между несколькими базами номера не пересекались: документ из центральной базы получит номер «ЦБ-000001», а из филиала — «ФЛ-000001». Знать текущий префикс требуется при настройке синхронизации, поиске причины «склеенных» номеров и при разборе ошибок обмена.

Получить префикс можно несколькими способами: через интерфейс типовой конфигурации, программно на встроенном языке, запросом к константе или через планы обмена. Выбор зависит от того, есть ли у вас доступ в режим предприятия, конфигуратор или только консоль запросов.

Ниже разобраны все рабочие варианты с точным путём по меню, примерами кода и типичными ошибками, из-за которых префикс «не находится» или отображается не тот.

Что такое префикс ИБ и где он хранится

Префикс информационной базы — это свойство самой базы, а не отдельного узла обмена. В конфигурациях, построенных на Библиотеке стандартных подсистем (БСП), значение хранится в константе, обычно называемой «Префикс информационной базы». Именно эту константу подсистема префиксации объектов подставляет при формировании номеров и кодов новых объектов.

Важно не путать префикс ИБ с префиксом узла плана обмена. Узел обмена может иметь собственный код, который тоже участвует в нумерации при распределённых базах, но это разные механизмы. Если в базе настроено несколько синхронизаций, префикс ИБ всё равно один — он общий для всех обменов.

Длина префикса обычно ограничена несколькими символами и зависит от настроек нумерации конкретной конфигурации. Слишком длинный префикс «съедает» длину номера документа, поэтому практично использовать 2–4 символа.

Как посмотреть префикс через интерфейс

В типовых конфигурациях (1С:Бухгалтерия, Управление торговлей, ERP, ЗУП) префикс отображается в настройках синхронизации данных. Типовой путь: раздел «Администрирование» → «Синхронизация данных» → «Настройки синхронизации данных». В открывшейся форме обычно есть поле «Префикс информационной базы» или ссылка «Префиксы».

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

Ещё один путь — открыть список констант. В режиме предприятия это возможно через функцию «Все функции» (если она включена в параметрах): найдите константу «Префикс информационной базы» и посмотрите её значение.

Как найти префикс в типовой конфигурации
  1. 1
    Откройте раздел «Администрирование»
  2. 2
    Перейдите в «Синхронизация данных» → «Настройки синхронизации данных»
  3. 3
    Найдите поле «Префикс информационной базы» и запишите значение
  4. 4
    Если поля нет — откройте «Все функции» и проверьте константу с аналогичным именем

Как получить префикс программно

В конфигурациях на БСП самый надёжный способ — использовать функциональную опцию или стандартную процедуру подсистемы префиксации. Простейший вариант:

Префикс = ПолучитьФункциональнуюОпцию("ПрефиксИнформационнойБазы");

Сообщить("Префикс ИБ: " + Префикс);

Если конфигурация не использует функциональную опцию, прочитайте константу напрямую. Имя константы нужно уточнить в конфигураторе — чаще всего это «ПрефиксИнформационнойБазы»:

Префикс = Константы.ПрефиксИнформационнойБазы.Получить();

Для обменов через универсальный формат или планы обмена код текущего узла иногда требуется отдельно. Его можно получить так:

КодУзла = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(

ПланыОбмена.ГлавныйУзел(), "Код");

Этот код запускается во внешней обработке, консоли кода или в фоновом задании. Учтите: состав констант и функциональных опций отличается между конфигурациями, поэтому перед написанием кода откройте конфигуратор и проверьте точные имена объектов.

1c
Префикс = ПолучитьФункциональнуюОпцию("ПрефиксИнформационнойБазы");
Если Префикс = Неопределено Тогда
    Префикс = Константы.ПрефиксИнформационнойБазы.Получить();
КонецЕсли;
Сообщить("Префикс ИБ: " + Префикс);

Как узнать префикс запросом к константе

Если доступен только режим предприятия без права запуска произвольного кода, префикс можно получить через консоль запросов. Запрос к константам выглядит так:

ВЫБРАТЬ

Константы.ПрефиксИнформационнойБазы КАК Префикс

ИЗ

Константы КАК Константы

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

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

Как изменить префикс и что проверить после

Менять префикс следует только понимая последствия: все новые документы начнут нумероваться с новым префиксом, а старые сохранят прежние номера. Если база участвует в обмене, несогласованная смена префикса может привести к появлению дублей объектов в корреспондирующей базе.

Безопасный порядок действий: согласуйте новый префикс со всеми базами обмена, измените значение в настройках синхронизации или в константе, затем создайте тестовый документ и проверьте формат его номера. После обмена убедитесь, что в соседней базе документ загрузился без конфликтов номеров.

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

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

Номер нового документа
Норма

Номер содержит установленный префикс, например «ЦБ-000123»

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

Префикс отсутствует или остался старым

Загрузка в другую базу
Норма

Документ загружается без конфликтов номеров

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

Появляются дубли или предупреждения о коллизиях

Значение константы
Норма

Константа содержит ожидаемое значение

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

Константа пустая или содержит другое значение

Типичные ошибки при работе с префиксом

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

Вторая ошибка — путать префикс ИБ с кодом узла плана обмена. Проверяют одно значение, а нумерация формируется из другого, и кажется, что «префикс не работает». Третья типичная ситуация — префикс задан, но у конкретного вида документов отключена подсистема префиксации или изменён нумератор, поэтому префикс к нему не применяется.

Типичные ошибки
01
Оставить префикс пустым в базе обмена — номера из разных баз начинают совпадать
02
Путать префикс ИБ с кодом узла плана обмена — проверяется не то значение
03
Использовать длинный префикс — номера упираются в максимальную длину и обрезаются
04
Менять префикс без проверки на копии — в других базах появляются дубли документов

FAQ

Где хранится префикс ИБ в файловой базе?

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

Почему функция ПолучитьФункциональнуюОпцию возвращает Неопределено?

Значит, в вашей конфигурации нет функциональной опции с таким именем либо она не связана с константой префикса. Откройте конфигуратор, найдите константу префикса и читайте её напрямую через Константы.ИмяКонстанты.Получить().

Можно ли задать разные префиксы для разных видов документов?

Штатно префикс ИБ один на всю базу. Отдельные префиксы для видов документов реализуются только доработкой подсистемы префиксации или собственными механизмами нумерации, что требует изменения конфигурации.

Что делать, если в двух базах обмена стоит одинаковый префикс?

Назначьте каждой базе уникальный префикс в настройках синхронизации, затем проверьте нумерацию новых документов. Уже созданные документы с совпадающими номерами придётся разбирать вручную через отчёты о конфликтах обмена.

Влияет ли префикс на нумерацию уже проведённых документов?

Нет. Смена префикса действует только на новые объекты. Номера существующих документов остаются прежними, если их специально не перенумеровать.

Итог

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

Префикс ИБ хранится в константе и виден в настройках синхронизации данных. Программно его возвращают ПолучитьФункциональнуюОпцию или чтение константы напрямую. Меняйте префикс только после проверки на копии базы, если она участвует в обмене.