Массовое обновление справочника номенклатуры в 1С 8.3
Содержание
Перезаписать номенклатуру — значит обновить реквизиты уже существующих позиций, не плодя дубли. Если нужно поменять одно-два поля у выделенных карточек, подойдёт Групповое изменение реквизитов. Если данные приходят таблицей от поставщика — загрузка из Excel
с поиском совпадений по ключу. Если справочник переносят в другую базу — обмен данными с сопоставлением по идентификатору.
Главный риск любого массового обновления — задвоение позиций. 1С создаёт новый элемент, когда не находит совпадение по полю поиска. Поэтому до загрузки нужно решить, по какому реквизиту искать уже заведённые карточки: обычно это Артикул или Код, реже — наименование.
Ниже — все рабочие способы перезаписи: от штатной кнопки в списке до регламентного задания, а также как чинить ссылки, если после обмена номенклатура «разъехалась».
Какой способ перезаписи выбрать
Способ зависит от того, откуда берутся новые значения и сколько полей меняется.
- 🔧 Меняете 1–2 реквизита у выделенных позиций (ставку НДС, единицу, группу) —
Групповое изменение реквизитов. Файл не нужен. - 📄 Данные приходят таблицей (прайс поставщика, выгрузка из учётной системы) — загрузка из Excel с поиском по ключу.
- 🔁 Переносите справочник в другую базу — обмен данными или выгрузка/загрузка XML с сопоставлением по идентификатору.
- 🧩 Нестандартная логика (пересчёт цен по формуле, условная замена) — внешняя обработка или расширение конфигурации .
Артикул или Код, чтобы обновлять, а не создавать позиции.Если сомневаетесь, начните с малого: обновите 5–10 позиций и проверьте результат в списке. Массовую операцию запускайте только после удачного теста на выборке.
Подготовка данных и ключ поиска дублей
Качество загрузки решается не в 1С, а в исходном файле. Разберите таблицу до запуска.
Ключевое поле — то, по которому программа опознаёт уже заведённую карточку. Если его не задать, каждая строка файла создаст новую позицию. Чаще всего в роли ключа выступает Артикул: он короткий и уникальный. Код 1С подходит, когда файл выгружен из этой же базы. Наименование как ключ ненадёжно — лишний пробел или другая раскладка буквы, и совпадение не находится.
Пример: в базе товар «Кабель ВВГ 3х2.5», а в прайсе поставщика «Кабель ВВГ 3*2,5». По наименованию 1С такие строки не свяжет и заведёт вторую карточку. По артикулу, если он одинаков, свяжет корректно. Поэтому ключ выбирают по самому стабильному полю, а не по тому, что удобнее читать глазами.
Перед загрузкой приведите файл в порядок:
- Оставьте в таблице только нужные колонки и один лист.
- Уберите объединённые ячейки и пустые строки между данными.
- Проверьте формат числовых колонок — цена и количество должны быть числом, а не текстом.
- Единицы, ставки НДС, группы в файле должны называться так же, как в справочниках 1С, иначе они не подставятся.
- Удалите дубли строк внутри самого файла — две строки с одним артикулом перезапишут позицию дважды.
Если в базе уже есть дубли номенклатуры, сначала найдите и объедините их, а потом загружайте. Иначе обновление «размажется» по нескольким карточкам, и остатки с ценами разойдутся.
Перед массовой загрузкой сделайте резервную копию базы. Откат отдельной операции в 1С не предусмотрен — вернуть прежние значения можно только из копии.
Групповое изменение реквизитов без выгрузки в Excel
Когда новое значение одно на всю выборку (например, сменить ставку НДС у группы товаров или перенести позиции в другую папку), файл не нужен. Эту задачу закрывает штатный инструмент Групповое изменение реквизитов.
Он входит в библиотеку стандартных подсистем, поэтому есть в типовых конфигурациях — Бухгалтерии 3.0, Управлении торговлей 11, ЗУП 3.1, ERP. Открывается из раздела Администрирование → Обслуживание, в группе инструментов обслуживания данных (в части релизов команда называется «Групповое изменение реквизитов» и вызывается также из меню «Ещё» над списком номенклатуры).
Порядок работы:
- В поле выбора
объекта укажите справочник
Номенклатура. - Задайте отбор — например, по группе, виду номенклатуры или признаку.
- Выберите реквизит, который меняете, и новое значение.
- Нажмите изменение реквизитов и дождитесь отчёта об обработанных элементах.
Инструмент меняет значение сразу в базе, минуя промежуточный файл. Это удобно для реквизитов-перечислений и ссылок (единица, ставка НДС, группа). Для подстановки разных значений в каждую позицию он не подойдёт — там нужна загрузка из таблицы.
Групповое изменение видит только отобранные позиции. Проверьте отбор до запуска: если он шире, чем нужно, под замену попадут лишние карточки.
Загрузка номенклатуры из Excel штатными средствами
Для разных значений в каждой строке используют загрузку из табличного документа. Универсальный инструмент — обработка Загрузка данных из табличного документа, которую фирма 1С публикует на диске ИТС. Она работает и в управляемых, и в обычных формах, и не зависит от конкретной конфигурации.
Как запустить:
- Откройте обработку через
Файл → Открытьи выберите файл.epf. - На вкладке источника загрузите ваш Excel или вставьте данные из буфера.
- Укажите вид загружаемых данных — справочник
Номенклатура. - Сопоставьте колонки таблицы с реквизитами справочника.
- В настройке поиска выберите поле, по которому ищутся существующие элементы (
АртикулилиКод). Это и отличает перезапись от создания новых позиций. - Запустите загрузку и проверьте протокол — сколько записей обновлено, сколько создано.
Если в протоколе создано больше позиций, чем вы ждали, — значит, поле поиска не совпало с данными файла. Остановитесь, проверьте ключ и при необходимости удалите созданные дубли из копии.
В Управлении торговлей, Комплексной автоматизации и ERP есть встроенная загрузка номенклатуры из внешнего файла — команда загрузки в самом списке номенклатуры. Она ведёт по шагам: сопоставление колонок, предпросмотр, контроль заполнения. Принцип тот же: заранее укажите поле, по которому ищутся совпадения.
Запуск внешних обработок по умолчанию ограничен. Если Файл → Открыть не предлагает выполнить обработку, администратор должен разрешить открытие внешних отчётов и обработок в настройках безопасности базы.
Внешние обработки и расширения конфигурации
Штатных средств хватает, пока сопоставление — это «колонка файла → реквизит справочника». Когда нужна логика (пересчитать цену с наценкой, подставить значение по условию, собрать наименование из нескольких колонок), берут внешнюю обработку или расширение.
Внешняя обработка (.epf) — отдельный файл, который открывают по месту. Подходит для разовых и нерегулярных задач. Минус — её нужно хранить и каждый раз открывать вручную.
Расширение конфигурации (.cfe) встраивается в базу и работает как часть программы. Механизм расширений доступен с платформы 8.3.6. Расширение подключают в разделе администрирования, в списке расширений, и это два разных действия: загрузить файл
.cfe и затем обновить конфигурацию
базы данных. Расширение удобно, когда доработку используют постоянно и несколько пользователей.
Выбор простой:
| Средство | Когда применять | Что учесть |
|---|---|---|
Внешняя обработка .epf | разовая или редкая загрузка | нужно разрешение на внешние обработки |
Расширение .cfe | постоянная доработка для всех | платформа не ниже 8.3.6 |
Готовую внешнюю обработку под обмен с конкретным поставщиком часто дешевле заказать один раз, чем вручную чистить дубли после каждой загрузки «на глаз».
Перенос номенклатуры между базами и правка ссылок
Когда справочник переносят в другую базу (например, из старой учётной системы в новую), работает не загрузка из Excel, а обмен данными. Для разовой задачи подходит выгрузка и загрузка через XML, для регулярной — настроенный обмен по правилам конвертации.
Главный вопрос — как сопоставляются объекты в базе-приёмнике:
- По внутреннему идентификатору (GUID). Если позиция уже выгружалась в эту базу, она опознаётся и перезаписывается. Ссылки на неё в документах сохраняются.
- По полям поиска (
Артикул,Код, наименование). Применяется, когда идентификаторы в базах разные. Риск тот же — при несовпадении создаётся дубль.
Для настроенного регулярного обмена правила сопоставления задают в правилах конвертации (механизм «Конвертация данных »). В правилах прямо указывают поля поиска для каждого объекта — это и есть страховка от дублей при переносе. Для разового переноса правила не нужны: хватает выгрузки и загрузки XML с ручным выбором поля сопоставления.
После обмена типичная проблема — «разъехавшиеся» ссылки: в документах осталась старая позиция, а цены и остатки загрузились в новую. Это и есть коррекция ссылок. Лечится так:
- Найдите пары «старая — новая позиция» по артикулу.
- Через
Групповое изменение реквизитовили штатную обработку поиска и удаления дублей укажите, какая карточка главная. - Программа переносит ссылки из документов на главную позицию, дубль помечает на удаление.
- Удаление дублей проводите стандартным механизмом — он проверит, что на позицию больше нет ссылок.
Объединять дубли и чистить ссылки — операция для всей базы. Делайте её, когда другие пользователи не работают, и только после резервной копии.
Регулярная загрузка номенклатуры по расписанию
Если прайс обновляется каждый день, ручной запуск не нужен — загрузку ставят на расписание. Для этого обработку загрузки оформляют как дополнительную и назначают ей регламентное задание.
Шаги для типовых конфигураций на библиотеке стандартных подсистем:
- Откройте
Администрирование → Печатные формы, отчёты и обработки → Дополнительные отчёты и обработки. - Добавьте обработку с видом «Дополнительная обработка».
- У обработки, которая поддерживает фоновый запуск, появится команда с расписанием — укажите периодичность (раз в сутки, раз в час).
- Проверьте, что файл-источник лежит в месте, доступном серверу 1С, а не только вашему компьютеру.
Регламентное задание выполняется на сервере под фоновым пользователем. Поэтому у него должны быть права на запись в справочник, а путь к файлу — серверный, а не локальный диск клиента.
Для автоматической загрузки делайте ключ поиска строгим (артикул), а в настройках обработки включите протокол. Иначе ночная ошибка в файле тихо наплодит дубли, и вы увидите это только утром.
Частые ошибки при массовой перезаписи
Ошибки на этом участке почти всегда сводятся к сопоставлению и форматам. Разберём то, что не вытекает прямо из шагов выше.
- Ставка НДС или единица не подставились. В файле они названы иначе, чем в справочниках 1С. Программа ищет точное совпадение строки — приведите значения к справочнику заранее.
- Числа загрузились как текст. Колонка в Excel имеет текстовый формат (часто из-за пробелов-разделителей разрядов). Цена тогда не распознаётся. Переведите колонку в числовой формат до загрузки.
- Обновились не те позиции. Ключ поиска совпал у разных товаров — например, пустой артикул у нескольких карточек. Пустое поле поиска опасно: оно «цепляет» все позиции без артикула.
- После обмена задвоились группы. Папки номенклатуры тоже сопоставляются. Если правила переносят только элементы, а группы создаются заново, структура дублируется. Проверяйте сопоставление групп отдельно.
Можно ли отменить массовую перезапись одной кнопкой?
Чем перезапись отличается от создания новых позиций?
Артикул или Код, она её обновляет; если не находит — создаёт новую. Пустой ключ почти всегда даёт дубли.Нужен ли монопольный доступ для загрузки из Excel?
.dt, а не для записи элементов.