К статье
Практический материал

Справочники и Данные · 12 мин

Мэппинг в 1С: что это такое и как настроить сопоставление данных

Мэппинг в 1С — сопоставление данных между системами при обмене. Разбираем, где применяется, как настроить сопоставление номенклатуры, контрагентов и избежать дублей.

Мэппинг (от англ. mapping — «сопоставление») в 1С — это процесс установления соответствия между объектами двух разных систем: вашей информационной базы и внешнего источника данных. Проще говоря, программа «объясняет» 1С, что товар «Смартфон X100 черный» из интернет-магазина — это та же номенклатура, что и «Телефон X100 128GB Black» в справочнике 1С, а контрагент «ООО Ромашка» из банковской выписки — это «Ромашка, ООО» в вашей базе.

Без мэппинга любой обмен данными превращается в хаос: при загрузке заказов с сайта создаются дубли номенклатуры, при импорте выписок плодятся одинаковые контрагенты с разным написанием, а отчеты перестают сходиться. Сопоставление — обязательный этап практически любой интеграции: с сайтом, маркетплейсами, банком, ЭДО, CRM или другой базой 1С.

Термин используется в двух смыслах. В узком — это интерактивный этап загрузки, когда пользователь вручную или полуавтоматически сопоставляет строки файла с элементами справочников. В широком — это вообще правила соответствия полей и объектов при конвертации данных, включая настройки в «Конвертации данных 2.1/3.0», правила обмена и схемы XDTO.

Где в 1С встречается мэппинг

Механизмы сопоставления встроены во многие типовые сценарии. Знание того, где они находятся, экономит часы на разборе «странных» дублей после обмена.

  • Обмен с сайтом (CommerceML). При загрузке заказов и каталога товаров 1С сопоставляет номенклатуру по наименованию, артикулу или идентификатору из файла обмена.
  • Клиент-банк и «ДиректБанк». Загрузка выписок: контрагенты ищутся по ИНН и номеру счета, договоры — по номеру, назначение платежа разбирается по правилам.
  • ЭДО. При получении электронных документов сопоставляются контрагенты (по ИНН/КПП) и номенклатура поставщика с вашей номенклатурой.
  • Маркетплейсы (Ozon, Wildberries, Яндекс Маркет). Через типовые и отраслевые решения товары площадки привязываются к карточкам номенклатуры по SKU, штрихкоду или артикулу.
  • Синхронизация между базами 1С. Например, «Управление торговлей» ↔ «Бухгалтерия»: сопоставление справочников при первоначальной настройке обмена.
  • Загрузка данных из табличных документов. Обработка «Загрузка данных из файла» в БСП-конфигурациях — классический пример ручного мэппинга колонок Excel на реквизиты 1С.

Как работает сопоставление: ключи и приоритеты

Любой мэппинг строится вокруг ключей поиска — полей, по которым программа пытается найти существующий объект. Типичные ключи: ИНН + КПП для контрагентов, артикул, штрихкод или GUID для номенклатуры, номер и дата для документов. Чем уникальнее ключ, тем надежнее сопоставление.

Поиск обычно идет по цепочке приоритетов. Например, при загрузке выписки 1С сначала ищет контрагента по ИНН и номеру счета, затем только по ИНН, затем по наименованию. Если ничего не найдено — предлагает создать новый элемент или сопоставить вручную. Понимание этой логики помогает объяснить, почему программа «не нашла» очевидного, на ваш взгляд, контрагента: например, в базе у него не заполнен ИНН или указан с пробелом.

Результат сопоставления, как правило, запоминается. В регистрах сведений (например, «Соответствия объектов информационных баз» при синхронизации или «Номенклатура контрагентов» в ЭДО) сохраняется связь «внешний идентификатор → объект 1С». При следующем обмене программа использует готовую связь и не спрашивает повторно.

После обмена появляются дубли номенклатурыСопоставление не сработало

Проверить, совпадают ли артикулы/штрихкоды в базе и в файле

Контрагенты создаются зановоНе найден ключ поиска

Проверить заполненность ИНН у существующих контрагентов

Документы привязываются не к тому договоруНеверный приоритет поиска

Проверить номера договоров и настройки обмена

Часть строк файла не загружаетсяНет сопоставления и нет правила создания

Открыть форму сопоставления и обработать строки вручную

Ручной мэппинг при загрузке данных

Наиболее наглядный пример — обработка «Загрузка данных из файла», доступная в большинстве типовых конфигураций (меню раздела справочника → «Загрузить данные из файла» или аналог). Она позволяет перенести данные из Excel или CSV без программирования.

Процесс состоит из двух этапов сопоставления. Сначала вы мэппите колонки файла на реквизиты 1С: указываете, что колонка «Артикул» — это реквизит «Артикул», а «Цена продажи» — это цена. Затем программа сопоставляет значения: ищет существующие элементы по ключевым полям и показывает, что будет создано новым, а что обновлено.

Порядок загрузки номенклатуры из файла
  1. 1
    Откройте справочник «Номенклатура» и выберите «Загрузить данные из файла»
  2. 2
    Выберите файл Excel/CSV и дождитесь предпросмотра
  3. 3
    Сопоставьте колонки файла с реквизитами справочника (наименование, артикул, единица измерения)
  4. 4
    Отметьте ключевые поля для поиска дублей — обычно артикул или штрихкод
  5. 5
    Проверьте таблицу сопоставления: какие строки будут обновлены, какие созданы
  6. 6
    Запустите загрузку и проверьте результат поиском по справочнику

Критически важный момент — выбор ключевых полей. Если сопоставлять по наименованию, любое расхождение в пробеле или регистре создаст дубль. Артикул и штрихкод надежнее, но только если они действительно заполнены и уникальны в обеих системах.

Мэппинг при синхронизации баз 1С

При настройке обмена между двумя конфигурациями (например, УТ и БП) первый запуск почти всегда включает этап сопоставления данных. Программа показывает список объектов, которые есть в обеих базах, но еще не связаны: номенклатуру, контрагентов, организации, склады.

Автоматическое сопоставление выполняется по кнопке и использует заданные поля поиска. После него обязательно просмотрите результат: автоматика могла связать разных контрагентов с похожими названиями или, наоборот, не связать одного и того же из-за разного написания. Неоднозначные строки сопоставляются вручную двойным щелчком — вы выбираете, какому объекту из другой базы соответствует текущий.

Связи сохраняются в регистре соответствия и используются при всех последующих сеансах обмена. Поэтому ошибка, допущенная на этапе первоначального мэппинга, будет воспроизводиться постоянно: документы будут уходить «не тому» контрагенту снова и снова, пока связь не исправят вручную.

Мэппинг в правилах конвертации и коде

Для нестандартных обменов сопоставление описывается в правилах конвертации данных (КД 2.1/3.0) или реализуется кодом. Здесь мэппинг — это уже не интерактивное действие, а формальные правила: какое поле источника в какое поле приемника пишется, по каким полям ищется объект, что делать, если объект не найден (создать, пропустить, выдать ошибку).

В «1С:Конвертация данных» соответствие объектов задается через правила конвертации объектов (ПКО) и правила поиска. Для планов обмена существует стандартный механизм регистрации соответствий, который и хранит пары «узел-источник ↔ объект-приемник».

При программной реализации типовой прием — искать объект по нескольким критериям последовательно и только потом создавать новый:

// Поиск контрагента: сначала по ИНН+КПП, затем только по ИНН

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ ПЕРВЫЕ 1 Ссылка

|ИЗ Справочник.Контрагенты

|ГДЕ ИНН = &ИНН И КПП = &КПП";

Запрос.УстановитьПараметр("ИНН", СокрЛП(ДанныеФайла.ИНН));

Запрос.УстановитьПараметр("КПП", СокрЛП(ДанныеФайла.КПП));

Результат = Запрос.Выполнить();

Если Результат.Пустой() Тогда

// повторный поиск только по ИНН или создание нового

КонецЕсли;

Типичные ошибки и как их избежать

Типичные ошибки
01
Сопоставление по наименованию — малейшее различие в написании создает дубль; используйте артикул, штрихкод, ИНН
02
Не заполнены ключевые поля в базе — автопоиск не находит существующие элементы; сначала проведите нормализацию справочников
03
Исправление дублей вручную без чистки регистра соответствий — связь остается и ошибка повторяется при следующем обмене
04
Первый обмен сразу на полном объеме — сотни ошибочных связей; начинайте с тестовой выборки
05
Игнорирование отчета о сопоставлении — незамеченные автоматические связи «не тех» объектов портят отчетность

Отдельная ловушка — дубли, которые уже созданы. Их недостаточно пометить на удаление: нужно объединить дубли (в типовых конфигурациях есть обработка «Поиск и удаление дублей» / «Объединение дублей»), чтобы документы и остатки перепривязались к правильному элементу, а затем проверить и при необходимости очистить записи соответствий.

Контрольные точки

Как проверить результат мэппинга

Количество элементов справочника до и после загрузки
Норма

Прирост соответствует числу действительно новых объектов

Тревожный признак

Появились десятки новых элементов при повторной загрузке того же файла

Контрагенты в загруженных документах
Норма

Подставлены существующие контрагенты с заполненным ИНН

Тревожный признак

Созданы новые контрагенты-дубли с похожими названиями

Повторная загрузка того же файла
Норма

Программа находит все объекты, новых не создает

Тревожный признак

Часть строк снова предлагается создать

Отчеты по остаткам и взаиморасчетам
Норма

Данные сходятся с источником

Тревожный признак

Расхождения из-за раздвоения номенклатуры или контрагентов

Когда стоит привлечь специалиста

Самостоятельно можно безопасно выполнять мэппинг через типовые обработки загрузки и настройку синхронизации между типовыми конфигурациями — при условии резервной копии и теста на малом объеме. Это покрывает большинство задач: загрузка прайсов, старт обмена УТ↔БП, подключение банка.

Помощь разработчика понадобится, если обмен нестандартный (самописная выгрузка, редкая CRM), нужна настройка «Конвертации данных», требуется исправить последствия массового ошибочного мэппинга или объем данных настолько велик, что ручное сопоставление нереально. В этих случаях цена ошибки — испорченная отчетность и часы на восстановление — обычно выше стоимости настройки.

Итог

Что важно запомнить

Мэппинг — это сопоставление объектов вашей базы 1С с данными внешних систем. Его надежность определяется ключами поиска (ИНН, артикул, штрихкод), а не названиями. Всегда проверяйте результат автоматического сопоставления, начинайте с тестового объема и делайте резервную копию перед первым обменом.

Частые вопросы

Чем мэппинг отличается от синхронизации?

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

Почему 1С создает дубли контрагентов при загрузке выписок?

Чаще всего потому, что у существующего контрагента в базе не заполнен ИНН, заполнен с пробелами или отличается КПП. Программа ищет по ключевым полям, не находит совпадения и создает новый элемент. Решение — заполнить ИНН у существующих контрагентов, а дубли объединить штатной обработкой поиска дублей.

Можно ли отменить ошибочное сопоставление?

Да, но способ зависит от механизма. При синхронизации баз соответствия хранятся в регистре сведений соответствия объектов — ошибочную запись можно удалить или заменить, после чего пересопоставить объект. Если ошибка уже привела к созданию дублей, сначала объедините дубли, затем исправьте связь.

Что лучше использовать как ключ сопоставления номенклатуры?

Наиболее надежны штрихкод и уникальный артикул поставщика, если они стабильно заполнены в обеих системах. Наименование — худший вариант из-за различий в написании. При обмене между базами 1С часто используется внутренний уникальный идентификатор (GUID), но он работает только если базы изначально связаны.

Нужно ли программировать для настройки мэппинга?

Для типовых сценариев — нет: загрузка из файла, клиент-банк, ЭДО и синхронизация типовых конфигураций настраиваются через интерфейс без кода. Программирование требуется для нестандартных форматов обмена, сложных правил поиска и доработки типовых правил конвертации.

Как проверить мэппинг перед боевой загрузкой?

Сделайте копию базы или используйте тестовую, загрузите небольшой фрагмент данных (10–30 строк), внимательно изучите таблицу сопоставления: какие объекты найдены, какие будут созданы. Затем загрузите тот же файл повторно — если программа предлагает создать элементы заново, ключи поиска настроены неверно.