Список работ

1С:Предприятие. Выгрузка контрагентов из Бухгалтерии в УПП

Содержание

Постановка задачи

Решается задача создания набора правил обмена для обработки Универсальный обмен данными в формате 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 вид.

Обработка Универсальный обмен данными в формате XML

Рис. 1. Выгружаемые данные

Заключение

Проверка правил обмена показала, что все данные переносятся из БП в УПП адекватно. Присутствующие в правилах обработчики ПередВызрузкой, ПередВыгрузкойОбъекта обеспечивают фильтрацию данных, а обработчики ПослеЗагрузки – определение значений реквизитов объектов УПП, отсутствующих в БП.
В [1] при выгрузке иерархических справочников предлагается задавать обработчик, определяющий строку имен свойств, по значениям которых при загрузке выполняется поиск:

<ПоследовательностьПолейПоиска>
 если номерВариантаПоиска = 1 тогда
  строкаИменСвойствПоиска = "ИНН"
 иначе
  строкаИменСвойствПоиска = "Родитель, Наименование, ЭтоГруппа"
 конецЕсли;
</ПоследовательностьПолейПоиска>

В приведенных правилах такой обработчик не используется.

П1. Узлы обмена

Приводятся в алфавитном порядке:

Литература

  1. Кузнецова O. Конвертация данных. М.: MyKoD.info, 2008. - 73 с.

Список работ

Рейтинг@Mail.ru