Граница материала

Здесь порядок решений и сценарии приёмки. Названия механизмов и состав типовых обменов у разных конфигураций и версий отличаются, поэтому конкретные настройки сверяют с документацией своих версий.

Какие бывают обмены

Под «настройкой обмена» люди имеют в виду четыре разные задачи, и путаница между ними портит половину таких проектов. Способ, срок и цена у них отличаются в разы.

Тип обменаТипичная параЧто обычно передаётся
Между базами 1СУправление торговлей и Бухгалтерия, ERP и Розница, ЗУП и БухгалтерияСправочники, документы, взаиморасчёты, проводки
С сайтом или магазиномИнтернет-магазин и УТ или РозницаКаталог, цены, остатки в одну сторону, заказы и оплаты в другую
С внешними системамиМаркетплейсы, банк, ЭДО, маркировкаЗаказы, выписки, документы, коды
Распределённая база (РИБ)Центральная база и базы филиалов или точекОдна конфигурация и общие данные с разделением по узлам

Обмен с сайтом отличается сильнее всего. Там участвует система, которая живёт по своим правилам, и вопрос «кто хозяин цены» становится скорее организационным, чем техническим. Про эту разновидность у меня есть отдельные разборы: как связать интернет-магазин с 1С и что подготовить до начала.

Синхронизация или правила переноса

Первая развилка, и проходить её надо в правильном порядке. Сначала проверяем типовой механизм, и только если он не подходит, пишем правила.

  • Типовая синхронизация — работает, когда обе конфигурации типовые и версии совместимы. Состав данных уже задан, настройка сводится к выбору параметров и отборов. Самый дешёвый и самый надёжный вариант: механизм поддерживает разработчик конфигурации.
  • Правила переноса данных — нужны, если состав данных не совпадает с типовым, конфигурация изменена или пара баз нетиповая. Правила дают полную свободу и полную ответственность: их придётся сопровождать при каждом серьёзном обновлении.
  • Обмен через файлы или каталог — подходит, когда прямого сетевого доступа между базами нет. Организовать проще, но задержка больше, и сбои замечают позже.
  • Прямое подключение или веб-сервисы — быстрее и позволяет обмен по событию, но нужен сетевой доступ, учётные записи и внимание к правам.
Если написать правила переноса там, где хватало типовой синхронизации, платить придётся дважды: при внедрении и потом при каждом обновлении.

Что решить до настройки

Эти пять вопросов определяют и способ, и трудоёмкость. Если ответов нет, обмен настроят «как понял исполнитель», а расхождения обнаружатся в отчётности.

  1. Состав данных. Что именно передаём: номенклатуру, контрагентов, документы, остатки, цены, оплаты. Списком, а не словами «всё нужное».
  2. Направление. По каждому виду данных отдельно: в одну сторону или в обе.
  3. Кто хозяин данных. Об этом ниже, это самый важный пункт.
  4. Частота. Какая задержка допустима. Остаткам для магазина и ценам для сайта нужна разная частота: раз в сутки для одного нормально, для другого недопустимо.
  5. Что делать при конфликте. Когда один объект поправили с двух сторон между обменами.

Кто хозяин данных

Почти все долгие проблемы с обменом сводятся к одному. Для какого-то справочника не договорились, кто им управляет, и обе системы считают свою версию правильной.

Выглядит это так. Менеджер поправил наименование товара в торговой базе, кладовщик поправил его же в складской. Обмен прошёл в обе стороны, и теперь в обеих базах то значение, которое записалось последним. Никто ничего не ломал, но данные разошлись, а найти момент расхождения нельзя: оба изменения законные.

Решение здесь скорее управленческое. По каждому виду данных выбирают одну систему, где их правят, а во второй они доступны только для чтения. Один раз составленная таблица «данные, хозяин, направление» экономит месяцы разбирательств.

ДанныеКто обычно хозяинПочему
НоменклатураУчётная базаТам заводят карточки, характеристики и единицы измерения
ЦеныСистема, где ведут ценообразованиеИначе скидки и виды цен разъезжаются между каналами
ОстаткиСкладской учётТолько он знает фактическое движение
Заказы клиентовКанал приёма: сайт или магазинТам заказ появляется, дальше он только двигается по статусам

Такое распределение я предлагаю как отправную точку. В конкретной компании оно может быть другим, и это нормально. Важно, чтобы вариант был выбран и записан.

Где обмены ломаются

  • Дубли при первом обмене — самая частая и самая дорогая ошибка. Справочники не сопоставили заранее, обмен не нашёл соответствий и создал новые элементы. Сопоставляют по устойчивому признаку: коду, артикулу, ИНН. По наименованию сопоставлять не стоит, оно в двух базах почти никогда не совпадает буква в букву. Отдельно про этот механизм: почему дублируются заказы в 1С.
  • Разные единицы измерения — в одной базе штуки, в другой упаковки. Обмен проходит без ошибок, а количества расходятся кратно.
  • Обновили одну из баз — после обновления конфигурации правила переноса могут ссылаться на изменённые объекты. Типовая синхронизация переживает обновления заметно легче, и это ещё один аргумент в её пользу.
  • Правят с двух сторон — это как раз следствие того, что хозяина данных не назначили.
  • Обмен встал, и никто не заметил — об этом ниже отдельно.
  • Права и учётные записи — обмен работал, пока не сменили пароль служебной учётной записи или не поправили права. Выглядит как поломка обмена, хотя его настройки никто не менял.

Как узнать, что обмен встал

Остановившийся обмен видно далеко не сразу. Всё продолжает работать, просто данные постепенно перестают совпадать. Обычно это замечают при сверке или по жалобе клиента, то есть через недели.

Минимальный контроль

  • Уведомление о сбое приходит человеку, а не остаётся в журнале.
  • Видно дату и время последнего успешного обмена, причём сотруднику, а не только администратору.
  • Обмен можно повторить самому, без вызова специалиста.
  • Понятно, что делать при сбое: кому написать и что приложить.

Обмен без этих четырёх пунктов правильнее считать ненастроенным, каким бы корректным ни было его содержимое.

Как принимать результат

Обмен нельзя принять по словам «настроено, работает». Его принимают по сценариям, и они одинаковы почти для любой пары баз.

Приёмочные сценарии

  • Согласованный пример уходит в нужную сторону и появляется в нужной системе.
  • Изменение данных у хозяина доезжает до второй системы.
  • Изменение на стороне не-хозяина не перезаписывает данные хозяина.
  • Повторная передача того же объекта не создаёт второй экземпляр.
  • Объект с незаполненным обязательным полем не создаёт половину документа.
  • Сбой обмена виден: пришло уведомление, понятно, что не передалось.
  • После восстановления связи накопленное уходит без потерь и без дублей.
Эти сценарии стоит согласовать до начала работ. Тогда «готово» становится проверяемым состоянием, а не мнением исполнителя.

Что прислать для оценки

  1. Названия и версии обеих конфигураций, типовые они или изменённые.
  2. Файловые базы или клиент-серверные, есть ли между ними сетевой доступ.
  3. Перечень данных для передачи и направление по каждому виду.
  4. Допустимая задержка: минуты, часы или раз в сутки.
  5. Есть ли уже настроенный обмен, который работает неправильно.

С этими пятью пунктами оценка занимает один разбор. Без них любая цифра будет вилкой в несколько раз.

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

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

Синхронизация встроена в типовые конфигурации: состав данных уже задан, настройка сводится к выбору параметров. Правила переноса пишут, когда нужно передавать то, чего в типовом обмене нет, или когда конфигурация изменена.

Почему после первого обмена появились дубли справочников?

Элементы не сопоставили до запуска, обмен не нашёл соответствий и создал новые. Сопоставлять нужно заранее и по устойчивому признаку: коду, артикулу, ИНН, но не по наименованию.

Можно ли настроить двусторонний обмен по всем данным?

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

Как часто должен идти обмен?

По той задержке, которую бизнес готов терпеть. Остаткам для магазина и ценам для сайта нужна разная частота: раз в сутки для одного нормально, для другого недопустимо.

Обмен встал, и никто не заметил. Как этого избежать?

Нужны уведомление о сбое и видимая дата последнего успешного обмена. Без этого остановку замечают при сверке, то есть через недели.

Что прислать, чтобы оценить работу?

Версии обеих конфигураций, типовые они или изменённые, перечень данных и направление обмена, допустимую задержку и описание текущего обмена, если он уже есть.

Нужно настроить обмен между базами или с сайтом

Пришлите версии обеих конфигураций, перечень данных и допустимую задержку. Составлю таблицу «данные, хозяин, направление» и сценарии приёмки до начала работ.

Настройка и доработка 1С →