В конфигурации «1С:Управление нашей фирмой» (УНФ версии 1.6) при создании новых документов или элементов справочников перед номером автоматически подставляется префикс «НФ». Выясним, почему это происходит, откуда система берет эти символы и как правильно изменить или отключить префиксацию.
Проанализируем исходный код конфигурации. Значение по умолчанию задается на уровне механизмов Библиотеки Стандартных Подсистем (БСП), а также при первоначальном заполнении информационной базы.
В общем модуле ОбменДаннымиПереопределяемый находится процедура, устанавливающая префикс информационной базы по умолчанию:
Процедура ПриОпределенииПрефиксаИнформационнойБазыПоУмолчанию(Префикс) Экспорт
Префикс = НСтр("ru = 'НФ'"); // УНФ
КонецПроцедуры
Кроме того, при первичной инициализации базы в модуле ОбновлениеИнформационнойБазыУНФ префикс автоматически присваивается основной организации:
НашаОрганизацияСсылка = Справочники.Организации.ОсновнаяОрганизация;
НашаОрганизация = НашаОрганизацияСсылка.ПолучитьОбъект();
НашаОрганизация.НаименованиеПолное = "ООО ""Наша фирма""";
НашаОрганизация.Префикс = "НФ-";
Таким образом, итоговый номер документа формируется путем сложения префикса организации и префикса информационной базы.
Рассмотрим ситуацию, когда пользователь пытается вручную очистить префикс в константах или справочнике Организации. После очистки поле префикса становится пустым, однако в номерах создаваемых документов вместо префикса появляется значение «00».
Это связано с алгоритмами стандартизации номеров и кодов в БСП. Чтобы длина номера оставалась фиксированной и сохранялась корректная сортировка документов в списках, механизм префиксации автоматически подставляет значение «00», если префикс информационной базы или организации не задан.
Разберем по шагам, как штатным способом изменить префикс ИБ без правки программного кода:
Посмотрим на решение ситуации, когда префикс необходим внутри системы для сохранения уникальности номеров, но его не должно быть в печатных документах, выдаваемых клиентам:
Проанализируем решение для разработчиков. Чтобы переопределить префикс по умолчанию без изменения типовой конфигурации и снятия базы с поддержки, воспользуемся механизмом расширений:
ОбменДаннымиПереопределяемый.ПриОпределенииПрефиксаИнформационнойБазыПоУмолчанию, установив нужное значение префикса или сбросив его.При изменении или удалении префикса автонумератор платформы воспринимает новые документы как новый диапазон номеров. В результате нумерация может начаться заново с единицы.
Чтобы восстановить корректную последовательную нумерацию после смены префикса, необходимо вручную отредактировать номер у первого созданного документа нового формата (задав нужный порядковый номер), после чего вызвать программный метод платформы ОбновитьНумерациюОбъектов().