1с обновление правил обмена
Механизмы интеграции
Конфигурация "1С:Документооборот" редакции КОРП содержит несколько встроенных планов обмена с другими типовыми конфигурациями на платформе "1С:Предприятие".
Редакции ПРОФ и ДГУ не содержат таких планов обмена. Тем не менее, все редакции поддерживают обмен данными с помощью встроенной обработки УниверсальныйОбменДаннымиXML , использующей внешние правила обмена, загружаемые из файла. Собственные планы обмена можно добавить в любую из редакций.
Встроенные планы обмена предназначены для автоматической синхронизации данных в ходе совместного использования разных прикладных решений, но могут использоваться и для первоначального наполнения информационной базы.
Внешние правила обмена, поставляемые в составе дистрибутива, предназначены скорее для первоначального наполнения информационной базы, но могут использоваться и для последующей синхронизации данных. В последнем случае обмен нужно будет запускать регулярно вручную.
Встроенные планы обмена используют подсистему Обмен данными "Библиотеки стандартных подсистем" (далее БСП) редакции 2. Это значит, что в составе каждого плана обмена есть макет с правилами регистрации, а также макеты правил обмена и правил обмена конфигурации-корреспондента:
- Правила регистрации используются в "1С:Документообороте" для определения необходимости регистрации записываемого объекта к выгрузке в конфигурацию-корреспондент.
- Типовые правила регистрации тривиальны (содержат только перечень регистрируемых объектов без дополнительных условий).
- Автоматическая регистрация изменений в планах обмена выключена, для регистрации используется стандартная механика БСП, анализирующая изменения в выгружаемых полях перед регистрацией.
При необходимости комплект правил может быть загружен из файла. Как правило, это делают:
- после обновления конфигурации-корреспондента. В этом случае свежий комплект правил находится в составе дистрибутива обновления, в папке "Синхронизация данных";
- во время отладки правил обмена, разрабатываемых на основе типовых правил, если они требуют доработки на конкретном внедрении.
После отладки доработанных правил обмена рекомендуется включить их в состав конфигурации, сняв с поддержки макеты, чтобы:
- получить возможность сравнивать доработанные правила с типовыми при обновлении конфигурации;
- избежать проблем, связанных с проверкой правил при обновлении информационной базы после изменения структуры метаданных.
Обратите внимание:
Правила, загруженные из файла и переставшие соответствовать новой структуре метаданных, не дадут довести до конца штатное обновление информационной базы.Правила обмена разрабатываются с помощью конфигурации "Конвертация данных" редакции 2.1. Конфигурация бесплатна и доступна по линии ИТС. Рекомендуется использовать типовые правила как основу для разработки, сохранив их в файлы и загрузив в информационную базу "Конвертации данных".
"1С:Документооборот" не поддерживает обмен данными в формате EnterpriseData. Соответственно, для разработки правил обмена не следует использовать конфигурацию "Конвертация данных" редакции 3.
Расширение плана обмена
При включении новых объектов в существующий план обмена следует:
Добавление плана обмена
При разработке собственных планов обмена следует:
- Создать новый план обмена на стороне обеих конфигураций. Имя плана обмена должно быть одинаковым в обеих конфигурациях. Состав обязательных процедур модуля менеджера плана обмена приведен в документации к подсистеме Обмен данными "Библиотеки стандартных подсистем" соответствующей версии.
- Включить в состав планов обмена объекты, участвующие в обмене, а также регистр сведений СоответствиеОбъектовИнформационныхБаз , запретив авторегистрацию изменений. Использование собственного механизма регистрации БСП позволит избежать выгрузки объектов, изменившихся только в части не участвующих в обмене реквизитов.
- Создать подписки на события, аналогичные описанным выше, и обработчики для них. Лучше создать для этого отдельный общий модуль, не снимая с поддержки общий модуль ОбменДаннымиСобытияДокументооборот .
- Включить новый план обмена в тип параметра общих команд подсистемы Обмен данными . Проще всего найти нужные команды, выполнив в Конфигураторе поиск ссылок на типовой план обмена.
- Включить новый план обмена в код процедуры ПолучитьПланыОбмена общего модуля ОбменДаннымиПереопределяемый .
- При необходимости создать формы настройки плана обмена (см. документацию к "Библиотеке стандартных подсистем", а также примеры в планах обмена с конфигурациями "1С:Бухгалтерия" предприятия и "1С:Управление производственным предприятием").
- Сохранить описания обновленных конфигураций в файлы с помощью обработки MD8<NNN>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 ).
В каждом плане есть определенный список элементов, информацию об изменении которых он может хранить. Этот список называется «Состав плана обмена». Состав можно расширять, но при этом поддержка конфигурации снимается.
В «Макете плана» хранятся те самые правила, на основе которых работает синхронизация. Вот именно этот пакет конвертации (ПравилаРегистрации, ПравилаОбмена, ПравилаОбменаКорреспондента) нам и необходим для дальнейшего изучения.
Рассмотрим пример синхронизации данных между конфигурациями «1С:Зарплата и управление персоналом 3» (ЗУП) и «1С:Бухгалтерия предприятия 3» (БП). Отметим сразу, в данной задаче нам придется снять конфигурацию с поддержки. Данное потребуется по условию.
Живой пример потребности в доработке типовых правил обмена
Например, заказчик обратился к нам с такой проблемой: при синхронизации между ЗУП и БП нет возможности передать данные справочника «Регистрации в налоговом органе», которые необходимы для заполнения документа «Отражение зарплаты в бухучете». Сейчас табличная часть этого документа на стороне приемника БП содержит пустую «Регистрацию…» и пользователям приходится вручную создавать такие записи в справочнике. Согласитесь, это неудобно. Можем доработать этот момент.
Решение проблемы: доработаем пакет конвертации из плана обмена ОбменЗарплата3Бухгалтерия3. Добавим в типовые «Правила обмена 1С» новое «Правило конвертации объектов» (ПКО) для справочника «Регистрации в налоговом органе» и соответственно «Конвертацию свойств» этого справочника (ПКС). Обязательно доработаем типовые «Правила регистрации объектов», т.к. возникла необходимость зарегистрировать изменения справочника на узле обмена. И пересмотрим «Правила обмена 1С» базы корреспондента.
Где все это будем редактировать? для написания и изменения правил нам потребуется конфигурация «1С:Конвертация данных 2».
Доработка типовых правил конвертации из Плана обмена ЗУП – БП
Итак, доработку правил обмена 1С начнем с того, что в конфигураторе для плана обмена ОбменЗарплата3Бухгалтерия3 в состав добавим новый элемент – справочник РегистрацииВНалоговомОргане. Данное изменение сделаем в обоих конфигурациях «1С:Зарплата и управление предприятием 3» и «1С:Бухгалтерия предприятия 3».
Сохраним и обновим конфигурации.
В режиме предприятия для каждой базы выгрузим описание структуры метаданных с помощью обработки MD83Exp.epf для платформы «1С:Предприятие 8.3». Обработку можно найти в комплекте «1С:Конвертация данных».
На следующем этапе выгрузим пакет конвертации из ЗУП и БП. Пакет должен состоять из 3 файлов: ПравилаРегистрации, ПравилаОбмена, ПравилаОбменаКорреспондента.
В рамках данной статьи не будет описания как настраивается синхронизация данных, это можно прочитать на сайте компании «Кодерлайн» в разделе
Вот такой пакет после выгрузки должен у нас получиться.
Аналогичные действия выполним и для другой информационной базы «1С:Бухгалтерия предприятия».
В итоге все подготовительные работы для редактирования правил готовы. У нас есть:- описание структуры метаданных для загрузки в «1С:Конвертация данных 2» (для ЗУП и БП);
- пакет конвертации, который содержит правила обмена 1С и правила регистрации, необходимые для загрузки в «1С:Конвертация данных 2» (для ЗУП и БП).
Переходим в «1С:Конвертация данных 2» . Выполним следующие действия по порядку для обоих информационных баз:
- загружаем структуры метаданных наших конфигураций;
- создаем конвертации и загружаем правила обмена данными 1С из пакетов конвертации (файл правил называется ExchangeRules);
- создаем регистрации и загружаем правила регистрации из пакетов конвертации (файл правил называется RegistrationRules).
Переходим непосредственно к нашей доработке. В правила обмена 1С добавляем новое правило конвертации объектов (ПКО) – справочник «Регистрации в налоговом органе». Добавляем правило конвертации свойств (ПКС) для этого справочника и правило выгрузки данных (ПВД). Такого рода доработку необходимо выполнить как для правил из пакета ЗУП, так и для правил обмена из пакета БП. Выгружаем наши правила обмена в соответствующие файлы ExchangeRules.
Переходим к правилам регистрации нового элемента. Добавляем справочник «Регистрации в налоговом органе». Выгружаем правила регистрации в соответствующий файл из пакета RegistrationRules. Это действие также выполняем для обоих баз.Доработанные правила обмена и правила регистрации готовы. Теперь в правила корреспондента (CorrespondentExchangeRules) из пакета ЗУП копируем содержимое правил обмена (ExchangeRules) из пакета БП. В правила корреспондента (CorrespondentExchangeRules) из пакета БП копируем содержимое правил обмена (ExchangeRules) из пакета ЗУП.
В итоге должно получиться следующее:
На этом работа в «1С:Конвертация данных 2» завершена. Доработанные пакеты правил конвертации готовы, осталось загрузить их обратно в информационные базы и проверить синхронизацию.Архивируем файлы из пакетов в Архив ZIP и загружаем в ЗУП и БП свои пакеты конвертации.
Все готово. Осталось протестировать.
Вспомним условия задачи. Необходимо было зарегистрировать к выгрузке справочник «Регистрации в налоговом органе» и проверить, как заполняется ТЧ документа «Отражение зарплаты в бухучете» на стороне «1С:Бухгалтерия предприятия 3».
В источнике «1С:Зарплата и управление предприятием 3» регистрируем к выгрузке наш справочник. Выполняем синхронизацию. Переходим в базу приемник и тоже выполняем синхронизацию для получения данных. Обратим внимание, что теперь в плане обмена появился нужный справочник для регистрации изменений.
Проверяем на стороне «1С:Бухгалтерия предприятия 3»:
Подведем итог. Результат поставленной задачи выполнен успешно. Мы доработали план обмена ЗУП – БП, добавив новый элемент для регистрации изменений и дописали правила конвертации для синхронизации данных.До недавнего времени специалистам, дорабатывающим правила обмена, приходилось буквально вручную отслеживать изменения, которые были внесены в типовые правила, и при актуализации последних переносить в них свои доработки. Такая методика поддержки правил в актуальном состоянии занимает большое количество времени и сил специалистов, отвлекая их от решения других задач.
Но сейчас все изменилось. Появилась возможность значительно облегчить себе жизнь.
Итак, Вы профессиональный разработчик и сопровождаете (разрабатываете) правила обмена. Предлагаю Вам методику работы, используя которую, сопровождение правил обмена не будет представлять для Вас сложность. Вы сэкономите время и избежите многих ошибок. Хотите узнать, что для этого нужно?
Немного терминологии
Далее по тексту я буду часто пользоваться сокращениями, поэтому сразу определимся с терминами.
ПКО — правило конвертации объекта
ПКС — правило конвертации свойства
ПКГС — правило конвертации группы свойств
ПКЗ — правило конвертации значения
ПВД — правило выгрузки данных
ПОД — правило очистки данныхПодготовка справочника «Конвертации»
Прежде всего придется выполнить реорганизацию справочника «Конвертации». Дело в том, что нам придется хранить версии правил поставщика. Рекомендую для этого создать на каждое правило отдельную папку, с названием, например — «УТ → БП». Будет лучше, если в наименовании каждой версии правил будут указаны релизы используемых конфигураций (а если нужно — и номер версии) — например, «УТ-БП (11.0.9, 2.0.44, v.1)».
После выхода новых релизов конфигураций, участвующих в обмене, нам понадобится загрузить новую версию правил поставщика. Найти обновленные версии правил можно в каталоге шаблонов (папка «Правила обмена»), в общих макетах конфигураций или в макетах планов обмена (их нужно сохранить как файл *.xml). При загрузке обязательно укажите «Загрузить правила в новую конвертацию данных» (см. рис.1).
Рисунок 1: Обработка "Загрузка правил обмена".
Структура справочника «Конвертации» после этого примет имеет следующий вид:
Рисунок 2: Справочник "Конвертации"
Версии правил поставщика лучше не изменять — в дальнейшем они нам понадобятся как эталон для сравнения с разрабатываемыми правилами.
Сейчас у нас все готово для того чтобы начать разработку. Продолжим?
Создаем свои правила
Создаем свои правила — пока еще копию правил поставщика. Рекомендую загрузить правила поставщика в новый элемент справочника «Конвертации» с помощью обработки «Загрузка правил обмена». Иногда бывает удобно воспользоваться кнопкой «Скопировать правила» из формы списка справочника. Рекомендуется организовать хранение собственных версий правил точно так же, как это было выполнено для хранения версий правил поставщика. Создаем новую папку («УТ → БП (разработка)») и загружаем в нее правила поставщика с названием, например, «УТ-БП (11.0.9, 2.0.44, v.1) — разработка». Теперь можно приступать непосредственно к модификации правил поставщика.
Обычно, требования клиентов к доработке правил обмена сводятся к настройке отдельных ПКС, ПВД, алгоритмов и запросов. Значительно реже приходится выполнять настройку существующих ПКО и создание новых.
Итак, что мы имеем? У нас есть некие правила обмена, в которые мы внесли изменения по требованию клиента. Есть текущая и новая версии правил обмена поставщика. Нужно выполнить обновление модифицированных нами правил до актуальной версии правил поставщика. Как это сделать?
Сравниваем свои правила с текущей версией правил поставщика
Этот этап можно пропустить, если Вы точно знаете, в какие именно элементы правил вносились изменения. Но если это не так — лучше подстраховаться.
Давайте попробуем найти обработку «Сравнение и объединение правил обмена».
А это довольно непросто - вызывается она из формы «Настройка правил обмена» (подменю «Сервис» - «Сравнение и объединение правил обмена») и при открытии предлагает выбрать один из элементов справочника «Правила обмена», который и будет сравниваться с текущим.
Рисунок 3: Вызов обработки "Сравнение и объединение правил обмена".
Выберем в справочнике текущую версию правил поставщика. Через некоторое время, которое необходимо обработке для того, чтобы выполнить анализ различий, откроется главное окно с дерево сравнения правил (см. рис.4).
Рисунок 4: Результат сравнения
Итак, мы видим, что наши правила и правила поставщика различаются. Для упрощения будем рассматривать только следующие отличия - «Последовательность полей поиска» ПКО «Контрагенты», добавленные ПКС «Код» и «Комментарий» ПКО «ФизическиеЛица» и обработчик события «Перед выгрузкой объекта» ПВД «Договоры с контрагентами».Новые ПКС «Код»и «Комментарий» ПКО «ФизическиеЛица» примем во внимание — они должны остаться в новой версии правил неизменными.
Выделим ячейку обработчика событий «Последовательность полей поиска» и с помощью контекстного меню «Показать различия» вызовем диалог показа различий между обработчиками (см. рис.5).
Рисунок 5: Различия в обработчике "Последовательность полей поиска" ПКО "Контрагенты"
Рисунок 6: Различия в обработчике "Перед выгрузкой объекта" ПВД "Договоры с контрагентами"
Мы выяснили, какие изменения были внесены в наши правила. Запишем (запомним) и переходим к сравнению разрабатываемых правил с новой версией правил поставщика.
Сравниваем и объединяем свои правила с новой версией правил поставщика
Вернемся в окно настройки правил обмена и запустим сравнение разрабатываемых правил с новыми правилами поставщика.
Рисунок 7: Результат сравнения с новыми правилами поставщика.
На представленном рисунке можно заметить, что некоторые ПКС, существующие в наших правилах и правилах поставщика не были сопоставлены. Дело в том, что обработка предоставляет 2 варианта сопоставления ПКС - «По коду» и «По наименованию» (см. рис.8). В данном случае используется сопоставление по коду. Например, ПКС «ЭтоГруппа» в наших правилах имеет код 15, а в правилах поставщика — 20.
Установим пометки для тех элементов ПКС «ФизическиеЛица», которые были изменены поставщиком и корректно сопоставлены, нажмем кнопку «Выполнить».
Если нужно — сменим режим сопоставления ПКС, выполним сравнения еще раз и объединим сопоставленные и измененные правила.
Точно так же можно поступить и с обработчиком «Поля поиска» ПКО «Контрагенты», т. к. изменения в правила обмена вносились только нами.
С обработчиком «Перед выгрузкой объекта» ПВД «Договоры с контрагентами» придется повозиться дольше. Дело в том, что изменения в него были внесены не только нами, но и разработчиками. Наши изменения нужно учесть и в новой версии правил. Каким же образом можно перенести наши доработки в новую версию правил?
Рисунок 8: Настройка сопоставления ПКС
Система 1С:Предприятие 8 не предоставляет стандартных средств объединения текстовых файлов (в отличие от сравнения), поэтому можно либо вручную перенести изменения поставщика в наши правила, либо воспользоваться сторонними программами.
Для объединения обработчиков Вы можете воспользоваться программами KDiff3 или WinMerge. И та и другая могут помочь выполнить частичное слияние обработчиков. Установите одну из этих программ. Откройте форму «Настройка сравнения правил обмена» (рис. 8) и укажите путь к исполняемому файлу. После перехода в главное окно обработки, в контекстном меню появится новый пункт - «Объединить правила с помощью KDiff3» («Объединить правила с помощью WinMerge»).
Установим курсор над обработчиком «Перед выгрузкой объекта» ПВД «Договоры с контрагентами» и выберем пункт «Объединить правила с помощью KDiff3».
Обработка сохранит левое и правое значение обработчиков во временные файлы и запустит внешнюю программу сравнения. Работать с ней просто, слева правило — приемник, справа правило — источник, внизу — результат объединения. С помощью кнопок «А» и «В» командной панели, можно указать, какие фрагменты будут перенесены в результирующий текст. После нажатия кнопки «Сохранить» и закрытия окна программы, результирующий текст будет перенесен в соответствующий обработчик правила — источника.
Рисунок 9: Окно программы KDiff3
Конечно, предложенный пример довольно прост, однако, на практике никого не удивишь обработчиком событий на несколько сотен строк, в котором имеются собственные вставки (или модифицированные фрагменты), несколькими десятками добавленных (или удаленных) ПКС и ПКЗ и т. п. И вот тогда поддержка измененных правил становится уже не такой простой. Как раз в таких случаях предложенная методика может стать тем спасательным кругом, которого так не хватало ранее.
Но это еще не все.
Обработка «Сравнение и объединение правил обмена» имеет некоторые настройки, используя которые можно существенно расширить ее функционал.
Мелкие (и не очень) хитрости
Предложенная фирмой «1С» методика сравнения позволяет сравнивать текущие разрабатываемые правила обмена с какими — либо другими. А если нужно сравнить с тем, что было и с тем, что будет?
Очень просто — нажмите кнопку «Настройка» и перейдите по гиперссылке « Перейти к настройке правил обмена ».
Рисунок 10: Настройка состава сравнения правил обмена
В табличной части «Правила обмена» добавьте старую версию правил поставщика и расположите ее так, чтобы сначала шла она, затем текущие правила, и только после этого — новая версия правил поставщика.
После закрытия формы настройки и нажатия кнопки «Обновить» будет построено новое дерево сравнения, уже с учетом трех правил (см. рис. 11).
Теперь можно выполнять объединение правил как с новой версией правил, так и со старой (используя контекстное меню). Этот прием может пригодиться, когда разрабатываемые правила сильно отличаются как от старой, так и от новой версии правил поставщика.
Рисунок 11: Сравнение 3-х правил
В некоторых случаях не требуется выполнять сравнение всех объектов, составляющих правила (это значительно дольше), а только части из них. Для того, чтобы сэкономить время, Вы можете снять флажки с ненужных в данный момент элементов правил (параметров, общих реквизитов и обработчиков, ПКЗ, ПКС, ПКО, ПВД, ПОД, Алгоритмов, Запросов). Формирование дерева сравнения станет, в этом случае, значительно более быстрым.
Вы можете отключить некоторые реквизиты и обработчики. Для этого можно воспользоваться соответствующими настройками обработки. Сравнение этих реквизитов производится не будет, в дерево сравнения они не попадут.
Кроме этого, Вы можете управлять выводом дерева сравнения с помощью поля «Фильтр». Он содержит 3 элемента:
- Показывать все. Выводятся все строки дерева сравнения. Строки в которых найдены отличия выводятся жирным шрифтом
- Показывать измененные. Выводятся все строки, в которых выявлены различия, в том числе добавленные и удаленные.
- Показывать добавленные и удаленные. Выводятся только строки, которые были добавлены или удалены.
P.S. Используйте эти несложные рекомендации и обработку «Сравнение и объединение правил обмена», и Вы станете незаменимым для своих клиентов. Клиенты получат качественные правила, а Вы — экономию времени, которого всегда так не хватает.
Вы решили использовать обмен информацией между конфигурациями. Но чтобы обмен работал правильно, если вы обновляете что-то, то вам обязательно нужно провести обновление обмена.
Нужна консультация по возможностям и функционалу программы
«1С Управление торговлей 8»?Специалисты 1С ответят на любые вопросы
и помогут выбрать программу абсолютно бесплатно!Можем посмотреть на пример, при котором обмен настраивался через УТ и использовал соединения напрямую к бухгалтерии. Все данные, которые мы используем обязательно придется загружать через настройку обмена информацией в УТ. Во избежание проблем и потери информации, советуем вам сделать полную копию вашей базы, чтобы в случае чего вы смогли восстановить первоначальный вид
Открываем нашу программу 1С УТ версии 10.3. Потом нажимаем на кнопку в меню «сервис» и далее в выпавшем списке нажимаем на пункт «прочие обмены данными».
Далее открываем пункт меню «Все обмены». Далее жмем в появившейся таблице правый клик и кликаем на копку «Изменить».
В открывшейся вкладке наблюдаем, что обмен идет используя правилам обмена. Эти правила надо сохранить себе или наоборот произвести их загрузку.
Производим загрузку правил в нашу базу обмена. Кликаем «Загрузить правила из файла». Если в вашей конфигурации происходили изменения и ее дорабатывали, советуем вам воспользоваться помощью квалифицированных программистов 1с, так как создать самим правила у вас не получится или сделаете это с ошибками.
Специалисты 1С ответят на любые вопросы
и помогут абсолютно бесплатно!Перед этой процедурой советуем сохранить вам созданные правила в файл, чтобы в случае чего можно было все откатить.
Учитывая, что Бухгалтерия 1С обновилась намного позднее чем УТ, то нам надо найти правила для Бухгалтерии 1с. Ищем папку с набором шаблонов, сделать это можно открыв программу 1С и кликнув на кнопку «Настройка». Далее перед нами открывается окошко, где находятся все шаблоны.
Далее идем в 1С=>Accounting и кликаем на каталог, где лежит наша 1С Бухгалтерия. Когда нужно брать правила из УТ, то мы ищем папку Trade и открываем ее.
Открываем обмен с конфигурацией УТ и далее находим правила конвертации УТ в Бухгалтерию предприятие. Все также делаем для загрузки в текущую бд, но указываем уже конвертация из Бухгалтерия предприятие в Управление торговлей.
Советуем вам ознакомиться с файлом Совместное использование. Находится он в каталоге Обмен конфигурацией Ут. Он содержит в себе полезные для вас данные.
Надо удостовериться, что наши правила работают правильно клавишами. Если все работает нормально, сохраняем их и начинаем наш обмен.
Читайте также: