11.02.2019 Евгений Мазай 10097
Настройка обмена данными через универсальный ...

Содержание:

1.       Постановка задачи о двухстороннем обмене

2.       Модули менеджера для УТ и Автосервиса  

 

1.    Постановка задачи о двухстороннем обмене

    

            У клиента бизнес связан с ремонтом автомобилей и продажей автозапчастей. На момент нашей с ним работы были куплены два программных продукта 1С:Управление торговлей, 11 и 1С:Автосервис 8.3. На тот момент стояла задача «разделить» ремонт и торговлю. Это означало, что отдел торговли занимается продажей запчастей, а автосервис выполняет только ремонт. И по факту автосервис использует свой программный продукт, а торговля - свой. На начальном этапе разговор шел об одностороннем обмене. При этом все понимали, что данные о запчастях общие для двух программных продуктов. Значит, нужны данные о запасах склада и ценах (чисто информационно) в автосервисе. В процессе реализации задачи стало понятно, что и запасные части, используемые в документе «Заказ покупателя» в автосервисе, должны переноситься в заказ клиента в Управление торговли. Это полноценная продажа для Управления торговли. И после отработки данного документа в Управлении торговлей статус состояния заказа также должен переносится в автосервис. Тем самым мы получим факт подтверждения наличия запасных частей и возможности выполнить ремонт. Выходит, нужен полноценный двухсторонний обмен. Вот такая постановка задачи по обмену.


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


2.    Модули менеджера для УТ и Автосервиса

 

            На момент реализации обмена использовалась УТ 11.2.3.182, а в ней БСП 2.3.2.72 и более свежая конфигурация Автосервиса 1.6.14.93 и БСП 2.4.5.53. Каждая из конфигураций имеет свою БСП 2 их релизы 2.3 и 2.4. Для работы подсистемы обмена данными необходимо создать подписки на события в каждой из конфигураций. Для каждого плана обмена создается свой набор подписок на события. В общем случае для одного плана обмена может быть создано до шести подписок. А так как БСП 2 разные, то и в процессе внедрения в конфигурацию возникли особенности внедрения каждой из них. Рекомендация следующая. При настройке модуля менеджера созданного плана обмена - воспользоваться демо-базой каждой из БСП 2. В моем случае понадобились демо-базы БСП 2.3 и БСП 2.4. Кроме того, использовать рекомендации по очистке модуля менеджера плана обмена из описания внедрения данной БСП. Вот такие подарки, если используются в конфигурациях разные БСП. Использовать подписки на события только если используются соответствующие объекты конфигурации.


            Для УТ модуль менеджера получил вот такой:


#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда

//

Процедура ОпределитьНастройки(Настройки, ИдентификаторНастройки = "") Экспорт

//

Функция НастройкаОтборовНаУзле(ВерсияКорреспондента, ИмяФормы, ИдентификаторНастройки = "") Экспорт

//

Функция НастройкаОтборовНаУзлеБазыКорреспондента(ВерсияКорреспондента, ИмяФормы, ИдентификаторНастройки = "") Экспорт

//

Функция ЗначенияПоУмолчаниюНаУзле(ВерсияКорреспондента, ИмяФормы, ИдентификаторНастройки = "") Экспорт

//

Функция ЗначенияПоУмолчаниюНаУзлеБазыКорреспондента(ВерсияКорреспондента, ИмяФормы, ИдентификаторНастройки = "") Экспорт

//

Функция ОписаниеОграниченийПередачиДанных(НастройкаОтборовНаУзле, ВерсияКорреспондента, ИдентификаторНастройки = "") Экспорт

//

Функция ОписаниеОграниченийПередачиДанныхБазыКорреспондента(НастройкаОтборовНаУзле, ВерсияКорреспондента, ИдентификаторНастройки = "") Экспорт

//

Функция ОписаниеЗначенийПоУмолчанию(ЗначенияПоУмолчаниюНаУзле, ВерсияКорреспондента, ИдентификаторНастройки = "") Экспорт

//

Функция ОписаниеЗначенийПоУмолчаниюБазыКорреспондента(ЗначенияПоУмолчаниюНаУзле, ВерсияКорреспондента, ИдентификаторНастройки = "") Экспорт

//

Функция ИмяФайлаНастроекДляПриемника() Экспорт

//

Функция ИспользуемыеТранспортыСообщенийОбмена() Экспорт

//

Функция ИмяФормыСозданияНачальногоОбраза() Экспорт

//

Функция ИспользоватьПомощникСозданияОбменаДанными() Экспорт

//

Функция КорреспондентВМоделиСервиса() Экспорт

//

Функция КраткаяИнформацияПоОбмену(ИдентификаторНастройки = "") Экспорт

//

Функция ПодробнаяИнформацияПоОбмену(ИдентификаторНастройки = "") Экспорт

//

Функция ПланОбменаИспользуетсяВМоделиСервиса() Экспорт

//

Функция ИмяКонфигурацииИсточника() Экспорт

 

#Область ОбработчикиСобытий

 

//

Процедура ПриПодключенииККорреспонденту(ВерсияКорреспондента) Экспорт

//

Процедура ПриОтправкеДанныхОтправителя(Отправитель, Игнорировать) Экспорт

//

Процедура ПриПолученииДанныхОтправителя(Отправитель, Игнорировать) Экспорт

//

Функция ОбщиеДанныеУзлов(ВерсияКорреспондента, ИмяФормы) Экспорт

 

Функция ПояснениеДляНастройкиПараметровУчета() Экспорт

 

Функция ПояснениеДляНастройкиПараметровУчетаБазыКорреспондента(ВерсияКорреспондента) Экспорт

//

Процедура ОбработчикПроверкиПараметровУчета(Отказ, Получатель, Сообщение) Экспорт

 

#Область ПереопределяемаяНастройкаДополненияВыгрузки

 

//

Процедура НастроитьИнтерактивнуюВыгрузку(Получатель, Параметры) Экспорт

//

Функция ПредставлениеОтбораИнтерактивнойВыгрузки(Получатель, Параметры) Экспорт

 

#КонецОбласти

 

#Область СлужебныеПроцедурыИФункции

 

 

#КонецОбласти

               

Для УТ модуль менеджера - получил вот такой:


#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда

 

#Область ПрограммныйИнтерфейс

//

Процедура ПриПолученииНастроек(Настройки) Экспорт

//

Процедура ПриПолученииВариантовНастроекОбмена(ВариантыНастроекОбмена, ПараметрыКонтекста) Экспорт

//

Процедура ПриПолученииОписанияВариантаНастройки(ОписаниеВарианта, ИдентификаторНастройки, ПараметрыКонтекста) Экспорт

//

Функция НастройкаОтборовНаУзлеБазыКорреспондента(ИдентификаторНастройки)

 

Функция НастройкаОтборовНаУзле(ИдентификаторНастройки)

//

Функция ЗначенияПоУмолчаниюНаУзлеБазыКорреспондента(ИдентификаторНастройки)

//

Функция ЗначенияПоУмолчаниюНаУзле(ИдентификаторНастройки)

 

Функция ОбщиеДанныеУзлов()

 

Функция ПояснениеДляНастройкиПараметровУчета(ИдентификаторНастройки)

//

Функция КраткаяИнформацияПоОбмену(ИдентификаторНастройки = "") Экспорт

//

Функция ИспользуемыеТранспортыСообщенийОбмена() Экспорт

//

Функция ПодробнаяИнформацияПоОбмену(ИдентификаторНастройки = "") Экспорт

//

Процедура ОпределитьНастройки(Настройки, ИдентификаторНастройки) Экспорт

//

Функция ОписаниеОграниченийПередачиДанных(НастройкаОтборовНаУзле, ВерсияКорреспондента, ИдентификаторНастройки) Экспорт

//

Функция ОписаниеЗначенийПоУмолчанию(ЗначенияПоУмолчаниюНаУзле, ВерсияКорреспондента, ИдентификаторНастройки) Экспорт

//

Функция ОписаниеЗначенийПоУмолчаниюБазыКорреспондента(ЗначенияПоУмолчаниюНаУзле, ВерсияКорреспондента, ИдентификаторНастройки) Экспорт

//

Функция ИмяПланаОбменаДляПереходаНаНовыйОбмен() Экспорт

//

Функция ОписаниеОграниченийПередачиДанныхБазыКорреспондента(НастройкаОтборовНаУзле, ВерсияКорреспондента, ИдентификаторНастройки) Экспорт

 

Функция ИнициализироватьСценарийРаботыПомощникаИнтерактивногоОбмена(УзелИнформационнойБазы) Экспорт

               

#КонецОбласти

 

#Область ПереопределяемаяНастройка

 

//

Процедура НастроитьИнтерактивнуюВыгрузку(Получатель, Параметры) Экспорт

//

Функция ПредставлениеОтбораИнтерактивнойВыгрузки(Получатель, Параметры) Экспорт

#КонецОбласти

 

 

#КонецЕсли

 

            Как видно по названию функций и названиям процедур, это совершенно другая реализация.

           

            Были созданы правила для переноса данных из УТ 11 в Автосервис и, соответственно, из Автосервиса в УТ 11. Со стороны УТ данные из регистра сведений «Цены номенклатуры» переносились в соответствующий регистр сведений Автосервиса. Особенностью реализации явилось то, что переносились остатки регистра накопления «Товары на складах» в созданный регистр сведений «Остатки номенклатуры УТ». Для реализации переноса остатков товаров на складе в Правилах выгрузки данных для регистра сведений «Остатки номенклатуры УТ» сделан запрос на дату выгрузки.

           

            Настройка такого обмена ничем не отличается от настроек стандартных обменов.



Рисунок 1


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

 

Специалист компании ООО «Кодерлайн» 

Евгений Мазай.

Наши проекты

Внедрение ПП "1С:Управление небольшой фирмой 8 ПРОФ" в ООО «Шокостайл»
ООО «Шокостайл»

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление небольшой фирмой 8 ПРОФ

Управление продажами, логистикой и транспортом (SFM, WMS, TMS):
- Планирование п...

ООО "РУКАРД-АУРА"
ООО "РУКАРД-АУРА"

Отрасль:
Профессиональные услуги

Внедренное типовое решение:
1С:Комплексная автоматизация

- Налоговый учет;...

Доработка конфигурации Заказчика «1С:Управление строительной организацией»
ЗАО «Стройтрансгаз»

Отрасль:
Проектирование

Внедренное типовое решение:
1С:Управление строительной организацией

Взаиморасчеты с поставщиками;
- Оформление заказов поставщикам;
- Склад ...

Компания IBS
Компания IBS

Отрасль:
Системный интегратор

Внедренное типовое решение:
1С:Управление производственным предприятием

- Интеграция систем – АСУП и «1С:Управление производственным предприятием»...

ЗАО «Инвестгеосервис»
ЗАО «Инвестгеосервис»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

Объемно-календарное планирование производства Автоматизация бизнес-проце...

Автоматизация документооборота в компании ООО "Ликард"
ООО «Ликард» (ОАО ЛУКОЙЛ)

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:Документооборот КОРП

- Отказ от бумажного документооборота, от громоздких систем на базе офисного...

 ЗАО "Инвестгеосервис" -ДО
ЗАО «Инвестгеосервис»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:Документооборот КОРП

- Работа с файлами;
- Делопроизводство;
- Процессы движения документов; ...

МГК "Световые Технологии"
МГК "Световые Технологии"

Отрасль:

Внедренное типовое решение:
1С:Предприятие 8. ERP Управление предприятием 2

Специалисты "Кодерлайн" произвели доработки в системе 1С:ЕРП 2.4 с учетом треб...

ПЭК
ПЭК

Отрасль:
Грузоперевозки

Внедренное типовое решение:
«1С: Управление торговлей»

- Создание прототипа SRM-системы на базе «1С: Управление торговлей»
- Автомат...

Автоматизация складских операций на базе «1С:Предприятие 8. WMS Логистика. Управление складом»
ОАО «Фрейт Линк»

Отрасль:
Логистика и грузоперевозки

Внедренное типовое решение:
1С:Управление холдингом

Реализовали разработку уникального модуля «Интернет-магазины» на базе прог...

Московский филиал ООО «Авиакомпания «Икар»
Московский филиал ООО «Авиакомпания «Икар»

Отрасль:
Авиаперевозки

Внедренное типовое решение:
1С:Бухгалтерия КОРП

Бухгалтерский учет Производственные операции Регламентированная отчетнос...

Внедрение ПП "1С:Управление небольшой фирмой 8 ПРОФ" в
ИП Любо Виктория Александровна (ООО «Рекреация»)

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление небольшой фирмой 8 ПРОФ

Осуществлены разработки:
– отчета по спецификации Заказа;
– загрузки сп...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение