Вы решили использовать обмен информацией между конфигурациями. Но чтобы обмен работал правильно, если вы обновляете что-то, то вам обязательно нужно провести обновление обмена.
Можем посмотреть на пример, при котором обмен настраивался через УТ и использовал соединения напрямую к бухгалтерии. Все данные, которые мы используем обязательно придется загружать через настройку обмена информацией в УТ. Во избежание проблем и потери информации, советуем вам сделать полную копию вашей базы, чтобы в случае чего вы смогли восстановить первоначальный вид
Открываем нашу программу 1С УТ версии 10.3. Потом нажимаем на кнопку в меню «сервис» и далее в выпавшем списке нажимаем на пункт «прочие обмены данными».
Далее открываем пункт меню «Все обмены». Далее жмем в появившейся таблице правый клик и кликаем на копку «Изменить».
В открывшейся вкладке наблюдаем, что обмен идет используя правилам обмена. Эти правила надо сохранить себе или наоборот произвести их загрузку.
Производим загрузку правил в нашу базу обмена. Кликаем «Загрузить правила из файла». Если в вашей конфигурации происходили изменения и ее дорабатывали, советуем вам воспользоваться помощью квалифицированных программистов 1с, так как создать самим правила у вас не получится или сделаете это с ошибками.
Перед этой процедурой советуем сохранить вам созданные правила в файл, чтобы в случае чего можно было все откатить.
Учитывая, что Бухгалтерия 1С обновилась намного позднее чем УТ, то нам надо найти правила для Бухгалтерии 1с. Ищем папку с набором шаблонов, сделать это можно открыв программу 1С и кликнув на кнопку «Настройка». Далее перед нами открывается окошко, где находятся все шаблоны.
Далее идем в 1С=>Accounting и кликаем на каталог, где лежит наша 1С Бухгалтерия. Когда нужно брать правила из УТ, то мы ищем папку Trade и открываем ее.
Открываем обмен с конфигурацией УТ и далее находим правила конвертации УТ в Бухгалтерию предприятие. Все также делаем для загрузки в текущую бд, но указываем уже конвертация из Бухгалтерия предприятие в Управление торговлей.
Советуем вам ознакомиться с файлом Совместное использование. Находится он в каталоге Обмен конфигурацией Ут. Он содержит в себе полезные для вас данные.
Надо удостовериться, что наши правила работают правильно клавишами. Если все работает нормально, сохраняем их и начинаем наш обмен.
Если вы производите обмен данными между конфигурациями Управление торговлей 10.3 и Бухгалтерия предприятия 2.0, то после обновления одной из конфигураций, необходимо обновить правила обмена.
Рассмотрим случай когда обмен настраивался из конфигурации Управление торговлей и настроен через прямое подключение к базе приемнику, т.е. бухгалтерии. Загружать новые правила нужно через настройку обмена данными в Управлении торговлей. Настоятельно рекомендуется сделать резервное копирование информационных баз перед этим.
Если вас интересует обмен данными между конфигурациями, рекомендуем статью — настройка двухстороннего обмена между 1С УТ и БП.
Заускаем 1С Управление торговлей 10.3. Выбираем пункт “Все настройки обмена данными” из меню Сервис => Прочие обмены данными.
Выбираем раздел “Все обмены”. Находим в списке ваш обмен данными, щеалкаем правой кнопкой мыши и нажимаем “Изменить”. Если вы будете пытаться изменить настройки обмена из раздела “Обмен данными с 1С: Бухгалтерия 8”,то при попытке изменения будет запускаться помощник настройки обмена данными, который нам не нужен.
В появившемся окне мы видим что обмен происходит по правилам обмена, которые можно сохранить и загрузить. Правила выгрузки в базу обмена, это правила по которым информация выгружается из Управления торговлей в Бухгалтерию, а правила выгрузки из базы обмена в текущую базу это правила, по которым информация загружается из Бухгалтерии в Управление торговлей.
Загрузим правила выгрузки в базу обмена. Нажимаем “Загрузить правила из файла”. Внимание, если у вас нетиповая конфигурация и вы используете нетиповые правила обмена,т.е. разработанные специально для вашей измененной конфигурации, то вам следует обратиться к специалистам для создания новых правил на основе имеющихся.
Ни в коем случае не заменяйте их на типовые правила. Еслы вы не уверены в том что у вас типовые конфигурации, на всякий случай сохраните имеющиеся правила кнопкой “Сохранить правила в файл”.
Так как последнее обновление 1С Бухгалтерии вышло гораздо позже чем обновление для Управления торговлей, ищем правила обмена в каталоге шаблонов обновлений 1С для Бухгалтерии. Найти каталог шаблонов обновлений можно следующим образом. Запускаем 1С и нажимаем “Настройка”. В появившемся окне видим путь к каталогу шаблонов конфигураций и обновлений.
Переходим по этому пути. Далее: 1С=>Accounting и выбираем папку с названием последнего установленного релиза Бухгалтерии. В случае если правила нужно взять из обновления конфигурации “1С:Управление торговлей”, папка будет называться Trade. Для конфигурации “1С:Розница” — Retail. В ней находится папка “Обмены данными”.
Далее “Обмен с конфигурацией Управление торговлей, ред. 10.3”. В ней видим ПРАВИЛА КОНВЕРТАЦИИ БП-УТ и ПРАВИЛА КОНВЕРТАЦИИ УТ-БП. Так как нам нужны правила выгрузки из УТ выбираем “ПРАВИЛА КОНВЕРТАЦИИ УТ-БП” и нажимаем открыть. Тоже самое проделываем для правил выгрузки из базы обмена в текущую базу только выбираем файл ПРАВИЛА КОНВЕРТАЦИИ БП-УТ и нажимаем открыть.
В папке “Обмен с конфигурацией Управление торговлей, ред. 10.3” находится файл Совместное использование.htm. Если вы ни разу его не читали то обязательно прочтите. В нем находится следующая полезная информация:
- Цели совместного использования
- Общее описание
- Переход с прошлых версий двустороннего обмена данными
- Предварительные действия
- Порядок настройки обмена данными между конфигурациями
- Синхронизация данных
- Совместная работа конфигураций “Управление торговлей” и “Бухгалтерия предприятия”
- Примеры сценариев работы пользователей
- Таблица соответствия выгружаемых документов УТ — БП (редакция 1.6, редакция 2.0) Таблица соответствия выгружаемых документов БП (редакция 1.6, редакция 2.0) — УТ
- Особенности выгрузки документов и справочников
- Таблица соответствия выгружаемых документов БП (редакция 1.6, редакция 2.0) — УТ
- Перенос документов “Счет на оплату покупателю” и “Заказ покупателя”
- Перенос себестоимости списания товаров
- Контроль результатов обмена данными
Проверяем правила кнопками проверить. И нажимаем ОК. Новые правила сохранены. Запускаем обмен данными и проверяем их работу.
О том,как настроить двухсторонний обмен данными между конфигурациями Управление торговлей 10.3 и Бухгалтерия предприятия 2.0 написано в другой моей статье.
Синхронизация данных
Конфигурация "1С:Документооборот" редакции КОРП содержит несколько встроенных планов обмена с другими типовыми конфигурациями на платформе "1С:Предприятие".
Редакции ПРОФ и ДГУ не содержат таких планов обмена. Тем не менее, все редакции поддерживают обмен данными с помощью встроенной обработки УниверсальныйОбменДаннымиXML , использующей внешние правила обмена, загружаемые из файла. Собственные планы обмена можно добавить в любую из редакций.
Встроенные планы обмена предназначены для автоматической синхронизации данных в ходе совместного использования разных прикладных решений, но могут использоваться и для первоначального наполнения информационной базы.
Внешние правила обмена, поставляемые в составе дистрибутива, предназначены скорее для первоначального наполнения информационной базы, но могут использоваться и для последующей синхронизации данных. В последнем случае обмен нужно будет запускать регулярно вручную.
Встроенные планы обмена используют подсистему Обмен данными "Библиотеки стандартных подсистем" (далее БСП) редакции 2. Это значит, что в составе каждого плана обмена есть макет с правилами регистрации, а также макеты правил обмена и правил обмена конфигурации-корреспондента:
- Правила регистрации используются в "1С:Документообороте" для определения необходимости регистрации записываемого объекта к выгрузке в конфигурацию-корреспондент.
- Типовые правила регистрации тривиальны (содержат только перечень регистрируемых объектов без дополнительных условий).
- Автоматическая регистрация изменений в планах обмена выключена, для регистрации используется стандартная механика БСП, анализирующая изменения в выгружаемых полях перед регистрацией.
При необходимости комплект правил может быть загружен из файла. Как правило, это делают:
- после обновления конфигурации-корреспондента. В этом случае свежий комплект правил находится в составе дистрибутива обновления, в папке "Синхронизация данных";
- во время отладки правил обмена, разрабатываемых на основе типовых правил, если они требуют доработки на конкретном внедрении.
После отладки доработанных правил обмена рекомендуется включить их в состав конфигурации, сняв с поддержки макеты, чтобы:
- получить возможность сравнивать доработанные правила с типовыми при обновлении конфигурации;
- избежать проблем, связанных с проверкой правил при обновлении информационной базы после изменения структуры метаданных.
Обратите внимание:
Правила, загруженные из файла и переставшие соответствовать новой структуре метаданных, не дадут довести до конца штатное обновление информационной базы.
Правила обмена разрабатываются с помощью конфигурации "Конвертация данных" редакции 2.1. Конфигурация бесплатна и доступна по линии ИТС. Рекомендуется использовать типовые правила как основу для разработки, сохранив их в файлы и загрузив в информационную базу "Конвертации данных".
"1С:Документооборот" не поддерживает обмен данными в формате EnterpriseData. Соответственно, для разработки правил обмена не следует использовать конфигурацию "Конвертация данных" редакции 3.
Расширение плана обмена
При включении новых объектов в существующий план обмена следует:
- Включить эти объекты в состав плана обмена, запретив автоматическую регистрацию изменений.
- Включить эти объекты в состав источников соответствующих подписок на события.
- Для регистров подписка будет называться ОбменДанными ПередЗаписьюРегистра . Возможно, в обработчик подписки потребуется внести дополнительные условия, если он не рассчитан на появление нового регистра.
- Для ссылочных объектов будет две подписки: ОбменДанными ПередЗаписьюРегистра и ОбменДанными ПередУдалением . Как правило, обработчики этих событий не нуждаются в доработке, поскольку передают управление стандартным процедурам БСП.
- Если регистрация не требует дополнительных условий, больше ничего делать не нужно. Если нужно регистрировать документы при изменении их состояния, например, выгружая только согласованные документы, следует внести доработки в модуль набора записей регистра сведений ТекущиеСостоянияДокументов по аналогии с уже имеющимся там кодом для обмена с конфигурациями "1С:Бухгалтерия предприятия" и "1С:Управление холдингом". В последнем случае следует внести проверку на состояние также и в обработчик ПередВыгрузкой правила выгрузки данных с тем, чтобы избежать выгрузки документов, чье состояние изменилось уже после регистрации в плане обмена, либо предусмотреть передачу пометки на удаление в конфигурацию-корреспондент.
- С помощью конфигурации "Конвертация данных" создать для этих объектов соответствующие правила выгрузки данных и правила конвертации объектов.
Загрузить измененные правила из файлов и после отладки подменить ими типовые макеты.
Добавление плана обмена
При разработке собственных планов обмена следует:
- Создать новый план обмена на стороне обеих конфигураций. Имя плана обмена должно быть одинаковым в обеих конфигурациях. Состав обязательных процедур модуля менеджера плана обмена приведен в документации к подсистеме Обмен данными "Библиотеки стандартных подсистем" соответствующей версии.
- Включить в состав планов обмена объекты, участвующие в обмене, а также регистр сведений СоответствиеОбъектовИнформационныхБаз , запретив авторегистрацию изменений. Использование собственного механизма регистрации БСП позволит избежать выгрузки объектов, изменившихся только в части не участвующих в обмене реквизитов.
- Создать подписки на события, аналогичные описанным выше, и обработчики для них. Лучше создать для этого отдельный общий модуль, не снимая с поддержки общий модуль ОбменДаннымиСобытияДокументооборот .
- Включить новый план обмена в тип параметра общих команд подсистемы Обмен данными . Проще всего найти нужные команды, выполнив в Конфигураторе поиск ссылок на типовой план обмена.
- Включить новый план обмена в код процедуры ПолучитьПланыОбмена общего модуля ОбменДаннымиПереопределяемый .
- При необходимости создать формы настройки плана обмена (см. документацию к "Библиотеке стандартных подсистем", а также примеры в планах обмена с конфигурациями "1С:Бухгалтерия" предприятия и "1С:Управление производственным предприятием").
- Сохранить описания обновленных конфигураций в файлы с помощью обработки MD8 Exp.epf , входящей в состав дистрибутива конфигурации "Конвертация данных".
- Загрузить описания конфигураций в информационную базу "Конвертации данных".
- Разработать два набора правил обмена и два набора правил регистрации для каждой из сторон обмена.
- Добавить оба набора правил обмена и по одному набору правил регистрации в каждую конфигурацию в качестве макетов плана обмена.
- Настроить синхронизацию данных и отладить ее.
Обратите внимание:
Правила обмена, зачитанные из макетов в составе конфигурации, кэшируются в регистре сведений ПравилаДляОбменаДанными . При отладке рекомендуется использовать загрузку правил обмена из файла. Для обновления правил из макета следует изменить номер версии конфигурации или выполнить загрузку вручную по команде Загрузить правила… , выбрав вариант Из конфигурации .
Веб-сервисы
Типовая конфигурация "1С:Документооборот" содержит набор веб-сервисов.
Некоторые из них специализированы и служат, например, для обмена с мобильными устройствами или для синхронизации данных с другими информационными базами, разработанными с применением "Библиотеки стандартных подсистем".
Два веб-сервиса, однако, предназначены для интеграции с произвольными внешними программами, как разработанными на платформе "1С:Предприятие", так и любыми другими, способными обращаться к веб-сервисам. Речь идет о веб-сервисах:
- Files – простой сервис, поддерживающий работу с файлами и папками "1С:Документооборота" извне.
- DMService – поддерживает работу с основными объектами и функциями "1С:Документооборота". Перекрывает функционал веб-сервиса Files . Используется "Библиотекой интеграции 1С:Документооборота".
Данные веб-сервисы включены во все редакции "1С:Документооборота".
Работа с веб-сервисами из прикладных решений на платформе "1С:Предприятие", как правило, строится следующим образом:
- Определяется способ хранения и редактирования настроек подключения к веб-сервису. Настройки состоят из:
- Адреса веб-сервиса;
- Имени пользователя и пароля (в текущих версиях платформы поддерживается только аутентификация "1С:Предприятия", поэтому следует либо предоставить пользователям интегрируемого прикладного решения возможность ввести имя пользователя и пароль, либо использовать для доступа служебную учетную запись, для которой запрещен интерактивный вход);
- Таймаута при обращении к сервису (при низком качестве соединения, а также при первом обращении к сервису задержки могут быть значительными).
- Определяется способ получения WSПрокси для обращения к веб-сервису. Операции создания WSОпределений и WSПрокси достаточно затратны, поэтому рекомендуется выносить получение реквизитов, в отдельный общий модуль с повторно возвращаемыми значениями.
- Создаются процедуры и функции, являющиеся обертками для функционала веб-сервиса на стороне прикладного решения. Непосредственную работу с объектами 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 ).