Top.Mail.Ru
image: mail
Попробуйте первые 14 дней бесплатно

Начать бесплатно
+

Модуль 1С. Настройка синхронизации

Разработчику

Настройка синхронизации 1С и Клиентской базы


В настройках модуля 1С мы видим три вкладки:

  • Общие
  • Конфигурация
  • Ошибки

photo

Общие

В первой вкладке “Общие” можно увидеть статус синхронизации на текущий момент и общие настройки модуля:

Адрес – адрес, по которому программа 1С обращается к КБ для синхронизации данных. Данный адрес необходимо указать в настройках 1С.

Токен – данный токен необходим для авторизации запросов программы 1С при синхронизации. Для синхронизации необходимо указать данный токен в настройках 1С. При необходимости его можно обновить, нажав на кнопку справа от него.

Режим работы – Указывает каким образом должна работать синхронизация: односторонняя в 1С - данные записываются только в 1С; одностороннаяя в КБ - данные записываются только в КБ; двустороняя - данные обновляются как в КБ, так и в 1С. Данная настройка является общей и будет влиять на то, какие настройки будут задаваться для конкретных полей и таблиц при их добавлении во вкладке Конфигурация.

Строгий режим 

Структура – в данной настройке будет указано, когда в КБ пришла структура 1С (таблицы и поля), при необходимости ее можно обновить, нажав на кнопку справа.

Уведомления администраторам – данная настройка отвечает на уведомления администраторам программы об ошибках синхронизации. 

Конфигурация

Основной раздел настроек модуля. Здесь производится сопоставление таблиц и полей 1С и Клиентской базы. В левой колонке расположены таблицы 1С, в правой – КБ.

photo

Ошибки

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

photo

Сопоставление таблиц

Для корректной синхронизации сопоставление таблиц начинается со справочников. В КБ это все таблицы, участвующие в полях связи в тех таблицах, которые вы хотите засинхронизировать.

Например, вы хотите засинхронизировать таблицу Контрагенты. В ней есть поля связи на таблицы Сотрудники, Страны мира, Наша компания, Банковские счета и др. То есть начинать сопоставление и синхронизацию необходимо с них.

Рассмотрим настройку сопоставления таблицы.

Для этого заходим в настройки модуля и открываем вкладку «Конфигурация». Нажимаем кнопку Добавить таблицу.

photo

В левом столбце выбираем таблицу 1С, в правом – КБ. Обратите внимание, что названия таблиц в структуре 1С могут отличаться от названий, которые мы видим в интерфейсе 1С.

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

photo

Обратите внимание! Отредактировать сопоставленную пару таблиц невозможно. Если сопоставление настроено неверно или потеряло актуальность, пару таблиц можно удалить, нажав на красный крестик слева от нее.

photo

Сопоставление полей

После добавления пары таблиц ниже вы увидите новый блок для сопоставления полей. Оно осуществляется аналогичным образом, как и добавление пары таблиц: в левом столбце выбирается поле 1С, в правом – КБ. После выбора нужных полей необходимо нажать на зеленую стрелку справа для сохранения.

Слева от пары полей расположены стрелки, отвечающие за направление синхронизации:

  • две стрелки – синхронизация двусторонняя
  • одна оранжевая стрелка –  односторонняя синхронизация из 1С в КБ
  • одна зеленая стрелка –  односторонняя синхронизация из КБ в 1С
  • две серые стрелки – синхронизация по данному полю выключена.
  • photo

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

    Обратите внимание! Отредактировать сопоставленную пару полей невозможно. Если она настроена неверно или потеряла актуальность, ее можно удалить нажав на красный крестик слева от нее.

    Настройка правил сопоставления

    При первичной синхронизации данных 1С и КБ часто случается такое, что и там, и там уже существуют одинаковые записи. Для того чтобы после синхронизации у нас не происходило дублирование этих записей, необходимо, чтобы они “сопоставлялись” при синхронизации. Для этого и был разработан механизм сопоставления. 

    Когда срабатывает данный механизм?

    Представим ситуацию: из 1С в КБ приходит запись для синхронизации. Первоначально проиходит проверка, есть ли запись с таким GUID’ом (идентификационным полем, то же самое, что ID в КБ). Если запись с таким GUID’ом есть, то происходит обновление этой записи, нас же интересует другой вариант. Другой вариант – когда запись с данным GUID’ом не найдена. Когда запись не найдена, то начинает выполняться механизм сопоставления. Если после выполнения сопоставления не было найдено ни одной записи, происходит вставка данной записи в КБ.

    Суть механизма

    Механизм сопоставления записей работает по правилам сопоставлений, настроенных в интерфейсе конфигурации синхронизации. Правила сопоставления  это блоки (один или несколько) с сопоставлениями полей. Блок считается сработавшим и запись найденной, если GUID записи в КБ не присвоен никакому значению, то есть NULL, и значение указанных полей 1С равны значениям соответствующих им полей КБ (по правилу/блоку). Более наглядно рассмотрим на примере, предположим, синхронизация настроена следующим образом:

    photo

    Здесь мы видим блок правил 1, в котором поле ИНН 1С сопоставлено с полем ОКПО КБ. То сть если в КБ придёт запись с GUID’ом, которого нет в КБ, запустится механизм сопоставления. По этому механизму найдутся все записи КБ, у которых поле GUID равно пустому значению (NULL). И произойдёт сравнение по каждой найденной записи с пришедшей. Будет сравниваться поле ИНН пришедшей записи от 1С и поле ОКПО каждой найденной записи. Если у какой-либо записи они совпадут, значит найдена та запись, которая нам подходит и которую следует обновлять. При нахождении нескольких подходящих записей, произойдёт ошибка, которая отобразится в интерфейсе синхронизации, где будет предложено выбрать, какую из найденных записей считать истинной. 

    Фильтры

    Фильтр у таблиц сделан для того, чтобы отбирать только те записи, которые мы хотим, чтобы уходили из КБ в 1С.

    photo

    Фильтр выбираем из тех, которые есть у синхронизируемой (со стороны КБ) таблицы. То есть мы в настройках синхронизируемой таблицы создаём в привычном режиме фильтр, а потом в настройках синхронизации уже привязываем его. Единственное ограничение - невозможность использование паттерна {текущий}, {текущий пользователь} у полей типа пользователь и {текущая группа} у полей типа группа. Если данные паттерны используются в фильтре, при применении фильтра они будут автоматически отрезаны (условия с данными паттернами) и в теории данный фильтр будет вести себя не так, как задумывалось изначально, поэтому желательно создавать фильтры для синхронизации изначально без них.

    photo

    Замена значений

    Механизм замены значений предусмотрен в синхронизации, когда случаются ситуации, что значение поля 1С и КБ имеют одну суть, но при этом имеют разное написание. Например: ЮридическоеЛицо – в 1С и Юридическое лицо – в КБ. Настраивается это следующим образом:

    photo

    Левое поле отвечает за значения 1С, а правое за значения КБ. То есть если из 1С приходит запись, у которой поле Наименование имеет значение  “Привет”, то перед сохранением в КБ, это значение заменится на “Hello”. Аналогично для последующих значений (“Как дела?” заменится на “How are you?”) и в обратную сторону, то есть перед тем как отправить запись в 1С, если поле Название в КБ будет с значением “Hello”, то это значение заменится на “Привет”, и уже с таким значением данного поля запись уйдёт в 1С.

    Сопоставление подтаблиц

    В КБ имеется такая сущность, как подтаблица. К примеру, в счете есть позиции счета, которые должны синхронизироваться вместе с ним. Этот механизм так же предусмотрен модулем.

    При добавлении пары полей, если пролистнуть список до конца, вы увидите доступные для синхронизации подтаблицы, их необходимо сопоставить таким же образом, как и таблицы. Такие пары подтаблиц справа будут отмечены значком «ТЧ» (табличная часть). После сохранения ниже появится блок для сопоставления полей подтаблицы, которое осуществляется так же, как сопоставление полей таблицы.

    photo

    Ошибки синхронизации

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

    photo

    Для её решения нужно выбрать, какую запись считать истинной, и нажать кнопку “Исправить”, либо просто удалить ошибку.

    Следующая ошибка - “Несколько объектов сопоставления”.

    photo

    Здесь необходимо выбрать ID той записи, которую нужно считать истинной, либо так же просто удалить ошибку.

    Во всех остальных типах ошибок действия одинаковы, различается лишь текст:

    photo

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



    + сегодня

    компаний проявили интерес к нашему продукту!
    Узнайте, почему.

    • компания
    • компании
    • компаний
    • выбрала
    • выбрали
    • выбрали

    Создание аккаунтов временно приостановлено!

    По данному функционалу ведутся технические работы, будем рады Вас видеть через некоторое время

    Объедините всю информацию
    компании в единой базе

    Подключайте сотрудников
    и управляйте их доступом

    Создавайте собственные
    таблицы и отчеты

    Выписывайте счета
    и создавайте собственные
    шаблоны документов

    Проводите персонализированные
    E-mail и SMS рассылки

    Создавайте собственные
    напоминания

    Ведите учет событий
    в календаре

    Не волнуйтесь о безопасности,
    все данные защищены

    Проводите поиск
    по любым параметрам
    и фильтрам

    Интегрируйтесь с сайтом
    и получайте заявки прямо в базу

    До начала работы
    осталось совсем чуть-чуть!