Справочники и Данные · 11 мин
Как сгенерировать артикул в 1С: все рабочие способы
Как сгенерировать артикул в 1С: автонумерация, шаблоны, обработки и внешние генераторы. Пошаговые инструкции, проверка уникальности и типичные ошибки.
Артикул — это уникальный код товара в справочнике номенклатуры, по которому позицию ищут в документах, отчётах и при обмене с поставщиками. В типовых конфигурациях 1С (Управление торговлей, ERP, Комплексная автоматизация, УНФ) артикул не генерируется автоматически: программа присваивает только внутренний код элемента справочника, а поле «Артикул» пользователь заполняет вручную или с помощью доработок.
На практике есть четыре рабочих подхода: использовать внутренний код как артикул, настроить шаблонную генерацию через подписку на событие, заполнить артикулы массово обработкой или перенести готовые артикулы из прайса поставщика. Выбор зависит от того, нужен ли вам «говорящий» артикул с признаками категории и бренда или достаточно сквозного порядкового номера.
Ниже разобраны все варианты с пошаговыми действиями, ограничениями и проверками результата. Инструкции ориентированы на конфигурации с управляемыми формами (УТ 11, ERP 2, КА 2, УНФ), но принципы применимы и к другим решениям на платформе 1С:Предприятие 8.3.
Что такое артикул в 1С и чем он отличается от кода
В справочнике «Номенклатура» у каждого элемента есть системное поле «Код». Оно заполняется автоматически по счётчику нумерации, обеспечивает уникальность внутри базы и не предназначено для работы с поставщиками и маркетплейсами. Код может иметь префикс базы и меняться при обмене данными, поэтому полагаться на него во внешних документах рискованно.
Артикул — прикладной реквизит, который виден в карточке товара, печатается в документах, выводится в прайсах и передаётся на маркетплейсы. Уникальность артикула типовая конфигурация не контролирует: программа позволит сохранить два товара с одинаковым артикулом без предупреждения. Это главное отличие от кода и главный источник ошибок при ручном заполнении.
Способ 1. Использовать код номенклатуры как артикул
Самый простой вариант — вообще не вести отдельный артикул, а считать артикулом внутренний код. Для этого достаточно настроить вывод кода в печатные формы и прайсы, либо заполнить поле «Артикул» значением кода один раз для всего справочника.
Чтобы скопировать код в артикул массово, откройте список номенклатуры, выделите нужные позиции (или всю папку), вызовите «Изменить выделенные» через меню «Ещё». В обработке группового изменения реквизитов выберите «Артикул» и задайте значение. Обратите внимание: обработка подставляет фиксированное значение, а не код каждого элемента, поэтому для копирования индивидуальных кодов понадобится произвольный алгоритм или внешняя обработка.
Плюс подхода — нулевая стоимость внедрения и гарантированная уникальность. Минус — код не несёт смысловой нагрузки, а при обмене между базами (например, между УТ и Бухгалтерией) коды могут различаться из-за префиксов.
Способ 2. Генерация артикула по шаблону через расширение
Если нужен «говорящий» артикул вида «КАТ-БРЕНД-НОМЕР», потребуется небольшая доработка. Наиболее безопасный путь — расширение конфигурации с подпиской на событие «При записи» справочника «Номенклатура»: при создании элемента код проверяет, пуст ли артикул, и заполняет его по шаблону.
Типовой шаблон собирается из доступных реквизитов: первые буквы категории (вид номенклатуры или родительская группа), символы бренда или производителя и порядковый номер. Например, для товара из группы «Обувь» с кодом 000001234 можно сформировать «ОБУ-1234».
Пример логики на встроенном языке:
Процедура НоменклатураПриЗаписи(Источник, Отказ)
Если Не ЗначениеЗаполнено(Источник.Артикул) Тогда
Префикс = Лев(ВРег(Источник.Родитель.Наименование), 3);
Источник.Артикул = Префикс + "-" + Формат(Источник.Код, "ЧГ=");
КонецЕсли;
КонецПроцедуры
Префикс = Лев(ВРег(Источник.Родитель.Наименование), 3);
Источник.Артикул = Префикс + "-" + Формат(Источник.Код, "ЧГ=");Перед изменением конфигурации убедитесь, что она снята с полной поддержки только там, где это необходимо, а лучше — оформите доработку именно расширением, чтобы не потерять её при обновлении. Если нет навыков разработки на встроенном языке, этот пункт стоит поручить специалисту: ошибка в обработчике записи может блокировать сохранение карточек товара для всех пользователей.
Способ 3. Массовое заполнение артикулов обработкой
Когда справочник уже заполнен, а артикулы пустые, удобнее разовая массовая обработка, а не постоянная генерация. Есть два пути: типовая обработка «Групповое изменение реквизитов» и внешние обработки с форума разработчиков или из состава БСП.
- 1Сделайте архивную копию базы через конфигуратор или средства СУБД
- 2Откройте справочник «Номенклатура», отберите нужную папку или отбором нужные позиции
- 3Вызовите «Ещё → Изменить выделенные» (Групповое изменение реквизитов)
- 4Выберите реквизит «Артикул» и задайте правило заполнения
- 5Выполните обработку на копии или на малой выборке, проверьте результат
- 6Повторите для всей номенклатуры и проверьте уникальность отчётом
Для сложных шаблонов (с учётом характеристик, брендов, единиц измерения) типовой обработки недостаточно — в ней можно задать только константу или простое выражение. В этом случае используют внешние обработки, где правило описывается произвольным алгоритмом, либо заполняют артикулы через загрузку из табличного документа.
Третий вариант — выгрузить номенклатуру в таблицу, сформировать артикулы формулами в табличном редакторе и загрузить обратно типовой обработкой «Загрузка данных из табличного документа», сопоставив колонки с кодом и артикулом. Это самый контролируемый способ: вы видите результат до записи в базу.
Способ 4. Артикулы поставщика и обмен с внешними системами
Если компания работает по дропшиппингу или перепродаёт товары, часто логичнее использовать артикулы поставщика. В УТ 11 и ERP для этого есть отдельный регистр «Номенклатура поставщиков»: там хранится соответствие артикула поставщика вашей номенклатуре, и собственное поле «Артикул» можно заполнить оттуда.
При загрузке прайсов через «Помощник загрузки данных из табличного документа» или механизмы EDI артикул можно сопоставить как ключ поиска: тогда при повторных загрузках позиции будут находиться по артикулу, а не по наименованию, что резко снижает количество дублей.
Для обмена с маркетплейсами учитывайте их требования к формату: многие площадки не принимают артикулы с пробелами, кириллицей и спецсимволами. Если планируется интеграция, сразу закладывайте латиницу, цифры и дефис, без символов «/», «\», «#» и пробелов.
Сравнение вариантов
Подходит для внутреннего учёта; не несёт смысла и может меняться при обмене между базами
Даёт «говорящие» артикулы автоматически; требует разработки и аккуратного обновления
Быстро закрывает разовую задачу; не генерирует артикулы для новых товаров
Упрощает закупки и загрузку прайсов; зависит от дисциплины поставщика
Проверка уникальности и качества заполнения
Типовая 1С не блокирует дубли артикулов, поэтому контроль нужно организовать самостоятельно. Самый простой способ — отчёт или консольный запрос, группирующий номенклатуру по артикулу и показывающий, где одному значению соответствует больше одной позиции.
Для постоянного контроля в расширение добавляют проверку в обработчике записи: перед сохранением выполняется запрос «есть ли другой элемент с таким артикулом», и при совпадении пользователь получает предупреждение. Это не обязательно должна быть жёсткая блокировка — иногда дубль допустим, например при снятии товара с производства.
Как проверить результат
Пустых артикулов в рабочих группах нет
Есть позиции с пустым артикулом среди активных товаров
Один артикул — одна позиция
По одному артикулу находится несколько карточек
Латиница, цифры, дефис, без пробелов
Кириллица, спецсимволы, разный регистр
Артикул помещается в реквизит целиком
Артикул обрезан при записи
Типичные ошибки при генерации артикулов
Большинство проблем с артикулами возникает не из-за инструментов, а из-за отсутствия единого правила. Когда каждый менеджер придумывает формат сам, через полгода в базе сосуществуют «ТОВ-001», «tov-1» и «Товар 001», и поиск перестаёт работать.
Отдельная ошибка — строить артикул из изменяемых признаков: цены, остатка, текущего поставщика. Артикул должен быть стабильным на всём жизненном цикле товара, иначе история продаж и статистика «разваливаются» при каждой смене реквизита.
Опыт внедрений показывает: самый живучий формат — короткий постоянный префикс категории и порядковый номер с ведущими нулями, например «ОДЕЖ-000123». Такой артикул сортируется правильно, читается людьми и не ломается при росте справочника.
Как выбрать подход под свою задачу
Как выбрать действие
После внедрения любого способа зафиксируйте правило в коротком внутреннем регламенте: какой формат, кто создаёт артикулы, что делать при дублях. Без этого даже идеально настроенная генерация через год превратится в смесь форматов.
Что важно запомнить
Типовая 1С не генерирует артикул автоматически: используйте код справочника, массовую обработку, загрузку из таблицы или расширение с шаблоном. Формат должен быть единым, стабильным и совместимым с внешними системами, а перед массовыми изменениями обязательно делайте копию базы.
Частые вопросы
Можно ли включить автогенерацию артикула без программирования?
Полноценной настройки автогенерации в типовых конфигурациях нет. Без доработки доступны ручное заполнение, групповое изменение реквизитов и загрузка из табличного документа. Автоматическое заполнение при создании карточки требует расширения или доработки конфигурации.
Чем артикул отличается от штрихкода?
Артикул присваивает сама компания или поставщик, он может быть любого формата. Штрихкод — стандартизированный код (например, EAN-13), который регистрируется в системе GS1 и читается сканером. В 1С штрихкоды хранятся в отдельном регистре и не заменяют артикул.
Что делать, если в базе уже есть дубли артикулов?
Сначала постройте отчёт с группировкой по артикулу и найдите все совпадения. Затем для каждой пары решите: это одна и та же позиция (тогда объедините карточки через обработку поиска и удаления дублей) или разные товары (тогда одному из них присвойте новый артикул).
Можно ли менять артикул у товара, по которому уже есть движения?
Технически да — артикул это реквизит, а не ключ записи, документы не пострадают. Но внешние системы, прайсы и сохранённые отборы могут ссылаться на старое значение, поэтому менять артикул стоит только при реальной необходимости и с уведомлением всех, кто с ним работает.
Какой длины делать артикул?
Оптимально 6–15 символов: короче — вырастает риск совпадений и теряется читаемость, длиннее — артикул неудобно диктовать и он может не помещаться в печатные формы и поля внешних систем. Также проверьте ограничение длины самого реквизита в вашей конфигурации.