При загрузке товаров легко создать дубли уже существующих карточек. Чтобы этого избежать, сначала решите, как строка Excel будет находить уже существующую карточку. Проверьте правило на нескольких товарах в тестовой базе, затем загрузите тот же файл повторно: новых дублей появиться не должно.
Разберём штатную загрузку из Excel в УНФ 3.0, в тонком клиенте Windows. Механизм и сохранение соответствий колонок описаны в выпуске УНФ 3.0.9.89. Используем его как ориентир по возможностям. Обновлять или откатывать программу до этого релиза не нужно; маршрут к мастеру и доступные поля уточните в справке своей версии.
Что загружается в этом примере
В примере заполняем только справочник товаров. Остатки, цены, долги и документы поступления — отдельные задачи. Поэтому колонку «Количество» рядом с наименованием сейчас загружать не будем, даже если мастер это предлагает.
Сначала сохраните резервную копию и подготовьте тестовую базу. Для выполнения понадобятся права на создание или изменение номенклатуры и чтение справочников, используемых при сопоставлении. Администратор должен подтвердить доступ; загрузка под другой учётной записью не должна становиться способом обойти ограничения.
Договоритесь, кто отвечает за справочник. Этот сотрудник поможет разобраться с похожими товарами, единицами измерения и переименованиями. Автоматическое совпадение — повод проверить карточку, а не готовое решение.
Подготовьте колонки и значения
Для примера используем артикул, наименование и единицу. В конкретной базе могут понадобиться дополнительные поля, например вид номенклатуры; обязательность проверяйте по карточке и мастеру. По артикулу удобно искать товар, но в конкретной базе он может повторяться.
L-001
- Наименование: Лампа настольная белая
- Единица: шт
- Ожидаемое действие: Найти существующую карточку
L-002
- Наименование: Лампа настольная чёрная
- Единица: шт
- Ожидаемое действие: Создать новый товар
L-003
- Наименование: Лампа настольная белая
- Единица: шт
- Ожидаемое действие: Создать другой товар после проверки различий
L-001
- Наименование: Лампа настольная белая
- Единица: упак
- Ожидаемое действие: Остановить и выяснить расхождение
В учебном примере L-001 и L-003 названы одинаково. Это могут быть разные модели, производители или комплектации — нужно проверить. А последняя строка с L-001 в упаковках может относиться к уже существующему товару. Создавать по ней ещё одну карточку без уточнения не стоит.
Проверьте артикулы как текст, включая ведущие нули. Для единиц измерения согласуйте обозначения с используемым справочником. «Штука», «шт» и упаковка из десяти штук нельзя произвольно смешивать. Уберите из названия служебные пометки, которые не должны попасть в карточку, но не удаляйте значимые отличия модели.
Определите правила поиска
Посмотрите, как заполнен справочник в самой 1С. Если один артикул встречается у разных производителей, поиска только по артикулу не хватит. Добавьте согласованный признак или отправляйте такие строки на ручную проверку.
Для каждой строки возможны три результата: найдена одна подходящая карточка, не найдено ни одной или найдено несколько. В первом случае проверяем соответствие, во втором — создаём товар по согласованным правилам, в третьем — просим сотрудника выбрать. Первый элемент списка не обязательно правильный.
Уточните, какие поля разрешено обновлять у найденной карточки. Переименование товара и создание нового элемента — разные операции. Если требуется исключительно добавление новых позиций, существующие карточки должны остаться неизменными. Поведение мастера нужно проверить, а не считать его очевидным по названию кнопки.
Проверьте соответствия в мастере
Откройте штатный механизм загрузки данных из Excel для номенклатуры. Если команда не найдена в списке справочника, используйте встроенную справку именно вашей УНФ, а не путь меню другой конфигурации. Не запускайте произвольную внешнюю обработку вместо штатного мастера без отдельной проверки.
Выберите файл и рабочую таблицу. Сопоставьте колонки с полями номенклатуры, исключите заголовок и посторонние строки. Автоматически предложенные соответствия обязательно проверьте: колонка с кодом поставщика не должна случайно стать внутренним кодом справочника.
Проверьте, по каким полям мастер ищет товары и какие карточки собирается создать. Если правила не видны в интерфейсе, разберите пробную загрузку со специалистом. Пока способ поиска непонятен, переходить ко всему файлу рано.
Начните с трёх товаров
Используйте три согласованные строки из примера: один известный товар и две новые позиции. Строку с конфликтующей единицей пока не загружайте. До запуска запишите количество выбранных карточек и значения контрольного существующего элемента.
После загрузки найдите все три позиции. В нашем примере должны появиться два новых товара, а L-001 — остаться одной карточкой. Сверьте наименование, артикул, единицу и другие обязательные поля.
Теперь загрузите тот же файл ещё раз. При выбранном правиле поиска новых карточек не будет. Проверьте и старые поля: повтор мог незаметно изменить их значения. Если появились дубли или нежелательные изменения, поправьте настройки и повторите тест.
Что делать с ошибками и рабочей загрузкой
При частичном выполнении сначала определите, какие строки уже обработаны. Повтор всего файла с другим поиском способен увеличить число дублей. Не удаляйте массово созданные карточки, пока не проверены ссылки из документов. В тестовой базе проще вернуться к сохранённой исходной точке и повторить эксперимент с исправленными настройками.
Для рабочей загрузки возьмите тот же проверенный файл и настройки. Не меняйте одновременно колонки, единицы и правила поиска. После запуска сохраните итог: сколько строк было в файле, сколько товаров нашлось, сколько создалось и что пришлось разбирать вручную.
Если загрузка нужна регулярно и простого поиска не хватает, опишите правила сопоставления и повторного запуска в техническом задании. С ним можно обсудить доработку загрузки с DeltaC.