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

Содержание:

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С:Бухгалтерия ПРОФ

- Финансы, управленческий учет, мониторинг показателей
- Бухгалтерский уче...

ПАО «АрселорМиттал Кривой Рог»
ПАО «АрселорМиттал Кривой Рог»

Отрасль:
Металлургическая промышленность

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

- Кадровый учет
- Расчет зарплаты
- Регламентированная отчетность
- Уч...

ОАО «Фаберлик»
ОАО «Фаберлик»

Отрасль:

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

- Регламентированный учет;
- Кадровый учет;...

АО «Вертолетная сервисная компания»
АО «Вертолетная сервисная компания»

Отрасль:
МТО эксплуатации вертолетной техники

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

- Консультации по сложным вопросам налогового и бухгалтерского учета;
- Ра...

Внедрение ПП "1С:Бухгалтерия 8 ПРОФ" в ООО Фирма «Бисер»
ООО фирма «Бисер»

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

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

Финансы, управленческий учет, мониторинг показателей:
- Налоговый учет...

ООО "Смена"
ООО "Смена"

Отрасль:
Торговля, склад, логистика, транспорт

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

Банк и касса
Расчеты с контрагентами
Торговые операции
Взаиморасчеты с...

Внедрение ПП "1С:CRM ПРОФ" в ООО «Торговый Дом Факел»
ООО «Торговый Дом Факел»

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

Внедренное типовое решение:
1С:CRM ПРОФ

- Управление отношениями с клиентами (CRM) ...

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

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

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

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

Фирма 1С
Фирма 1С

Отрасль:

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

- Подготовка функциональной модели прикладного решения «1С:Документооборот...

ООО «Аэроэкспресс»
ООО «Аэроэкспресс»

Отрасль:

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

· Планирование закупок · Управление закупочными процедурами, включая 223 ФЗ ...

Автоматизация торговых операций на базе "1С:Управление торговлей" в ОАО "Авиазапчасть"
ОАО «Авиазапчасть»

Отрасль:
Авиационно-космическая промышленность

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

- Оптовая торговля;
- Оформление заказов покупателей;
- Планирование прод...

Автоматизация кадрового учета на базе ПП "1С:Зарплата и управление персоналом" в ТД НМК
ООО «Торговый дом Нальчикский молочный комбинат»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Кадровый учет;
- Расчет зарплаты;
- Регламентированная отчетность;
- А...

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

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

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

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