Решается задача создания набора правил обмена для обработки Универсальный обмен данными в формате XML. Правила должны обеспечивать выгрузку справочника Контрагенты конфигурации "Бухгалтерия предприятия" (БП) и все ассоциированные (связанные) с контрагентами данные и последующую загрузку выгруженных данных в конфигурацию Управление производственным предприятием (УПП). Выгрузка ассоциируемых данных выполняется по ссылке.
Необходимо обеспечить следующие условия обмена:
Способ употребления правил обмена в обработке Универсальный обмен данными в формате XML хорошо описан в иных источниках и поэтому не приводится.
Приведенные ниже правила можно получить, используя типовую конфигурацию 1С 8.х "Конвертация данных". В рассматриваемой работе, однако, эти правила создаются преимущественно вручную (некоторые фрагменты правил взяты из уже существующих xml-файлов).
Правилами не предусмотрена выгрузка номенклатуры, которая нужна для определения значения реквизита НаименованиеДляСчетаФактурыНаАванс справочника ДоговорыКонтрагентов.
При составлении правил обмена использованы приведенные в [1] рекомендации, а также материалы, предоставляемые фирмой "1С"
Использована лишь небольшая часть предоставляемых 1С возможностей обмена. Представление о средствах конвертации можно получить, просмотрев приложение "Узлы обмена".
Обмен Справочник.Контрагенты - Справочник.Контрагенты:
Реквизит БП | Реквизит УПП | Тип в БП | Тип в УПП |
---|---|---|---|
Код | То же | Строка(9) | То же |
Наименование | То же | Строка(100) | То же |
Родитель | То же | СправочникСсылка.Контрагенты | То же |
ЭтоГруппа (поиск) | То же | Булево | То же |
ГоловнойКонтрагент | То же | СправочникСсылка.Контрагенты | То же |
ДокументУдостоверяющийЛичность | То же | Строка(0) | То же |
ИНН (поиск) | То же | Строка(12) | То же |
КодПоОКПО | То же | Строка(10) | То же |
Комментарий | То же | Строка(0) | То же |
КПП | То же | Строка(9) | То же |
НаименованиеПолное | То же | Строка(0) | То же |
ОбособленноеПодразделение | То же | Булево | То же |
ОсновноеКонтактноеЛицо | То же | СправочникСсылка.КонтактныеЛица | СправочникСсылка. КонтактныеЛицаКонтрагентов |
ОсновнойБанковскийСчет | То же | СправочникСсылка.БанковскиеСчета | То же |
ОсновнойДоговорКонтрагента | То же | СправочникСсылка.ДоговорыКонтрагентов | То же |
ЮрФизЛицо | То же | ПеречислениеСсылка.ЮрФизЛицо | То же |
В УПП справочник Контрагенты имеет существенно больше реквизитов, в число которых входят и все реквизиты БП.
Таким образом, и в источнике, и в приемнике указываемые в правилах обмена реквизиты справочника Контрагенты имеет общие имена и типы, кроме реквизита ОсновноеКонтактноеЛицо.
По приведенной таблице составим следующее правило обмена:
<!--Справочник: Контрагенты-->
<Правило>
<Код>Контрагенты</Код>
<Источник>СправочникСсылка.Контрагенты</Источник>
<Приемник>СправочникСсылка.Контрагенты</Приемник>
<ПослеЗагрузки>
если не объект.этоГруппа тогда
объект.покупатель = истина;
объект.поставщик = истина;
конецЕсли;
</ПослеЗагрузки>
<Свойства>
<Свойство>
<Источник Имя="Код" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Код" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство Поиск="true">
<ПередВыгрузкой>Отказ = Источник.ЭтоГруппа</ПередВыгрузкой>
<Источник Имя="ИНН" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="ИНН" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Родитель" Вид="Свойство" Тип="СправочникСсылка.Контрагенты"/>
<Приемник Имя="Родитель" Вид="Свойство" Тип="СправочникСсылка.Контрагенты"/>
<КодПравилаКонвертации>Контрагенты</КодПравилаКонвертации>
</Свойство>
<Свойство Поиск="true" Обязательное="true">
<Источник Имя="ЭтоГруппа" Вид="Свойство" Тип="Булево"/>
<Приемник Имя="ЭтоГруппа" Вид="Свойство" Тип="Булево"/>
</Свойство>
<Свойство>
<ПередВыгрузкой>Отказ = Источник.ЭтоГруппа</ПередВыгрузкой>
<Источник Имя="ДокументУдостоверяющийЛичность" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="ДокументУдостоверяющийЛичность" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<ПередВыгрузкой>Отказ = Источник.ЭтоГруппа</ПередВыгрузкой>
<Источник Имя="КодПоОКПО" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="КодПоОКПО" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Комментарий" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="Комментарий" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<ПередВыгрузкой>Отказ = Источник.ЭтоГруппа</ПередВыгрузкой>
<Источник Имя="КПП" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="КПП" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<ПередВыгрузкой>Отказ = Источник.ЭтоГруппа</ПередВыгрузкой>
<Источник Имя="НаименованиеПолное" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="НаименованиеПолное" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<ПередВыгрузкой>Отказ = Источник.ЭтоГруппа</ПередВыгрузкой>
<Источник Имя="ОбособленноеПодразделение " Вид="Реквизит" Тип="Булево"/>
<Приемник Имя="ОбособленноеПодразделение " Вид="Реквизит" Тип="Булево"/>
</Свойство>
<Свойство>
<ПередВыгрузкой>Отказ = Источник.ЭтоГруппа</ПередВыгрузкой>
<Источник Имя="ОсновноеКонтактноеЛицо" Вид="Реквизит" Тип="СправочникСсылка.КонтактныеЛица"/>
<Приемник Имя="ОсновноеКонтактноеЛицо" Вид="Реквизит" Тип="СправочникСсылка.КонтактныеЛицаКонтрагентов"/>
<КодПравилаКонвертации>КонтактныеЛицаКонтрагентов</КодПравилаКонвертации>
</Свойство>
<Свойство>
<ПередВыгрузкой>Отказ = Источник.ЭтоГруппа</ПередВыгрузкой>
<Источник Имя="ОсновнойБанковскийСчет" Вид="Реквизит" Тип="СправочникСсылка.БанковскиеСчета"/>
<Приемник Имя="ОсновнойБанковскийСчет" Вид="Реквизит" Тип="СправочникСсылка.БанковскиеСчета"/>
<КодПравилаКонвертации>БанковскиеСчета</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="ОсновнойДоговорКонтрагента" Вид="Реквизит" Тип="СправочникСсылка.ДоговорыКонтрагентов"/>
<Приемник Имя="ОсновнойДоговорКонтрагента" Вид="Реквизит" Тип="СправочникСсылка.ДоговорыКонтрагентов"/>
<КодПравилаКонвертации>ДоговорыКонтрагентов</КодПравилаКонвертации>
</Свойство>
<Свойство>
<ПередВыгрузкой>Отказ = Источник.ЭтоГруппа</ПередВыгрузкой>
<Источник Имя="ЮрФизЛицо" Вид="Реквизит" Тип="ПеречислениеСсылка.ЮрФизЛицо"/>
<Приемник Имя="ЮрФизЛицо" Вид="Реквизит" Тип="ПеречислениеСсылка.ЮрФизЛицо"/>
<КодПравилаКонвертации>ЮрФизЛицо</КодПравилаКонвертации>
</Свойство>
</Свойства>
</Правило>
Из БП выгружается справочник КонтактныеЛица, а в УПП загружаются справочники КонтактныеЛица и КонтактныеЛицаКонтрагентов.
Справочник КонтактныеЛица выгружается независимо от справочника Контрагенты, а второй - если на него имеется ссылка, реализуемая реквизитом ОсновноеКонтактноеЛицо справочника Контрагенты.
Обмен Справочник.КонтактныеЛица - Справочник.КонтактныеЛица:
Реквизит БП | Реквизит УПП | Тип в БП | Тип в УПП |
---|---|---|---|
Код | То же | Строка(9) | То же |
Наименование (поиск) | То же | Строка(100) | То же |
ДатаРождения | То же | Дата | То же |
Имя | То же | Строка(50) | То же |
Описание | То же | Строка(0) | То же |
Отчество | То же | Строка(50) | То же |
Фамилия | То же | Строка(50) | То же |
Правило обмена:
<!--Справочник: КонтактныеЛица-->
<Правило>
<Код>КонтактныеЛица</Код>
<Источник>СправочникСсылка.КонтактныеЛица</Источник>
<Приемник>СправочникСсылка.КонтактныеЛица</Приемник>
<Свойства>
<Свойство>
<Источник Имя="Код" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Код" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство Поиск = "true">
<Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="ДатаРождения" Вид="Реквизит" Тип="Дата"/>
<Приемник Имя="ДатаРождения" Вид="Реквизит" Тип="Дата"/>
</Свойство>
<Свойство>
<Источник Имя="Имя" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="Имя" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Описание" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="Описание" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Отчество" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="Отчество" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Фамилия" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="Фамилия" Вид="Реквизит" Тип="Строка"/>
</Свойство>
</Свойства>
<Правило>
Обмен Справочник.КонтактныеЛица - Справочник.КонтактныеЛицаКонтрагентов:
Реквизит БП | Реквизит УПП | Тип в БП | Тип в УПП |
---|---|---|---|
Код | То же | Строка(9) | То же |
Наименование (поиск) | То же | Строка(100) | То же |
ОбъектВладелец (поиск) | Владелец | СправочникСсылка.Контрагенты, СправочникСсылка.Пользователи | СправочникСсылка.Контрагенты |
Должность | То же | Строка(100) | То же |
Роль | РольКонтактногоЛица | СправочникСсылка.РолиКонтактныхЛиц | То же |
- | КонтактноеЛицо | - | СправочникСсылка.КонтактныеЛица |
Правило обмена (обработчик ПослеЗагрузки обеспечивает заполнение значения реквизита КонтактноеЛицо):
<!--Справочник: КонтактныеЛицаКонтрагентов-->
<Правило>
<Код>КонтактныеЛицаКонтрагентов</Код>
<Источник>СправочникСсылка.КонтактныеЛица</Источник>
<Приемник>СправочникСсылка.КонтактныеЛицаКонтрагентов</Приемник>
<ПослеЗагрузки>
кл = справочники.контактныеЛица.НайтиПоНаименованию(объект.наименование);
если не кл = неопределено тогда объект.контактноеЛицо = кл конецЕсли;
</ПослеЗагрузки>
<Свойства>
<Свойство>
<Источник Имя="Код" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Код" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство Поиск="true">
<Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство Поиск="true">
<Источник Имя="ОбъектВладелец" Вид="Реквизит" Тип="СправочникСсылка.Контрагенты"/>
<Приемник Имя="Владелец" Вид="Реквизит" Тип="СправочникСсылка.Контрагенты"/>
<КодПравилаКонвертации>Контрагенты</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="Должность" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="Должность" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Роль" Вид="Реквизит" Тип="СправочникСсылка.РолиКонтактныхЛиц"/>
<Приемник Имя="РольКонтактногоЛица" Вид="Реквизит" Тип="СправочникСсылка.РолиКонтактныхЛиц"/>
<КодПравилаКонвертации>РолиКонтактныхЛиц</КодПравилаКонвертации>
</Свойство>
</Свойства>
<Правило>
Обмен Справочник.РолиКонтактныхЛиц - Справочник.РолиКонтактныхЛиц:
Реквизит БП | Реквизит УПП | Тип в БП | Тип в УПП |
---|---|---|---|
Код (поиск) | То же | Строка(9) | То же |
Наименование | То же | Строка(25) | То же |
Правило обмена:
<!--Справочник: РолиКонтактныхЛиц-->
<Правило>
<Код>РолиКонтактныхЛиц</Код>
<Источник>СправочникСсылка.РолиКонтактныхЛиц</Источник>
<Приемник>СправочникСсылка.РолиКонтактныхЛиц</Приемник>
<Свойства>
<Свойство Поиск="true">
<Источник Имя="Код" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Код" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
</Свойство>
</Свойства>
<Правило>
Обмен Справочник.БанковскиеСчета - Справочник.БанковскиеСчета:
Реквизит БП | Реквизит УПП | Тип в БП | Тип в УПП |
---|---|---|---|
Код (поиск) | То же | Строка(9) | То же |
Наименование | То же | Строка(100) | То же |
Владелец (поиск) | То же | СправочникСсылка.Контрагенты, СправочникСсылка.Организации | То же |
Банк (не создавать) | То же | СправочникСсылка.Банки | То же |
БанкДляРасчетов (не создавать) | То же | СправочникСсылка.Банки | То же |
ВалютаДенежныхСредств (не создавать) | То же | СправочникСсылка.Валюты | То же |
ВидСчета | То же | Строка(15) | То же |
ДатаОткрытия | То же | Дата | То же |
ДатаЗакрытия | То же | Дата | То же |
НомерИДатаРазрешения | То же | Строка(30) | То же |
НомерСчета | То же | Строка(20) | То же |
МесяцПрописью | То же | Булево | То же |
СуммаБезКопее | То же | Булево | То же |
ТекстКорреспондента | То же | Строка(0) | То же |
ТекстНазначения | То же | Строка(0) | То же |
Правило обмена:
<!-- Справочник: Банковские счета-->
<Правило>
<Код>БанковскиеСчета</Код>
<Источник>СправочникСсылка.БанковскиеСчета</Источник>
<Приемник>СправочникСсылка.БанковскиеСчета</Приемник>
<ПослеЗагрузки>
если не значениеЗаполнено(объект.ВалютаДенежныхСредств) тогда
// 643 - код валюты Российский рубль
объект.ВалютаДенежныхСредств = справочники.Валюты.найтиПоКоду("643");
конецЕсли;
</ПослеЗагрузки>
<Свойства>
<Свойство Поиск="true">
<Источник Имя="Владелец" Вид="Свойство"/>
<Приемник Имя="Владелец" Вид="Свойство"/>
</Свойство>
<Свойство Поиск="true">
<Источник Имя="Код" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Код" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Банк" Вид="Реквизит" Тип="СправочникСсылка.Банки"/>
<Приемник Имя="Банк" Вид="Реквизит" Тип="СправочникСсылка.Банки"/>
<КодПравилаКонвертации>Банки</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="БанкДляРасчетов" Вид="Реквизит" Тип="СправочникСсылка.Банки"/>
<Приемник Имя="БанкДляРасчетов" Вид="Реквизит" Тип="СправочникСсылка.Банки"/>
<КодПравилаКонвертации>Банки</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="ВалютаДенежныхСредств" Вид="Реквизит" Тип="СправочникСсылка.Валюты"/>
<Приемник Имя="ВалютаДенежныхСредств" Вид="Реквизит" Тип="СправочникСсылка.Валюты"/>
<КодПравилаКонвертации>Валюты</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="ВидСчета" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="ВидСчета" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="ДатаОткрытия" Вид="Реквизит" Тип="Дата"/>
<Приемник Имя="ДатаОткрытия" Вид="Реквизит" Тип="Дата"/>
</Свойство>
<Свойство>
<Источник Имя="ДатаЗакрытия" Вид="Реквизит" Тип="Дата"/>
<Приемник Имя="ДатаЗакрытия" Вид="Реквизит" Тип="Дата"/>
</Свойство>
<Свойство>
<Источник Имя="НомерИДатаРазрешения" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="НомерИДатаРазрешения" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="НомерСчета" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="НомерСчета" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="ДатаОткрытия" Вид="Реквизит" Тип="Дата"/>
<Приемник Имя="ДатаОткрытия" Вид="Реквизит" Тип="Дата"/>
</Свойство>
<Свойство>
<Источник Имя="НомерСчета" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="НомерСчета" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="МесяцПрописью" Вид="Реквизит" Тип="Булево"/>
<Приемник Имя="МесяцПрописью" Вид="Реквизит" Тип="Булево"/>
</Свойство>
<Свойство>
<Источник Имя="СуммаБезКопеек" Вид="Реквизит" Тип="Булево"/>
<Приемник Имя="СуммаБезКопеек" Вид="Реквизит" Тип="Булево"/>
</Свойство>
<Свойство>
<Источник Имя="ТекстКорреспондента" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="ТекстКорреспондента" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="ТекстНазначения" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="ТекстНазначения" Вид="Реквизит" Тип="Строка"/>
</Свойство>
</Свойства>
</Правило>
Справочник Организации должен быть заполнен и в БП, и УПП. Поиск выполняется по Наименованию. Справочники Валюты и Банки заполняются в БП и УПП из соответствующих классификаторов. В правилах обмена обеспечивается их поиск без обновления данных (теги НеЗамещать и НеСоздаватьЕслиНеНайден используются со значением true).
Поиск организации:
<!--Справочник: Организации-->
<Правило>
<Код>Организации</Код>
<Источник>СправочникСсылка.Организации</Источник>
<Приемник>СправочникСсылка.Организации</Приемник>
<НеЗамещать>true</НеЗамещать>
<НеСоздаватьЕслиНеНайден>true</НеСоздаватьЕслиНеНайден>
<Свойства>
<Свойство Поиск = "true">
<Источник Имя = "Код" Вид = "Свойство" Тип = "Строка"/>
<Приемник Имя = "Код" Вид = "Свойство" Тип = "Строка"/>
</Свойство>
</Свойства>
</Правило>
Поиск валюты:
<!--Справочник: Валюты-->
<Правило>
<Код>Валюты</Код>
<Источник>СправочникСсылка.Валюты</Источник>
<Приемник>СправочникСсылка.Валюты</Приемник>
<НеЗамещать>true</НеЗамещать>
<НеСоздаватьЕслиНеНайден>true</НеСоздаватьЕслиНеНайден>
<Свойства>
<Свойство Поиск = "true">
<Источник Имя = "Код" Вид = "Свойство" Тип = "Строка"/>
<Приемник Имя = "Код" Вид = "Свойство" Тип = "Строка"/>
</Свойство>
</Свойства>
</Правило>
Поиск банка:
<!--Справочник: Банки-->
<Правило>
<Код>Банки</Код>
<НеЗамещать>true</НеЗамещать>
<НеСоздаватьЕслиНеНайден>true</НеСоздаватьЕслиНеНайден>
<Источник>СправочникСсылка.Банки</Источник>
<Приемник>СправочникСсылка.Банки</Приемник>
<Свойства>
<Свойство Поиск = "true">
<Источник Имя = "Код" Вид = "Свойство" Тип = "Строка"/>
<Приемник Имя = "Код" Вид = "Свойство" Тип = "Строка"/>
</Свойство>
</Свойства>
</Правило>
Выгрузка договора выполняется, если заполнен реквизит ОсновнойДоговорКонтрагента.
Обмен Справочник.ДоговорыКонтрагентов - Справочник.ДоговорыКонтрагентов:
Реквизит БП | Реквизит УПП | Тип в БП | Тип в УПП |
---|---|---|---|
Код | То же | Строка(9) | То же |
Наименование | То же | Строка(50) | То же |
Владелец (поиск) | То же | СправочникСсылка.Контрагенты | То же |
Родитель (игнорируется) | То же | СправочникСсылка.ДоговорыКонтрагентов | То же |
ЭтоГруппа (игнорируется) | То же | Булево | То же |
ВалютаВзаиморасчетов | То же | СправочникСсылка.Валюты | То же |
ВидАгентскогоДоговора | То же | ПеречислениеСсылка.ВидыАгентскихДоговоров | То же |
ВидВзаиморасчетов | То же | СправочникСсылка.ВидыВзаиморасчетов | То же |
ВидДоговора (поиск) | То же | ПеречислениеСсылка.ВидыДоговоровКонтрагентов | То же |
Дата | То же | Дата | То же |
Комментарий | То же | Строка(0) | То же |
НалоговыйАгентПоОплате | То же | Булево | То же |
Номер | То же | Строка(20) | То же |
Организация (поиск) (не создавать) | То же | СправочникСсылка.Организации | То же |
ПроцентКомиссионногоВознаграждения | То же | Число(5, 2) | То же |
РасчетыВУсловныхЕдиницах | То же | Булево | То же |
РеализацияНаЭкспорт | То же | Булево | То же |
СпособРасчета КомиссионногоВознаграждения | То же | ПеречислениеСсылка. СпособыРасчетаКомиссионногоВознаграждения | То же |
СрокОплаты | СрокОплатыДляРезервов ПоСомнительнымДолгам | Число(5, 2) | То же |
Тип цен | То же | СправочникСсылка.ТипыЦенНоменклатуры | То же |
УстановленСрокОплаты | УстановленСрокОплатыДляРезервов ПоСомнительнымДолгам | Булево | То же |
УчетАгентскогоНДС | То же | Булево | То же |
Для упрощения не выгружаются реквизит НаименованиеДляСчетаФактурыНаАванс типа СправочникСсылка.Номенклатура и реквизит ПорядокРегистрацииСчетовФактурНаАвансПоДоговору типа ПеречислениеСсылка.ПорядокРегистрацииСчетовФактурНаАванс.
Поиск по реквизиту ВидДоговора нужен, поскольку возможны договоры, имеющие одного родителя, в которых совпадают значения реквизитов Наименование, Организация, Владелец, но различаются значения реквизита ВидДоговора.
Правило обмена:
<!--Справочник: ДоговорыКонтрагентов-->
<Правило>
<Код>ДоговорыКонтрагентов</Код>
<Источник>СправочникСсылка.ДоговорыКонтрагентов</Источник>
<Приемник>СправочникСсылка.ДоговорыКонтрагентов</Приемник>
<ПередВыгрузкой>Отказ = Источник.ЭтоГруппа</ПередВыгрузкой>
<ПослеЗагрузки>
если не значениеЗаполнено(объект.ведениеВзаиморасчетов) и не объект.ЭтоГруппа тогда
объект.ведениеВзаиморасчетов = Перечисления.ВедениеВзаиморасчетовПоДоговорам.ПоДоговоруВЦелом;
конецЕсли;
если не значениеЗаполнено(объект.ВалютаВзаиморасчетов) и не объект.ЭтоГруппа тогда
объект.ВалютаВзаиморасчетов = справочники.Валюты.найтиПоКоду("643");
конецЕсли;
</ПослеЗагрузки>
<Свойства>
<Свойство>
<Источник Имя="Код" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Код" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство Поиск="true">
<Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство Поиск = "true">
<Источник Имя="Владелец" Вид="Свойство" Тип="СправочникСсылка.Контрагенты"/>
<Приемник Имя="Владелец" Вид="Свойство" Тип="СправочникСсылка.Контрагенты"/>
<КодПравилаКонвертации>Контрагенты</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="ВалютаВзаиморасчетов" Вид="Реквизит" Тип="СправочникСсылка.Валюты"/>
<Приемник Имя="ВалютаВзаиморасчетов" Вид="Реквизит" Тип="СправочникСсылка.Валюты"/>
<КодПравилаКонвертации>Валюты</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="ВидАгентскогоДоговора" Вид="Реквизит" Тип="ПеречислениеСсылка.ВидыАгентскихДоговоров"/>
<Приемник Имя="ВидАгентскогоДоговора" Вид="Реквизит" Тип="ПеречислениеСсылка.ВидыАгентскихДоговоров"/>
<КодПравилаКонвертации>ВидыАгентскихДоговоров</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="ВидВзаиморасчетов" Вид="Реквизит" Тип="СправочникСсылка.ВидыВзаиморасчетов "/>
<Приемник Имя="ВидВзаиморасчетов" Вид="Реквизит" Тип="СправочникСсылка.ВидыВзаиморасчетов "/>
<КодПравилаКонвертации>ВидыВзаиморасчетов</КодПравилаКонвертации>
</Свойство>
<Свойство Поиск="true">
<Источник Имя="ВидДоговора" Вид="Реквизит" Тип="ПеречислениеСсылка.ВидыДоговоровКонтрагентов"/>
<Приемник Имя="ВидДоговора" Вид="Реквизит" Тип="ПеречислениеСсылка.ВидыДоговоровКонтрагентов"/>
<КодПравилаКонвертации>ВидыДоговоровКонтрагентов</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="Дата" Вид="Реквизит" Тип="Дата"/>
<Приемник Имя="Дата" Вид="Реквизит" Тип="Дата"/>
</Свойство>
<Свойство>
<Источник Имя="Комментарий" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="Комментарий" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="НалоговыйАгентПоОплате" Вид="Реквизит" Тип="Булево"/>
<Приемник Имя="НалоговыйАгентПоОплате" Вид="Реквизит" Тип="Булево"/>
</Свойство>
<Свойство>
<Источник Имя="Номер" Вид="Реквизит" Тип="Строка"/>
<Приемник Имя="Номер" Вид="Реквизит" Тип="Строка"/>
</Свойство>
<Свойство Поиск="true">
<Источник Имя="Организация" Вид="Реквизит" Тип="СправочникСсылка.Организации"/>
<Приемник Имя="Организация" Вид="Реквизит" Тип="СправочникСсылка.Организации"/>
<КодПравилаКонвертации>Организации</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="ПроцентКомиссионногоВознаграждения" Вид="Реквизит" Тип="Число"/>
<Приемник Имя="ПроцентКомиссионногоВознаграждения" Вид="Реквизит" Тип="Число"/>
</Свойство>
<Свойство>
<Источник Имя="РасчетыВУсловныхЕдиницах" Вид="Реквизит" Тип="Булево"/>
<Приемник Имя="РасчетыВУсловныхЕдиницах" Вид="Реквизит" Тип="Булево"/>
</Свойство>
<Свойство>
<Источник Имя="РеализацияНаЭкспорт" Вид="Реквизит" Тип="Булево"/>
<Приемник Имя="РеализацияНаЭкспорт" Вид="Реквизит" Тип="Булево"/>
</Свойство>
<Свойство>
<Источник Имя = "СпособРасчетаКомиссионногоВознаграждения" Вид = "Реквизит" Тип = "ПеречислениеСсылка.СпособыРасчетаКомиссионногоВознаграждения"/>
<Приемник Имя = "СпособРасчетаКомиссионногоВознаграждения" Вид = "Реквизит" Тип = "ПеречислениеСсылка.СпособыРасчетаКомиссионногоВознаграждения"/>
</Свойство>
<Свойство>
<Источник Имя="СрокДействия" Вид="Реквизит" Тип="Дата"/>
<Приемник Имя="СрокДействия" Вид="Реквизит" Тип="Дата"/>
</Свойство>
<Свойство>
<Источник Имя="СрокОплаты" Вид="Реквизит" Тип="Число"/>
<Приемник Имя="СрокОплатыДляРезервовПоСомнительнымДолгам" Вид="Реквизит" Тип="Число"/>
</Свойство>
<Свойство>
<Источник Имя="ТипЦен" Вид="Реквизит" Тип="СправочникСсылка.ТипыЦенНоменклатуры"/>
<Приемник Имя="ТипЦен" Вид="Реквизит" Тип="СправочникСсылка.ТипыЦенНоменклатуры"/>
<КодПравилаКонвертации>ТипыЦенНоменклатуры</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="УстановленСрокОплаты" Вид="Реквизит" Тип="Булево"/>
<Приемник Имя="УстановленСрокОплатыДляРезервовПоСомнительнымДолгам" Вид="Реквизит" Тип="Булево"/>
</Свойство>
<Свойство>
<Источник Имя="УчетАгентскогоНДС" Вид="Реквизит" Тип="Булево"/>
<Приемник Имя="УчетАгентскогоНДС" Вид="Реквизит" Тип="Булево"/>
</Свойство>
</Свойства>
</Правило>
Необходим для обмена договорами контрагентов.
Обмен Справочник.ВидыВзаиморасчетов - Справочник.ВидыВзаиморасчетов:
Реквизит БП | Реквизит УПП | Тип в БП | Тип в УПП |
---|---|---|---|
Код (поиск) | То же | Строка(9) | То же |
Наименование | То же | Строка(50) | То же |
Правило обмена:
<!--Справочник: ВидыВзаиморасчетов-->
<Правило>
<Код>ВидыВзаиморасчетов</Код>
<Источник>СправочникСсылка.ВидыВзаиморасчетов</Источник>
<Приемник>СправочникСсылка.ВидыВзаиморасчетов</Приемник>
<Свойства>
<Свойство Поиск="true">
<Источник Имя="Код" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Код" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
</Свойство>
</Свойства>
</Правило>
Необходим для обмена договорами контрагентов.
Обмен Справочник.ТипыЦенНоменклатуры - Справочник.ТипыЦенНоменклатуры:
Реквизит БП | Реквизит УПП | Тип в БП | Тип в УПП |
---|---|---|---|
Код | То же | Строка(9) | То же |
Наименование (поиск) | То же | Строка(50) | То же |
ВалютаЦены | То же | СправочникСсылка.Валюты | То же |
Комментарий | То же | Строка(0) | То же |
ОкруглятьВБольшуюСторону | То же | Булево | То же |
ПорядокОкругления | То же | ПеречислениеСсылка.ПорядкиОкругления | То же |
ЦенаВключаетНДС | То же | Булево | То же |
Правило обмена:
<!--Справочник: ТипыЦенНоменклатуры-->
<Правило>
<Код>ТипыЦенНоменклатуры</Код>
<Источник>СправочникСсылка.ТипыЦенНоменклатуры</Источник>
<Приемник>СправочникСсылка.ТипыЦенНоменклатуры</Приемник>
<Свойства>
<Свойство>
<Источник Имя="Код" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Код" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство Поиск="true">
<Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="ВалютаЦены" Вид="Реквизит" Тип="СправочникСсылка.Валюты"/>
<Приемник Имя="ВалютаЦены" Вид="Реквизит" Тип="СправочникСсылка.Валюты"/>
<КодПравилаКонвертации>Валюты</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="Комментарий" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Комментарий" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="ОкруглятьВБольшуюСторону" Вид="Реквизит" Тип="Булево"/>
<Приемник Имя="ОкруглятьВБольшуюСторону" Вид="Реквизит" Тип="Булево"/>
</Свойство>
<Свойство>
<Источник Имя="ПорядокОкругления" Вид="Реквизит" Тип="ПеречислениеСсылка.ПорядкиОкругления"/>
<Приемник Имя="ПорядокОкругления" Вид="Реквизит" Тип="ПеречислениеСсылка.ПорядкиОкругления"/>
<КодПравилаКонвертации>ПорядкиОкругления</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="ЦенаВключаетНДС" Вид="Реквизит" Тип="Булево"/>
<Приемник Имя="ЦенаВключаетНДС" Вид="Реквизит" Тип="Булево"/>
</Свойство>
</Свойства>
</Правило>
Для реализации правила нужен Обмен Перечисление.ПорядкиОкругления - Перечисление.ПорядкиОкругления:
<!--Перечисление: ПорядкиОкругления-->
<Правило>
<Код>ПорядкиОкругления</Код>
<Источник>ПеречислениеСсылка.ПорядкиОкругления</Источник>
<Приемник>ПеречислениеСсылка.ПорядкиОкругления</Приемник>
<Значения>
<Значение>
<Источник>Окр0_01</Источник>
<Приемник>Окр0_01</Приемник>
</Значение>
<Значение>
<Источник>Окр0_05</Источник>
<Приемник>Окр0_05</Приемник>
</Значение>
<Значение>
<Источник>Окр0_1</Источник>
<Приемник>Окр0_1</Приемник>
</Значение>
<Значение>
<Источник>Окр0_5</Источник>
<Приемник>Окр0_5</Приемник>
</Значение>
<Значение>
<Источник>Окр1</Источник>
<Приемник>Окр1</Приемник>
</Значение>
<Значение>
<Источник>Окр5</Источник>
<Приемник>Окр5</Приемник>
</Значение>
<Значение>
<Источник>Окр10</Источник>
<Приемник>Окр10</Приемник>
</Значение>
<Значение>
<Источник>Окр50</Источник>
<Приемник>Окр50</Приемник>
</Значение>
<Значение>
<Источник>Окр100</Источник>
<Приемник>Окр100</Приемник>
</Значение>
</Значения>
<Правило>
Необходимо для обмена договорами контрагентов.
Обмен Перечисление.ВидыАгентскихДоговоров - Перечисление.ВидыАгентскихДоговоров:
<!--Перечисление: ВидыАгентскихДоговоров-->
<Правило>
<Код>ВидыАгентскихДоговоров</Код>
<Источник>ПеречислениеСсылка.ВидыАгентскихДоговоров</Источник>
<Приемник>ПеречислениеСсылка.ВидыАгентскихДоговоров</Приемник>
<Значения>
<Значение>
<Источник>Аренда</Источник>
<Приемник>Аренда</Приемник>
</Значение>
<Значение>
<Источник>РеализацияИмущества</Источник>
<Приемник>РеализацияИмущества</Приемник>
</Значение>
<Значение>
<Источник>Нерезидент</Источник>
<Приемник>Нерезидент</Приемник>
</Значение>
</Значения>
<Правило>
Необходимо для обмена договорами контрагентов.
Обмен Перечисление.ВидыДоговоровКонтрагентов - Перечисление.ВидыДоговоровКонтрагентов:
<!--Перечисление: ВидыДоговоровКонтрагентов-->
<Правило>
<Код>ВидыДоговоровКонтрагентов</Код>
<Источник>ПеречислениеСсылка.ВидыДоговоровКонтрагентов</Источник>
<Приемник>ПеречислениеСсылка.ВидыДоговоровКонтрагентов</Приемник>
<Значения>
<Значение>
<Источник>Прочее</Источник>
<Приемник>Прочее</Приемник>
</Значение>
<Значение>
<Источник>СКомиссионером</Источник>
<Приемник>СКомиссионером</Приемник>
</Значение>
<Значение>
<Источник>СКомитентом</Источник>
<Приемник>СКомитентом</Приемник>
</Значение>
<Значение>
<Источник>СПокупателем</Источник>
<Приемник>СПокупателем</Приемник>
</Значение>
<Значение>
<Источник>СПоставщиком</Источник>
<Приемник>СПоставщиком</Приемник>
</Значение>
</Значения>
</Правило>
Необходимо для обмена договорами контрагентов.
Обмен Перечисление.СпособыРасчетаКомиссионногоВознаграждения - Перечисление.СпособыРасчетаКомиссионногоВознаграждения:
<!--Перечисление: СпособыРасчетаКомиссионногоВознаграждения-->
<Правило>
<Код>СпособыРасчетаКомиссионногоВознаграждения</Код>
<Источник>ПеречислениеСсылка.СпособыРасчетаКомиссионногоВознаграждения</Источник>
<Приемник>ПеречислениеСсылка.СпособыРасчетаКомиссионногоВознаграждения</Приемник>
<Значения>
<Значение>
<Источник>НеРассчитывается</Источник>
<Приемник>НеРассчитывается</Приемник>
</Значение>
<Значение>
<Источник>ПроцентОтРазностиСуммПродажиИПоступления</Источник>
<Приемник>ПроцентОтРазностиСуммПродажиИПоступления</Приемник>
</Значение>
<Значение>
<Источник>ПроцентОтСуммыПродажи</Источник>
<Приемник>ПроцентОтСуммыПродажи</Приемник>
</Значение>
</Значения>
</Правило>
Необходимо для правила Контрагенты.
Обмен Перечисление.ЮрФизЛицо - Перечисление.ЮрФизЛицо:
<!--Перечисление: ЮрФизЛицо-->
<Правило>
<Код>ЮрФизЛицо</Код>
<Источник>ПеречислениеСсылка.ЮрФизЛицо</Источник>
<Приемник>ПеречислениеСсылка.ЮрФизЛицо</Приемник>
<Значения>
<Значение>
<Источник>ФизЛицо</Источник>
<Приемник>ФизЛицо</Приемник>
</Значение>
<Значение>
<Источник>ЮрЛицо</Источник>
<Приемник>ЮрЛицо</Приемник>
</Значение>
</Значения>
</Правило>
Выгружаются записи регистра, имеющие значение измерения Объект типа СправочникСсылка.КонтактныеЛица или СправочникСсылка.Контрагенты. В случае второго типа выгружаются записи регистра для контрагентов, входящих в указанную группу. Такая фильтрация обеспечивается заданным в правилах выгрузки данных обработчиком ПередВыгрузкойОбъекта. Правило обмена регистра формируются аналогично правилам обмена справочника.
Обмен РегистрСведений.КонтактнаяИнформация - РегистрСведений.КонтактнаяИнформация:
<!--Регистр: КонтактнаяИнформация-->
<Правило>
<Код>КонтактнаяИнформация</Код>
<НеЗапоминатьВыгруженные>true</НеЗапоминатьВыгруженные>
<Источник>РегистрСведенийЗапись.КонтактнаяИнформация</Источник>
<Приемник>РегистрСведенийЗапись.КонтактнаяИнформация</Приемник>
<Свойства>
<Свойство>
<Источник Имя="Активность" Вид="Свойство" Тип="Булево"/>
<Приемник Имя="Активность" Вид="Свойство" Тип="Булево"/>
</Свойство>
<Свойство>
<Источник Имя="Вид" Вид="Измерение"/>
<Приемник Имя="Вид" Вид="Измерение"/>
</Свойство>
<Свойство>
<Источник Имя="ЗначениеПоУмолчанию" Вид="Ресурс" Тип="Булево"/>
<Приемник Имя="ЗначениеПоУмолчанию" Вид="Ресурс" Тип="Булево"/>
</Свойство>
<Свойство>
<Источник Имя="Комментарий" Вид="Ресурс" Тип="Строка"/>
<Приемник Имя="Комментарий" Вид="Ресурс" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Объект" Вид="Измерение"/>
<Приемник Имя="Объект" Вид="Измерение"/>
</Свойство>
<Свойство>
<Источник Имя="Поле1" Вид="Ресурс" Тип="Строка"/>
<Приемник Имя="Поле1" Вид="Ресурс" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Поле10" Вид="Ресурс" Тип="Строка"/>
<Приемник Имя="Поле10" Вид="Ресурс" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Поле2" Вид="Ресурс" Тип="Строка"/>
<Приемник Имя="Поле2" Вид="Ресурс" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Поле3" Вид="Ресурс" Тип="Строка"/>
<Приемник Имя="Поле3" Вид="Ресурс" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Поле4" Вид="Ресурс" Тип="Строка"/>
<Приемник Имя="Поле4" Вид="Ресурс" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Поле5" Вид="Ресурс" Тип="Строка"/>
<Приемник Имя="Поле5" Вид="Ресурс" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Поле6" Вид="Ресурс" Тип="Строка"/>
<Приемник Имя="Поле6" Вид="Ресурс" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Поле7" Вид="Ресурс" Тип="Строка"/>
<Приемник Имя="Поле7" Вид="Ресурс" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Поле8" Вид="Ресурс" Тип="Строка"/>
<Приемник Имя="Поле8" Вид="Ресурс" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Поле9" Вид="Ресурс" Тип="Строка"/>
<Приемник Имя="Поле9" Вид="Ресурс" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Представление" Вид="Ресурс" Тип="Строка"/>
<Приемник Имя="Представление" Вид="Ресурс" Тип="Строка"/>
</Свойство>
<Свойство>
<Порядок>850</Порядок>
<Источник Имя="Тип" Вид="Измерение" Тип="ПеречислениеСсылка.ТипыКонтактнойИнформации"/>
<Приемник Имя="Тип" Вид="Измерение" Тип="ПеречислениеСсылка.ТипыКонтактнойИнформации"/>
<КодПравилаКонвертации>ТипыКонтактнойИнформации</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="ТипДома" Вид="Ресурс" Тип="ПеречислениеСсылка.ТипыДомов"/>
<Приемник Имя="ТипДома" Вид="Ресурс" Тип="ПеречислениеСсылка.ТипыДомов"/>
<КодПравилаКонвертации>ТипыДомов</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="ТипКвартиры" Вид="Ресурс" Тип="ПеречислениеСсылка.ТипыКвартир"/>
<Приемник Имя="ТипКвартиры" Вид="Ресурс" Тип="ПеречислениеСсылка.ТипыКвартир"/>
<КодПравилаКонвертации>ТипыКвартир</КодПравилаКонвертации>
</Свойство>
<Свойство>
<Источник Имя="ТипКорпуса" Вид="Ресурс" Тип="ПеречислениеСсылка.ТипыКорпусов"/>
<Приемник Имя="ТипКорпуса" Вид="Ресурс" Тип="ПеречислениеСсылка.ТипыКорпусов"/>
<КодПравилаКонвертации>ТипыКорпусов</КодПравилаКонвертации>
</Свойство>
</Свойства>
</Правило>
Правило требует задания следующих обменов.
Обмен Справочник.ВидыКонтактнойИнформации - Справочник.ВидыКонтактнойИнформации:
<!--Справочник: ВидыКонтактнойИнформации-->
<Правило>
<Код>ВидыКонтактнойИнформации</Код>
<СинхронизироватьПоИдентификатору>true</СинхронизироватьПоИдентификатору>
<Источник>СправочникСсылка.ВидыКонтактнойИнформации</Источник>
<Приемник>СправочникСсылка.ВидыКонтактнойИнформации</Приемник>
<Свойства>
<Свойство Поиск="true">
<Источник Имя="Код" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Код" Вид="Свойство" Тип="Строка"/>
</Свойство>
<Свойство>
<Источник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
<Приемник Имя="Наименование" Вид="Свойство" Тип="Строка"/>
</Свойство>
</Свойства>
<Значения>
<Значение>
<Источник>EmailОрганизации</Источник>
<Приемник>EmailОрганизации</Приемник>
</Значение>
<Значение>
<Источник>EmailФизЛица</Источник>
<Приемник>EmailФизЛица</Приемник>
</Значение>
<Значение>
<Источник>АдресИнострОрганизацииУчред</Источник>
<Приемник>АдресИнострОрганизацииУчред</Приемник>
</Значение>
<Значение>
<Источник>АдресОрганизацииПочтовый</Источник>
<Приемник>АдресОрганизацииПочтовый</Приемник>
</Значение>
<Значение>
<Источник>ИнострАдресФизЛица</Источник>
<Приемник>ИнострАдресФизЛица</Приемник>
</Значение>
<Значение>
<Источник>ИнформАдресФизЛица</Источник>
<Приемник>ИнформАдресФизЛица</Приемник>
</Значение>
<Значение>
<Источник>СлужебныйАдресЭлектроннойПочтыПользователя</Источник>
<Приемник>СлужебныйАдресЭлектроннойПочтыПользователя</Приемник>
</Значение>
<Значение>
<Источник>ТелефонКонтрагента</Источник>
<Приемник>ТелефонКонтрагента</Приемник>
</Значение>
<Значение>
<Источник>ТелефонОрганизации</Источник>
<Приемник>ТелефонОрганизации</Приемник>
</Значение>
<Значение>
<Источник>ТелефонПоЮрАдресуОрганизации</Источник>
<Приемник>ТелефонПоЮрАдресуОрганизации</Приемник>
</Значение>
<Значение>
<Источник>ТелефонФизЛица</Источник>
<Приемник>ТелефонФизЛица</Приемник>
</Значение>
<Значение>
<Источник>ФаксОрганизации</Источник>
<Приемник>ФаксОрганизации</Приемник>
</Значение>
<Значение>
<Источник>ФактАдресКонтрагента</Источник>
<Приемник>ФактАдресКонтрагента</Приемник>
</Значение>
<Значение>
<Источник>ФактАдресОрганизации</Источник>
<Приемник>ФактАдресОрганизации</Приемник>
</Значение>
<Значение>
<Источник>ФактАдресФизЛица</Источник>
<Приемник>ФактАдресФизЛица</Приемник>
</Значение>
<Значение>
<Источник>ЮрАдресКонтрагента</Источник>
<Приемник>ЮрАдресКонтрагента</Приемник>
</Значение>
<Значение>
<Источник>ЮрАдресОрганизации</Источник>
<Приемник>ЮрАдресОрганизации</Приемник>
</Значение>
<Значение>
<Источник>ЮрАдресФизЛица</Источник>
<Приемник>ЮрАдресФизЛица</Приемник>
</Значение>
</Значения>
</Правило>
Обмен Перечисление.ТипыКонтактнойИнформации - Перечисление.ТипыКонтактнойИнформации:
<!--Перечисление: ТипыКонтактнойИнформации-->
<Правило>
<Код>ТипыКонтактнойИнформации</Код>
<Источник>ПеречислениеСсылка.ТипыКонтактнойИнформации</Источник>
<Приемник>ПеречислениеСсылка.ТипыКонтактнойИнформации</Приемник>
<Значения>
<Значение>
<Источник>Адрес</Источник>
<Приемник>Адрес</Приемник>
</Значение>
<Значение>
<Источник>АдресЭлектроннойПочты</Источник>
<Приемник>АдресЭлектроннойПочты</Приемник>
</Значение>
<Значение>
<Источник>ВебСтраница</Источник>
<Приемник>ВебСтраница</Приемник>
</Значение>
<Значение>
<Источник>Другое</Источник>
<Приемник>Другое</Приемник>
</Значение>
<Значение>
<Источник>Телефон</Источник>
<Приемник>Телефон</Приемник>
</Значение>
</Значения>
</Правило>
Обмен Перечисление.ТипыДомов - Перечисление.ТипыДомов:
<!--Перечисление: ТипыДомов-->
<Правило>
<Код>ТипыДомов</Код>
<Источник>ПеречислениеСсылка.ТипыДомов</Источник>
<Приемник>ПеречислениеСсылка.ТипыДомов</Приемник>
<Значения>
<Значение>
<Источник>Владение</Источник>
<Приемник>Владение</Приемник>
</Значение>
<Значение>
<Источник>Дом</Источник>
<Приемник>Дом</Приемник>
</Значение>
</Значения>
</Правило>
Обмен Перечисление.ТипыКвартир - Перечисление.ТипыКвартир:
<!--Перечисление: ТипыКвартир-->
<Правило>
<Код>ТипыКвартир</Код>
<Источник>ПеречислениеСсылка.ТипыКвартир</Источник>
<Приемник>ПеречислениеСсылка.ТипыКвартир</Приемник>
<Значения>
<Значение>
<Источник>Квартира</Источник>
<Приемник>Квартира</Приемник>
</Значение>
<Значение>
<Источник>Офис</Источник>
<Приемник>Офис</Приемник>
</Значение>
</Значения>
</Правило>
Обмен Перечисление.ТипыКорпусов - Перечисление.ТипыКорпусов:
<!--Перечисление: ТипыКорпусов-->
<Правило>
<Код>ТипыКорпусов</Код>
<Источник>ПеречислениеСсылка.ТипыКорпусов</Источник>
<Приемник>ПеречислениеСсылка.ТипыКорпусов</Приемник>
<Значения>
<Значение>
<Источник>Корпус</Источник>
<Приемник>Корпус</Приемник>
</Значение>
<Значение>
<Источник>Строение</Источник>
<Приемник>Строение</Приемник>
</Значение>
</Значения>
</Правило>
В приводимом ниже xml-файле вместо трех точек ставится соответствующий xml-код.
<ПравилаОбмена>
<Ид>Example</Ид>
<Источник>БухгалтерияПредприятия</Источник>
<Приемник>УправлениеПроизводственнымПредприятием</Приемник>
<ПравилаКонвертацииОбъектов>
<!--Справочники-->
<Группа>
<!--Справочник: Контрагенты-->
...
<!--Справочник: КонтактныеЛица-->
...
<!--Справочник: КонтактныеЛицаКонтрагентов-->
...
<!--Справочник: РолиКонтактныхЛиц-->
...
<!-- Справочник: Банковские счета-->
...
<!--Справочник: Организации-->
...
<!--Справочник: Валюты-->
...
<!--Справочник: Банки-->
...
<!--Справочник: ДоговорыКонтрагентов-->
...
<!--Справочник: ВидыВзаиморасчетов-->
...
<!--Справочник: ТипыЦенНоменклатуры-->
...
<!--Справочник: ВидыКонтактнойИнформации-->
...
</Группа>
<!--Регистр КИ-->
<Группа>
...
</Группа>
<!--Перечисления-->
<Группа>
<!--Перечисление: ПорядкиОкругления-->
...
<!--Перечисление: ВидыАгентскихДоговоров-->
...
<!--Перечисление: ВидыДоговоровКонтрагентов-->
...
<!--Перечисление: СпособыРасчетаКомиссионногоВознаграждения-->
...
<!--Перечисление: ЮрФизЛицо-->
...
<!--Перечисление: ТипыКонтактнойИнформации-->
...
<!--Перечисление: ТипыДомов-->
...
<!--Перечисление: ТипыКвартир-->
...
<!--Перечисление: ТипыКорпусов-->
...
</Группа>
</ПравилаКонвертацииОбъектов>
<ПравилаВыгрузкиДанных>
<Группа>
<Наименование>Контрагенты</Наименование>
<Правило>
<Наименование>КонтактныеЛица</Наименование>
<КодПравилаКонвертации>КонтактныеЛица</КодПравилаКонвертации>
<СпособОтбораДанных>СтандартнаяВыборка</СпособОтбораДанных>
<ОбъектВыборки>СправочникСсылка.КонтактныеЛица</ОбъектВыборки>
<ПередВыгрузкойОбъекта>отказ = объект.ПометкаУдаления</ПередВыгрузкойОбъекта>
</Правило>
<Правило>
<Наименование>Контрагенты</Наименование>
<КодПравилаКонвертации>Контрагенты</КодПравилаКонвертации>
<СпособОтбораДанных>СтандартнаяВыборка</СпособОтбораДанных>
<ОбъектВыборки>СправочникСсылка.Контрагенты</ОбъектВыборки>
<ПередВыгрузкойОбъекта>
отказ = объект.ПометкаУдаления;
если не отказ тогда отказ = не объект.родитель.наименование = "Учредители" конецЕсли;
если не отказ и не объект.этоГруппа и пустаяСтрока(объект.ИНН) тогда отказ = истина конецЕсли;
</ПередВыгрузкойОбъекта>
</Правило>
<Правило>
<Наименование>Регистр КИ</Наименование>
<КодПравилаКонвертации>КонтактнаяИнформация</КодПравилаКонвертации>
<СпособОтбораДанных>СтандартнаяВыборка</СпособОтбораДанных>
<ОбъектВыборки>РегистрСведенийЗапись.КонтактнаяИнформация</ОбъектВыборки>
<ПередВыгрузкойОбъекта>
бкт = объект.объект;
отказ = типЗнч(бкт) = тип("СправочникСсылка.ПодразделенияОрганизаций") или
типЗнч(бкт) = тип("СправочникСсылка.Пользователи") или
типЗнч(бкт) = тип("СправочникСсылка.Организации") или
типЗнч(бкт) = тип("СправочникСсылка.ФизическиеЛица");
если не отказ и типЗнч(бкт) = тип("СправочникСсылка.Контрагенты") тогда
отказ = не бкт.родитель.наименование = "Учредители" или пустаяСтрока(бкт.ИНН)
конецЕсли;
</ПередВыгрузкойОбъекта>
</Правило>
</Группа>
</ПравилаВыгрузкиДанных>
</ПравилаОбмена>
После загрузки правил в обработке Универсальный обмен данными в формате XML ее вкладка Выгружаемые данные будет иметь приведенный на рис. 1 вид.
Рис. 1. Выгружаемые данные
Проверка правил обмена показала, что все данные переносятся из БП в УПП адекватно. Присутствующие в правилах обработчики ПередВызрузкой, ПередВыгрузкойОбъекта обеспечивают фильтрацию данных, а обработчики ПослеЗагрузки – определение значений реквизитов объектов УПП, отсутствующих в БП.
В [1] при выгрузке иерархических справочников предлагается задавать обработчик, определяющий строку имен свойств, по значениям которых при загрузке выполняется поиск:
<ПоследовательностьПолейПоиска>
если номерВариантаПоиска = 1 тогда
строкаИменСвойствПоиска = "ИНН"
иначе
строкаИменСвойствПоиска = "Родитель, Наименование, ЭтоГруппа"
конецЕсли;
</ПоследовательностьПолейПоиска>
В приведенных правилах такой обработчик не используется.
Приводятся в алфавитном порядке: