1с бсп обмен данными

Обновлено: 04.07.2024

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

Но если по каким-то причинам, необходимо настроить обмен данными между системами, в каждой из которых уже есть данные, возникает необходимость сопоставления данных в этих системах при первом обмене. Если данные не будут корректно сопоставлены, велика вероятность появления дублей в одной из систем, или в обеих.

2. Подготовка данных перед настройкой обмена данными

Перед тем как приступить к настройке обмена данными и сопоставлению данных в интегрируемых системах необходимо выполнить анализ и исправление ошибок в объектах данных участвующих в обмене:

· удалить дубли в справочниках обеих систем, например, с помощью стандартной обработки поиска и замены дублей;

· заполнить при необходимости ключевые реквизиты, по которым будет выполнено сопоставление данных (например, для справочника «Контрагенты» ключевыми являются реквизиты ИНН и КПП).

3. Начальная выгрузка данных в 1С 8.3

При настройке любого типового обмена система предлагает выполнить этап первоначальной выгрузки данных в 1С 8.3.

Рис. 1 Начальная выгрузка данных в 1С 8.3

Начальная выгрузка данных подразумевает выгрузку всех объектов, участвующих в настраиваемом обмене данными в 1С 8.3. Тут нужно обратить внимание на некоторые моменты.

· Предполагаемый объем данных, участвующих в обмене. Например, если в обеих базах стотысячный справочник контрагентов, договоров, номенклатуры, то выгрузка и анализ данных в системе-корреспонденте будет выполняться очень долго. Возможно, есть смысл отказаться от первоначальной выгрузки данных (просто закрыть окно настройки обмена), регистрировать данные к обмену в 1С 8 самостоятельно, и частями отправлять данные в систему корреспондент, часть из них сопоставляя в ручном режиме, часть – в автоматическом;

· Какие НСИ участвующие в обмене, в какой из баз заполнены более корректно? Есть вероятность, что часть данных удобнее выгрузить к сопоставлению из одной системы, а часть из другой.

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



Рис. 2 1С 8.3 – Выгрузка данных для сопоставления

Система предложит выбрать вариант выгрузки данных, а после нажатия на кнопку «Далее» – зарегистрирует к обмену и выгрузит объекты всех типов данных участвующих в обмене.



Рис. 3 Окно 1С 8.3 Выгрузка данных для сопоставления

4. Сопоставление данных в 1С

Если был выбран метод сопоставления данных, предложенный системой по умолчанию – начальная выгрузка данных, либо при первом получении данных обменом (зависит от конфигурации и версии синхронизируемых систем), программа автоматически запускает режим сопоставления данных.

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



Рис. 4 Запуск синхронизации с сопоставлением данных в 1С

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



Рис. 5 Окно сопоставления данных в 1С

Таблица результата сопоставления данных содержит следующие колонки:

· Данные, всего принято, шт. – в колонке отображается наименование типа данных и количество объектов полученных с обменом из программы корреспондента;

· В этой программе – выводится количество данных указанного типа в текущей программе;

· Осталось – количество объектов, которые не удалось сопоставить;

· % - процент сопоставленных данных указанного типа.

Двойной клик по строке таблицы сопоставления открывает окно сопоставления объектов определенного типа данных.



Рис. 6 Сопоставление данных конкретного типа при обмене данными в 1С 8.3

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

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

Кнопки формы позволяют установить соответствие объектов (Рис.7_, отменить соответствие, если оно было установлено некорректно, а также сопоставить объекты автоматически, изменив поля для сопоставления объектов данных по умолчанию (Рис. 8).



Рис. 7 Установка соответствия между объектами при обмене данными в 1С 8.3

Рис. 8 Изменение полей сопоставления объектов данных

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

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

Пример. Выполняется обмен данными 1С:Бухгалтерия предприятия (БП) и 1С:Зарплата и управление персоналом (ЗУП). В справочнике Организации БП есть элемент с наименованием «ООО Крон-ц». В справочнике Организации ЗУП есть элемент с наименованием «ООО Крон-Центр». Полями поиска при сопоставлении данных являются поля Наименование, ИНН. Выгружаем данные из ЗУП в БП. Допустим, ИНН совпадает, но так как наименование отличается, объекты не будут сопоставлены. Выполним ручное сопоставление объектов и завершим обмен данными. В результате наименование организации в БП будет обновлено из соответствующего поля в ЗУП и в обеих системах в качестве наименования организации будет установлено «ООО Крон-Центр». Следует отметить, что правила обмена могут быть написаны таким образом, что реквизит хотя и участвует в обмене, но заполняется в систему-корреспондент, только если там не заполнено соответствующее поле. Но это скорее исключение, чем правило. Наиболее часто встречающийся вариант – это обновление всех реквизитов при обмене.

5. Принцип работы механизма сопоставления данных 1С при обмене

Рассмотрим, как устроен механизм сопоставления данных в 1С с технической точки зрения. Для сопоставления объектов данных разных систем обычно используется регистр сведений, содержащий информацию о сопоставленных объектах. При обмене по технологии «Конвертация данных 2» эта информация записывается в регистр сведений «Соответствие объектов информационных баз». Если обмен использует технологию «Конвертация данных 3» (Универсальный формат обмена данными EnterpriseData), то для этих целей служит регистр сведений «Публичные идентификаторы синхронизируемых объектов».

Структура этих регистров схожа. Каждый из них содержит следующие ключевые реквизиты:

· Узел информационной базы – это узел плана обмена системы корреспондента, в разрезе которого хранится информация об объектах обмена;

· Ссылка на объект (Уникальный идентификатор приемника) – Ссылка на объект в текущей системе;

· Уникальный идентификатор (Уникальный идентификатор источника) – Уникальный идентификатор объекта(GUID) в системе корреспонденте.

Возможные варианты поиска:

· по уникальному идентификатору;

· по полям поиска;

· сначала по уникальному идентификатору, потом – по полям поиска.

Выбор варианта зависит от конкретного объекта обмена данными. Но чаще всего используется вариант «Сначала по уникальному идентификатору, потом по полям поиска», так как он в наибольшей степени защищает системы, участвующие в обмене, от появления дублей.

При поиске по уникальному идентификатору:

· выполняется анализ регистра сопоставления данных (Например, «Публичные идентификаторы информационных систем»);

· выполняется попытка получения объекта по уникальному идентификатору.

При поиске по полям выполняется анализ реквизитов объекта. Список реквизитов поиска задается в правилах обмена данными для каждого типа объектов. Причем в правилах может быть указано несколько вариантов поиска по полям. Например, для справочника «Контрагенты» может выполняться поиск сначала по «ИНН + КПП + Наименование», а затем, если не удалось найти соответствия, по «ИНН + Наименование».

Столкнулся давеча с проблемой: необходимо реализовать обмен данными через ftp. Причём хотелось использовать механизм БСП, чтобы не городить свои велосипеды. Казалось бы, для этого стоит только почитать документацию с ИТС, но не всё так просто. Механизм БСП заточен на обмен XML по правилам обмена. Чтобы использовать его для любого другого обмена, коих в мире не мало, требуются доработки. В статье описан вариант, как из положения выйти (так сказать, и рыбку съесть и косточкой не подавиться и формат обмена использовать произвольный и стандартным механизмом нагло воспользоваться).

Ещё раз уточню. Здесь по сути нет инфы с ИТС, т.к. статья описывает использование механизмов БСП для произвольного обмена. Для обмена в формате XML по правилам обмена надо читать Какие возможности обмена БСП мы можем использовать:

Для начала стоит отметить, какие же такие типовые возможности я позарился использовать. Речь идёт о справочнике СценарииОбменовДанными.

Где можно прописать параметры обмена данными:

  • действие - выгрузка или загрузка
  • подключение - каталог или FTP или EMAIL или веб сервис или COM подключение (хранится это в РС "НастройкиТранспортаОбмена", значит нам не надо думать, где хранить эти данные)
  • расписание - расписание РЗ (значит не надо добавлять своё)

Вдобавок нам не надо создавать форму, на которой можно задавать все эти настройки и имеются доп. возможности:

  • выполнить сценарий обмена прямо сейчас
  • Открыть журнал регистрации с отбором по событию обмена

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

Какие требуются доработки:

1. Добавить План обмена. Даже если он не нужен. Ибо без него ничего не взлетит. Это требование БСП. В модуль менеджера добавить следующий код, скопировав из типовых или взяв с ИТС. Естественно добавив только те виды транспорта, которые могут использоваться в вашем обмене. На всякий случай укажу, что вид "FILE" - это обмен через каталог.

2. Переопределить механизм обмена БСП. Для этого нам любезно предназначен специальный ОМ ОбменДаннымиПереопределяемый. В зависимости от задачи, нам нужна одна из двух (или сразу обе) процедур этого ОМ - ПриЗагрузкеДанных или ПриВыгрузкеДанных. Для нового обмена в означенные процедуры необходимо добавить следующий текст:

Также в модуль добавляем блок методов УниверсальныйОбменДаннымиСПомощьюБСП

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

Ограничения, особенности использования нашего механизма:

  1. Для СОВОКУПНОСТИ (УЗЕЛ нашего ПО + выполняемое действие (загрузка или выгрузка)) можно задать только один сценарий. Если необходимо больше, то, на каждый новый сценарий надо создавать копированием узел ПО (на всякий случай уточню: в режиме предприятия), но для подавляющего большинства хватит и одного сценария (ведь возможность их множественности, это фича БСП).
  2. В папке обмена будет находиться один лишний файл или (в случае "2.в") придётся смириться с типовым именем файла. Но это тоже легко пережить =)
    1. а) Выгрузка. В папке выгрузки автоматом создаётся ненужный файл "Message_1_2.xml" с текстом "<Данные>Этот файл создаётся типовым механизмом обмена БСП. Его следует игнорировать. Можно удалять.</Данные>"
    2. б) Загрузка. В папку загрузки надо кинуть файл "Message_2_1.xml". Можно поместить в него следующий текст: "<Данные>ФАЙЛ НЕ УДАЛЯТЬ!! Без него него не будет работать механизм загрузки на БСП.</Данные>".
    3. в) Если выгрузка в ХМЛ, то можно обойтись без минусов 1 и 2, больше используя механизм БСП. Поскольку БСП как раз рассчитана именно на выгрузку в ХМЛ, то здесь лишних хлопот не требуется и мы можем прямо в ПриВыгрузкеДанных писать файл выгрузки (т.е. блок методов УниверсальныйОбменДаннымиСПомощьюБСП тут не нужен). Пример, как это сделать см в процедуре СоздатьФайлВыгрузкиЗаглушкуДляОбменаНаБСП. Но, у данного решения есть один недостаток: Имя файла генерирует БСП ("Message_1_2.xml", где "1" и "2" это коды узлов "откуда" и "куда" соответственно).

    Особенности использования механизма БСП:

    В предприятии надо создать два узла ПО, т.к. обмен с самим собой делать нельзя. Также обоим узлам надо задать Код, иначе обмен не взлетит. Данные проверки производятся в процедуре ОбменДаннымиСервер.ВыполнитьПроверкуСтруктурыОбменаНаВалидность.

    Инструкция для пользователей:

    В плане обмена создаём два узла. Узел Этой базы (у него на картинке зелёная точка справа внизу) и узел базы приёмника. Обязательно заполняем им код и наименование (для простоты можно назвать как на скрине «1» и «2»). Далее для обмена (выгрузки или загрузки) данными надо выбирать узел базы с которой идёт обмен, т.е. «2». Если выберем «1», то обмен проходить не будет а в ЖР появится запись «Нельзя организовать обмен данными с текущим узлом информационной базы. Обмен отменен.».


    Спр. «Сценарии синхронизации данных».

    Задаём имя сценария, добавляем строку настройки обмена в ТЧ.


    Настраиваем параметры подключения.


    После того, как всё настроено, можно настроить РЗ или выполнить обмен прямо сейчас.


    После выполнения обмена, можно посмотреть его лог в ЖР.


    ОпосляСкриптум:

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

    • Чтобы использовать механизм обмена данными БСП для произвольного обмена, нужно просто скопировать описанные процедуры. Всё. Дальше можно заняться собственно самими процедурами обмена.
    • Также представлена инструкция для пользователей.

    ИНТЕРЕСНЫХ ВАМ ЗАДАЧ, ПЛОДОТВОРНОЙ РАБОТЫ И ОРИГИНАЛЬНЫХ/ОПТИМАЛЬНЫХ РЕШЕНИЙ!!

    1С:Предприятие 8

    Стандартная библиотека
    Библиотека стандартных подсистем, редакция 3.0

    Версия 3.0.3

    Версия 3.0.3 является развитием редакции инструментария «1С:Библиотека стандартных подсистем», который предназначен для разработки конфигураций на платформе «1С:Предприятие» версии 8.3.12 и выше. При этом свойство конфигурации «Режим совместимости» должно быть установлено в «Не использовать» при разработке на версии 8.3.12 или в «Версия 8.3.12» при разработке на более старших версиях.

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

    Администрирование пользователей и прав доступа;

    Средства администрирования и обслуживания (установка обновлений, резервное копирование, дополнительные отчеты и обработки, оценка производительности и др.);

    Сервисные подсистемы (история изменений объектов, заметки и напоминания, печать, полнотекстовый поиск, присоединенные файлы, электронная подпись и др.);

    Технологические механизмы и программные интерфейсы (процедуры и функции общего назначения, обновление версии ИБ, работа в модели сервиса и др.);

    Нормативно-справочная информация и классификаторы (адресный классификатор, банки, валюты и др.);

    Прикладные подсистемы и рабочие места пользователей (анкетирование, бизнес-процессы и задачи, взаимодействия, варианты отчетов и др.).

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

    Порядок перехода с предыдущей версии

    Весь исходный код библиотеки распространяется по лицензии Attribution 4.0 International (CC BY 4.0) . Текст лицензии доступен по ссылке: https://creativecommons.org/licenses/by/4.0/legalcode. Эта лицензия позволяет вам использовать, распространять, перерабатывать, исправлять и развивать библиотеку в любых, в том числе, в коммерческих целях, при обязательном условии указания авторства библиотеки в вашем программном продукте. См. также: Ответы на типовые вопросы по лицензированию "1С:Предприятия 8".

    Для обновления версий БСП в прикладных решениях рекомендуется использовать специализированные инструменты, входящие в дистрибутив библиотеки:

    ExtFiles\ПервоеВнедрениеБСП.epf – внешняя обработка для упрощения процесса первого внедрения библиотеки в прикладную конфигурацию. Позволяет выбрать подсистемы для внедрения с учетом их зависимостей друг от друга и сохранить настройки для сравнения-объединения с помощью конфигуратора. Также с ее помощью можно выполнить удаление избыточных фрагментов кода подсистем, которые не используются в конфигурации.

    ExtFiles\Инструменты разработчика\ПереходНаВерсию<номер версии>.epf – внешние обработки по автоматизации ряда массовых операций при переводе конфигурации с ранних версий библиотеки, которые указаны в разделе Переход с предыдущих версий файла UpdateSSL.htm . Предусмотрены обработки для перехода на версии 3.0.1 и 3.0.3. Обработки запускаются в информационной базе после обновления метаданных библиотеки в прикладной конфигурации. При работе с хранилищем конфигурации обработку рекомендуется запускать на копии информационной базы и затем загружать обратно измененные метаданные конфигурации с помощью сравнения-объединения.

    ExtFiles\ПроверкаВнедренияБСП.erf – внешний отчет, предназначенный для запуска в информационной базе после внедрения или обновления метаданных библиотеки в прикладной конфигурации. Выявляет распространенные проблемы внедрения библиотеки в конфигурации, в частности, проверяет корректность заполнения состава определяемых типов, наличие необходимых вставок кода в модулях.

    ExtFiles\ОбновлениеНаИсправительнуюВерсиюБСП.epf – внешняя обработка для обновления конфигурации на новые исправительные релизы библиотеки. Она позволяет существенно сэкономить время при регулярных (например, еженедельных) обновлениях. Исправительные релизы библиотеки отличаются только четвертой цифрой в полном номере версии, например: 2.4.1. 1 , 2.4.1. 2 , 2.4.1. 10 и т.п. Ее необходимо запускать в информационной базе с конфигурацией, содержащей предыдущий релиз библиотеки. Нажать на кнопку Обновить на исправительную версию , указав файл 1Cv8.cf новой версии библиотеки из комплекта поставки. При этом выполняется автоматическое сравнение/объединение с новой конфигурацией библиотеки согласно настройкам, которые соответствуют документации: будут перенесены все поставляемые объекты библиотеки, а переопределяемые при внедрении – объединены с приоритетом конфигурации поставщика (например, определяемые типы) или пропущены (как например, переопределяемые модули). После сравнения/объединения конфигурация базы данных не будет обновлена автоматически, что позволяет выполнить сравнение с конфигурацией базы данных и внести правки в измененные объекты: переопределяемые модули, различные локальные исправления и доработки. После обновления необходимо дополнительно выполнить инструкции из раздела Переход с тестовых версий или Переход с предыдущих версий документа UpdateSSL.htm , если они указаны. Кроме того, в качестве альтернативного варианта, по кнопке Сформировать файл настроек предусмотрена возможность сформировать настройки, которые затем можно загрузить в конфигураторе для ручного сравнения-объединения. Однако при обновлении на новые функциональные релизы (изменение третьей цифры) расстановку флажков в окне сравнения-объединения необходимо выполнять, как и ранее, в конфигураторе, следуя инструкциям в главе 2 документации.

    Документация

    См. также на портале

    Перед началом установки конфигурации ознакомьтесь с важной информацией в файле Readme.txt

    Полный дистрибутив конфигурации

    Все данные для установки находятся на диске в каталоге \1Cits\EXE\SSL\3.0.3.121\ ( просмотреть каталог )

    Механизмы интеграции

    Конфигурация "1С:Документооборот" редакции КОРП содержит несколько встроенных планов обмена с другими типовыми конфигурациями на платформе "1С:Предприятие".

    Редакции ПРОФ и ДГУ не содержат таких планов обмена. Тем не менее, все редакции поддерживают обмен данными с помощью встроенной обработки УниверсальныйОбменДаннымиXML , использующей внешние правила обмена, загружаемые из файла. Собственные планы обмена можно добавить в любую из редакций.

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

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

    Встроенные планы обмена используют подсистему Обмен данными "Библиотеки стандартных подсистем" (далее БСП) редакции 2. Это значит, что в составе каждого плана обмена есть макет с правилами регистрации, а также макеты правил обмена и правил обмена конфигурации-корреспондента:

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

      При необходимости комплект правил может быть загружен из файла. Как правило, это делают:

      • после обновления конфигурации-корреспондента. В этом случае свежий комплект правил находится в составе дистрибутива обновления, в папке "Синхронизация данных";
      • во время отладки правил обмена, разрабатываемых на основе типовых правил, если они требуют доработки на конкретном внедрении.

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

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

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

      Правила обмена разрабатываются с помощью конфигурации "Конвертация данных" редакции 2.1. Конфигурация бесплатна и доступна по линии ИТС. Рекомендуется использовать типовые правила как основу для разработки, сохранив их в файлы и загрузив в информационную базу "Конвертации данных".

      "1С:Документооборот" не поддерживает обмен данными в формате EnterpriseData. Соответственно, для разработки правил обмена не следует использовать конфигурацию "Конвертация данных" редакции 3.

      Расширение плана обмена

      При включении новых объектов в существующий план обмена следует:

      Добавление плана обмена

      При разработке собственных планов обмена следует:

      1. Создать новый план обмена на стороне обеих конфигураций. Имя плана обмена должно быть одинаковым в обеих конфигурациях. Состав обязательных процедур модуля менеджера плана обмена приведен в документации к подсистеме Обмен данными "Библиотеки стандартных подсистем" соответствующей версии.
      2. Включить в состав планов обмена объекты, участвующие в обмене, а также регистр сведений СоответствиеОбъектовИнформационныхБаз , запретив авторегистрацию изменений. Использование собственного механизма регистрации БСП позволит избежать выгрузки объектов, изменившихся только в части не участвующих в обмене реквизитов.
      3. Создать подписки на события, аналогичные описанным выше, и обработчики для них. Лучше создать для этого отдельный общий модуль, не снимая с поддержки общий модуль ОбменДаннымиСобытияДокументооборот .
      4. Включить новый план обмена в тип параметра общих команд подсистемы Обмен данными . Проще всего найти нужные команды, выполнив в Конфигураторе поиск ссылок на типовой план обмена.
      5. Включить новый план обмена в код процедуры ПолучитьПланыОбмена общего модуля ОбменДаннымиПереопределяемый .
      6. При необходимости создать формы настройки плана обмена (см. документацию к "Библиотеке стандартных подсистем", а также примеры в планах обмена с конфигурациями "1С:Бухгалтерия" предприятия и "1С:Управление производственным предприятием").
      7. Сохранить описания обновленных конфигураций в файлы с помощью обработки MD8<NNN>Exp.epf , входящей в состав дистрибутива конфигурации "Конвертация данных".
      8. Загрузить описания конфигураций в информационную базу "Конвертации данных".
      9. Разработать два набора правил обмена и два набора правил регистрации для каждой из сторон обмена.
      10. Добавить оба набора правил обмена и по одному набору правил регистрации в каждую конфигурацию в качестве макетов плана обмена.
      11. Настроить синхронизацию данных и отладить ее.

      Обратите внимание:
      Правила обмена, зачитанные из макетов в составе конфигурации, кэшируются в регистре сведений ПравилаДляОбменаДанными . При отладке рекомендуется использовать загрузку правил обмена из файла. Для обновления правил из макета следует изменить номер версии конфигурации или выполнить загрузку вручную по команде Загрузить правила… , выбрав вариант Из конфигурации .

      Веб-сервисы

      Типовая конфигурация "1С:Документооборот" содержит набор веб-сервисов.

      Некоторые из них специализированы и служат, например, для обмена с мобильными устройствами или для синхронизации данных с другими информационными базами, разработанными с применением "Библиотеки стандартных подсистем".

      Два веб-сервиса, однако, предназначены для интеграции с произвольными внешними программами, как разработанными на платформе "1С:Предприятие", так и любыми другими, способными обращаться к веб-сервисам. Речь идет о веб-сервисах:

      • Files – простой сервис, поддерживающий работу с файлами и папками "1С:Документооборота" извне.
      • DMService – поддерживает работу с основными объектами и функциями "1С:Документооборота". Перекрывает функционал веб-сервиса Files . Используется "Библиотекой интеграции 1С:Документооборота".

      Данные веб-сервисы включены во все редакции "1С:Документооборота".

      Работа с веб-сервисами из прикладных решений на платформе "1С:Предприятие", как правило, строится следующим образом:

      1. Определяется способ хранения и редактирования настроек подключения к веб-сервису. Настройки состоят из:
        • Адреса веб-сервиса;
        • Имени пользователя и пароля (в текущих версиях платформы поддерживается только аутентификация "1С:Предприятия", поэтому следует либо предоставить пользователям интегрируемого прикладного решения возможность ввести имя пользователя и пароль, либо использовать для доступа служебную учетную запись, для которой запрещен интерактивный вход);
        • Таймаута при обращении к сервису (при низком качестве соединения, а также при первом обращении к сервису задержки могут быть значительными).
      2. Определяется способ получения WSПрокси для обращения к веб-сервису. Операции создания WSОпределений и WSПрокси достаточно затратны, поэтому рекомендуется выносить получение реквизитов, в отдельный общий модуль с повторно возвращаемыми значениями.
      3. Создаются процедуры и функции, являющиеся обертками для функционала веб-сервиса на стороне прикладного решения. Непосредственную работу с объектами XDTO рекомендуется инкапсулировать в них, чтобы облегчить доработки при изменении функционала сервиса.

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

      Веб-сервис Files

      Веб-сервис использует всего четыре типа объектов:

      • File – файл в папке.
      • Folder – папка файлов.
      • ShortFileInfo – сведения о файле, возвращаемые сервисом после его создания.
      • FileList – список файлов, отобранных по условиям.
      • GetFileList – получает список файлов в указанной папке.
      • GetFile – получает файл по указанному коду файла.
      • AddFile – добавляет файл в указанную папку.
      • DeleteFile – помечает файл на удаление.
      • FindFolder – находит папку по наименованию в указанной родительской папке.
      • AddFolder – создает новую папку в указанной родительской папке.

      Все действия, выполняемые этим веб-сервисом, можно выполнить с помощью веб-сервиса DMService. Работа с файлами документов поддерживается только DMService.

      Веб-сервис DMService

      Сервис использует XDTO-пакет DM. Пакет содержит несколько десятков прикладных объектов, являющихся представлениями таких объектов "1С:Документооборота", как файлы, документы, процессы, задачи и так далее. Все они - потомки абстрактного DMObject и имеют общие свойства objectId и externalObject .

      Свойство objectId представляет собой ссылку на объект "1С:Документооборота" и содержит его представление, идентификатор и тип.

      Свойство externalObject представляет собой ссылку на объект интегрируемой программы и так же содержит его представление, идентификатор и тип. Свойство заполняется сервисом автоматически, если объект "1С:Документооборота" был ранее связан с объектом интегрируемой конфигурации, например, при создании или записи с заполненным свойством externalObject .

      Сервис поддерживает всего одну операцию, execute . В качестве параметра передается объект-потомок DMRequest . Требуемая операция и ее параметры определяются типом переданного объекта и его свойствами. Например, запрос DMGetObjectListRequest получает список объектов типа, указанного в свойстве type по условиям, указанным в свойстве query .

      Результат операции возвращается в объекте-потомке DMResponse . В простейших случаях это объект DMOK . В случае ошибки возвращается DMError , содержащий краткое ( subject ) и полное ( description ) описание ошибки.

      Для большинства запросов существуют парные им объекты-ответы, содержащие результат выполненной операции. Например, список объектов, полученный вызовом DMGetObjectListRequest , возвращается в объекте DMGetObjectListResponse .

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

      Cоздадим запрос на получение списка внутренних документов:

      Определим условие запроса (поиск по наименованию):

      Выполним запрос, проверив результат на предмет ошибки:

      Разберем ответ, заполнив таблицу названиями и идентификаторами найденных документов:

      Подробное описание объектов и операций сервиса дается в составе дистрибутива "1С:Документооборота" (файл "Описание веб-сервисов.html" в каталоге шаблонов). Это описание доступно также из интерфейса демонстрационной конфигурации "Библиотека интеграции с 1С:Документооборотом", которая содержит также более сложные и полезные примеры использования сервиса.

      При выпуске новых версий "1С:Документооборота" сервис расширяется и дополняется новыми объектами и свойствами так, чтобы не затронуть работу клиентских приложений, не знающих об этих изменениях. Этого же принципа следует придерживаться при самостоятельном изменении функционала сервиса: например, добавляя новые свойства, устанавливать минимальное количество в 0.

      Обработка запросов к сервису сосредоточена в общих модулях:

      • ОбработкаЗапросовXDTO – общий вход для всех вызовов
      • ОбработкаЗапросовXDTOБизнесПроцессыИЗадачи
      • ОбработкаЗапросовXDTOДокументы
      • ОбработкаЗапросовXDTOФайлы

      Присутствуют только в редакции КОРП:

      • ОбработкаЗапросовXDTOКорп
      • ОбработкаЗапросовXDTOОбмен
      • ОбработкаЗапросовXDTOПочта
      • ОбработкаЗапросовXDTOУчетВремени

      Перед использованием сервиса следует получать его версию и редакцию запросом DMGetVersionRequest и не пользоваться возможностями, которые не поддерживает сервис. Попытка использовать отсутствующие возможности, например, попытка создать исходящее письмо в редакции ПРОФ, приведет к ошибке (возврату DMError ).

      Доработки рекомендуется вносить в модуль ОбработкаЗапросовXDTO Переопределяемый . Его процедуры и функции позволяют провести дополнительное изменение объектов XDTO при их создании по объектам "1С:Документооборота" и наоборот.

      Библиотека интеграции 1С:Документооборота

      "Библиотека интеграции 1С:Документооборота" (далее БИД) не является самостоятельным прикладным решением, хотя и содержит некоторые демонстрационные объекты, и предназначена для встраивания в прикладные решения на платформе "1С:Предприятие".

      БИД может использоваться с любыми версиями "1С:Документооборота", начиная с редакции 1.2.

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

      Более подробное описание "Библиотеки интеграции 1С:Документооборота" и порядка ее встраивания содержится в документации, поставляемой в составе дистрибутива (папка DocDMIL ).

      Читайте также: