Как правильно настроить нумерацию документов в 1С:Комплексная автоматизация при переносе данных?

Программист 1С v8.3 (Управляемые формы) 1С:Комплексная автоматизация Управленческий учет IT и автоматизация бизнеса
← На главную

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

Где искать механизм префиксации документов

В типовых конфигурациях 1С, включая КА, за формирование префиксов отвечает подсистема «Префиксация объектов». Если вам необходимо изменить логику того, как формируется номер документа при записи, следует обратить внимание на общий модуль ПрефиксацияОбъектовСобытия.

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

Разберем, как выглядит логика работы этого механизма:

  1. Система проверяет наличие префикса информационной базы.
  2. Система проверяет префикс организации или обособленного подразделения.
  3. К этим данным добавляется порядковый номер, который 1С получает из базы данных, находя последний созданный документ.

Анализ методов изменения нумерации

В процессе обсуждения часто предлагается метод «ручного исправления» номера последнего документа. Например, если последний номер был 00000047, а система требует 000-0047, некоторые предлагают просто перебить номер в базе. Однако, важно понимать, что это дает лишь временный эффект.

Почему ручное исправление — это не всегда выход:

Рекомендованный подход к настройке

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

  1. Использование штатных настроек: Проверьте настройки префиксации в карточках организаций. Зачастую в КА уже предусмотрены поля для ввода префикса, которые учитываются стандартным алгоритмом платформы. Это наиболее безопасный способ разграничить нумерацию разных структурных единиц.
  2. Доработка через расширение: Если требования заказчика выходят за рамки типовых настроек, создайте расширение, в котором переопределите логику процедуры УстановитьПрефикс. В коде расширения вы можете прописать условия, при которых номер будет формироваться без определенных префиксов для конкретных видов документов.
  3. Работа с печатными формами: Если бухгалтерии принципиально видеть номер «как в старой программе» только при печати, не меняйте технический номер объекта. Вы можете доработать макет печатной формы, добавив функцию, которая «обрезает» префикс при выводе документа на бумагу или в PDF.

Важные замечания по ЭДО и налоговому учету

При изменении формата номеров помните о том, что номер документа является идентификатором в ЭДО (электронном документообороте). Изменение нумерации может привести к расхождениям между вашим учетом и учетом ваших контрагентов. Поэтому, принимая решение о смене формата, убедитесь, что это не создаст проблем при прохождении налоговых проверок.

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

В завершение, проанализируем пример того, как может выглядеть расширение логики в общем модуле (в упрощенном виде):


// Пример логики в расширении
Процедура УстановитьПрефиксВРасширении(Источник, Префикс) Экспорт
    // Здесь мы можем проанализировать тип объекта
    // И принудительно изменить переменную Префикс
    Если ТипЗнч(Источник) = Тип("ДокументОбъект.РеализацияТоваровУслуг") Тогда
        Префикс = "000-";
    КонецЕсли;
КонецПроцедуры

Используя этот подход, вы обеспечите стабильную работу системы и избавите себя от необходимости постоянно корректировать нумерацию вручную.

← На главную