Справочники и Данные · 12 мин
Как присвоить код товару в 1С
Как присвоить код товару в 1С: автоматическая нумерация, ручное присвоение, настройка префиксов, работа с артикулами и штрихкодами, исправление ошибок.
Код товара в 1С — это уникальный идентификатор элемента справочника «Номенклатура», который программа использует для однозначной идентификации позиции в документах, отчётах и при обмене данными. Каждый товар при записи получает код автоматически либо код задаётся вручную — в зависимости от настроек конфигурации. Понимание того, как устроена нумерация, помогает избежать дублей, сбоев сортировки и проблем при синхронизации с другими базами.
В типовых конфигурациях («Управление торговлей», «Комплексная автоматизация», «ERP», «Розница», «Бухгалтерия предприятия») код номенклатуры формируется по правилам автонумерации. Однако на практике часто возникают задачи: присвоить конкретный код вручную, изменить уже присвоенный код, настроить префикс для обмена между базами или разобраться, почему программа не даёт сохранить элемент. Ниже разобраны все эти сценарии.
Важно сразу различать три похожих, но разных реквизита: код — служебный идентификатор справочника, артикул — обозначение поставщика или производителя, штрихкод — машиночитаемый идентификатор для сканеров. Все три могут использоваться для поиска товара, но присваиваются и хранятся по-разному.
Где хранится код товара и как он работает
Код — стандартный реквизит любого справочника в 1С. В справочнике «Номенклатура» он обычно числовой (например, 000000123) или строковый с префиксом (например, УТ-000123). Длина кода задаётся в конфигураторе и в типовых решениях обычно составляет 9–11 символов. Код участвует в быстром поиске: если в списке товаров начать вводить цифры, программа найдёт позицию по коду.
Ключевое свойство кода — уникальность. Два элемента справочника с одинаковым кодом существовать не могут: при попытке записать дубль программа выдаст ошибку «Код не уникален». Исключение — если в конфигурации уникальность кодов отключена разработчиком, но в типовых решениях она включена по умолчанию.
По умолчанию код присваивается автоматически: при создании нового товара программа берёт максимальный существующий код и увеличивает его на единицу. Это поведение называется автонумерацией, и именно оно определяет, почему новый товар получает «следующий» номер, даже если вы удалили какие-то позиции раньше.
Как присвоить код автоматически
Автоматическое присвоение — стандартный и рекомендуемый способ. Он не требует никаких дополнительных действий: достаточно создать товар и записать его.
Порядок действий в типовой конфигурации:
- Откройте раздел с номенклатурой: в «Управлении торговлей» это «НСИ и администрирование» → «Номенклатура», в «Бухгалтерии предприятия» — «Справочники» → «Номенклатура».
- Нажмите кнопку «Создать».
- Заполните наименование и другие обязательные реквизиты (вид номенклатуры, единицу измерения).
- Нажмите «Записать» или «Записать и закрыть». Поле «Код» заполнится автоматически.
Обратите внимание: в открытой, но ещё не записанной карточке поле «Код» может быть пустым или содержать предварительное значение. Окончательный код элемент получает в момент записи. Если два пользователя одновременно создают товары, программа выдаст им разные коды — конфликтов при одновременной работе автонумерация не создаёт.
Если поле «Код» в карточке не отображается вовсе, это значит, что в форме элемента оно скрыто настройками интерфейса. В таком случае код можно увидеть в списке номенклатуры, включив колонку «Код» через «Ещё» → «Изменить форму».
- 1Откройте справочник «Номенклатура» и нажмите «Создать»
- 2Заполните наименование и обязательные реквизиты
- 3Оставьте поле «Код» без изменений для автонумерации или введите своё значение
- 4Нажмите «Записать и закрыть»
- 5Проверьте присвоенный код в списке номенклатуры
Как присвоить код вручную
Ручное присвоение нужно, когда код должен соответствовать внешней системе: каталогу поставщика, учётной системе филиала, старой базе после миграции. В типовых конфигурациях поле «Код» доступно для редактирования, хотя иногда скрыто.
Чтобы задать код вручную, откройте карточку товара, найдите поле «Код» (обычно рядом с наименованием) и впишите нужное значение до записи элемента. Если значение уже занято, программа при записи сообщит о нарушении уникальности — тогда выберите другой код.
Для строковых кодов учитывайте длину: если в конфигурации задана длина 9 символов, а вы вводите более длинный код, лишние символы будут обрезаны. Это частая причина «таинственных» дублей: два разных длинных кода после обрезки становятся одинаковыми.
Ручной ввод при отключённой автонумерации
В некоторых конфигурациях или после доработок автонумерация справочника отключена. Тогда поле «Код» остаётся пустым, и записать элемент без кода нельзя — программа потребует заполнить его. В этом случае код нужно вводить всегда вручную, и ответственность за уникальность лежит на пользователе (проверку уникальности всё равно выполнит платформа).
Настройка префиксов кодов при обмене данными
Если товары создаются в нескольких базах, которые затем обмениваются данными (например, центральный офис и магазины), без префиксов неизбежны коллизии: в двух базах появятся разные товары с одинаковым кодом. Для решения этой проблемы используется механизм префиксов.
Префикс задаётся в настройках синхронизации или в разделе «НСИ и администрирование» → «Префиксы информационной базы» (в разных конфигурациях путь отличается). После настройки новые коды получают вид «ЦО-000123» или «М1-000045», где буквы — префикс узла. При обмене коды не пересекаются, и каждый элемент однозначно определяет базу-источник.
Учтите, что префикс «съедает» часть длины кода: при длине 9 символов и префиксе из трёх знаков на числовую часть остаётся только шесть. Для крупных каталогов это может стать ограничением — тогда длину кода увеличивают в конфигураторе, что является доработкой и требует участия разработчика.
Как изменить код уже существующего товара
Код существующего элемента можно изменить: откройте карточку товара, отредактируйте поле «Код» и запишите. Ссылки на товар в документах при этом не пострадают — документы хранят не код, а внутреннюю ссылку на элемент, поэтому проведённые накладные и отчёты продолжат корректно показывать позицию.
Тем не менее есть риски. Во-первых, если код использовался во внешних системах (на сайте, в Excel-выгрузках, в печатных каталогах), после смены кода соответствие потеряется. Во-вторых, при обмене по кодам (а не по внутренним идентификаторам) изменённый элемент может загрузиться в другую базу как новый, создав дубль. Поэтому массовая перенумерация существующей номенклатуры — операция, которую выполняют после резервного копирования и, как правило, силами специалиста.
Для массового изменения кодов существуют обработки группового изменения реквизитов, но штатная обработка «Групповое изменение реквизитов» в типовых конфигурациях стандартные реквизиты вроде кода обычно не изменяет — это сделано намеренно, чтобы защитить данные от случайной порчи.
Код, артикул и штрихкод: что присваивать где
На практике «код товара» часто понимают шире, чем служебный код справочника. Разберём, какой идентификатор за что отвечает.
| Идентификатор | Где задаётся | Назначение |
|---|---|---|
| Код | Поле «Код» карточки номенклатуры | Служебная идентификация, быстрый поиск, обмен |
| Артикул | Реквизит «Артикул» в карточке товара | Обозначение производителя или поставщика, поиск по каталогам |
| Штрихкод | Регистр «Штрихкоды номенклатуры» (кнопка в карточке) | Работа со сканером, кассой, маркировкой |
Артикул заполняется вручную или загружается из прайсов поставщика и не обязан быть уникальным, хотя дубли артикулов затрудняют поиск. Штрихкод EAN-13 для розничного товара генерируется по кнопке в карточке (в конфигурациях с торговым оборудованием) либо вводится с упаковки производителя. Один товар может иметь несколько штрихкодов — для разных упаковок и характеристик.
Если ваша задача — чтобы товар «пробивался» на кассе, достаточно штрихкода; менять для этого код справочника не нужно. И наоборот: для выгрузки каталога на сайт чаще используется именно код или артикул, а штрихкод передаётся отдельным полем.
Какой идентификатор использовать
Подходит для внутреннего учёта, обмена между базами 1С и быстрого поиска. Ограничение: фиксированная длина и служебный формат
Подходит для работы с поставщиками и клиентами, привычного обозначения в документах. Ограничение: уникальность не контролируется
Подходит для сканеров, касс и маркировки. Ограничение: требует отдельного ведения и не отображается как основной идентификатор
Проверка результата и типичные проблемы
После присвоения или изменения кода убедитесь, что всё работает: найдите товар в списке по новому коду, откройте документ с этой позицией и проверьте, что она отображается корректно. Если база обменивается данными, выполните тестовую синхронизацию и убедитесь, что в связанной базе не появилось дублей.
Если при записи возникает ошибка «Код не уникален», значит, элемент с таким кодом уже существует — возможно, помеченный на удаление. Пометка на удаление не освобождает код: сначала нужно физически удалить помеченные объекты через «Удаление помеченных объектов» либо выбрать другой код.
Если автонумерация «сбилась» и предлагает коды меньше существующих (такое бывает после ручного ввода кода из далёкого диапазона или некорректной загрузки), можно вызвать обновление нумерации: в форме списка справочника через «Ещё» иногда доступна команда обновления нумерации, либо её выполняет администратор программным способом.
Как проверить результат
Товар находится по полному коду, открывается корректная карточка
Поиск ничего не находит или открывается другая позиция
Код присваивается автоматически, ошибок нет
Ошибка «Код не уникален» или пустой код
Товар сопоставляется с существующим элементом, дублей нет
Во второй базе появляется копия товара
Часто задаваемые вопросы
Можно ли сделать код товара буквенно-цифровым?
Да, если в конфигурации код справочника имеет строковый тип — тогда допустимы любые символы в пределах установленной длины. Если тип кода числовой, буквы ввести нельзя, и изменение типа является доработкой конфигурации, которую выполняет разработчик.
Почему после удаления товара его код не используется повторно?
Автонумерация всегда считает от максимального когда-либо присвоенного кода и не заполняет «дыры». Это штатное поведение платформы, защищающее от повторного использования идентификаторов, которые могли остаться во внешних документах и выгрузках.
Что делать, если поле «Код» недоступно для редактирования?
Проверьте, не скрыто ли поле настройками формы («Ещё» → «Изменить форму»). Если поле заблокировано программно, вероятно, в конфигурации внесена доработка, запрещающая ручное изменение, — в этом случае обратитесь к администратору или разработчику.
Нарушатся ли документы, если изменить код товара?
Нет, документы ссылаются на элемент по внутренней ссылке, а не по коду, поэтому проведённые накладные и отчёты продолжат работать корректно. Риск существует только для обменов данными и внешних систем, где товар идентифицируется именно по коду.
Как массово присвоить коды загруженным из Excel товарам?
При загрузке через штатную обработку «Загрузка данных из табличного документа» коды можно либо передать из файла (колонка с кодами), либо не передавать вовсе — тогда программа присвоит их автоматически при записи. Второй вариант предпочтительнее, если коды из файла не связаны с другими системами.
Что важно запомнить
Код товара в 1С присваивается автоматически при записи или вручную через поле «Код» карточки. Для обмена между базами настраивайте префиксы, не меняйте коды у синхронизируемых товаров без необходимости и не путайте код справочника с артикулом и штрихкодом — у каждого идентификатора своя роль.