Имя: Пароль:
1C
1С v8
Обмен данными между двумя конфигурациями
0 netsurfer
 
28.01.14
10:03
Добрый день, мистяне и им сочувствующие)))
Возникла проблема.
Есть конфа БП 2.0 с дописанными своими документами.
Есть система учёта денежных средств "УДС".
В первой конфе есть документ "Счёт на оплату", во второй конфе есть документ "Заявка на расход денег"
Написаны самостоятельно правила обмена через КД.
Задача - перенести документ из базы БП в базу УДС.
Если использовать обработку "Универсальный обмен данными в формате XML 2.1.7", выгрузка-загрузка проходят успешно. Документ создаётся, проводится, все поля заполнены. То есть проблем нет.

Если правила обмена "зашить" в план обмена, то документ выгружается из  БП, но не загружается в УДС.
Идём в журнал регистрации и получаем ошибку:
Ошибка при загрузке данных: ,
<code>{Обработка.КонвертацияОбъектовИнформационныхБаз.МодульОбъекта(6630)}: Ошибка при вызове метода контекста (Выполнить): {(1, 86)}: Синтаксическая ошибка "="
ВЫБРАТЬ Ссылка ИЗ Справочник.удсСтатьиОборотовПоБюджету ГДЕ {КлючПоискаВИБИсточнике} <<?>>= &{КлючПоискаВИБИсточнике} И ЭтоГруппа = &ЭтоГруппа И Код = &Код И {ИмяТипаВИБИсточнике} = &{ИмяТипаВИБИсточнике} И {ИмяТипаВИБПриемнике} = &{ИмяТипаВИБПриемнике}
</code>

Из текста можно понять что проблема кроется при переносе поля "статья оборотов по бюджету", а конкретно в поиске.
Идём в правило, поиск по идентификаторам отключен, настроен поиск по коду и "ЭтоГруппа", в обработчике "Поля поиска" пусто.
Самое странное что, через универсальный обмен ХМL работает...

заранее спасибо за подсказки :-)
1 crazydimka
 
28.01.14
10:54
(0) справочник иерархический ?
2 netsurfer
 
28.01.14
10:57
(1) Да. Справочник и в источнике (Статьи ДДС) и в приёмнике (Статьи оборотов) иерархические и имеют иерархию групп и элементов
3 crazydimka
 
28.01.14
11:00
(2) а с правилами регистрации что ? написал ?
4 netsurfer
 
28.01.14
11:06
(3) и в источнике и в приёмнике стоит галка "авторегистрация"
5 crazydimka
 
28.01.14
11:12
а разве на уровне плана обмена не нужно заливать еще и правила регистрации объектов ? опять же той же КДшкой пишутся... я так понял ты их типовыми оставил ?
6 netsurfer
 
28.01.14
11:15
(5) Макетов правил регистрации нет. Да, получается я их оставил по умолчанию. Но если посмотреть в БП 2.0 в план обмена "полный", то там тоже нет макета правил регистрации
7 netsurfer
 
28.01.14
11:20
Для эксперимента сейчас отключил правило переноса этого реквизита. Выполнил новый обмен по новым правилам. Выгрузка из БП 2.0 прошла успешно. При загрузке в УДС та же самая ошибка, только теперь
<code>
ВЫБРАТЬ Ссылка ИЗ Справочник.Организации ГДЕ {КлючПоискаВИБИсточнике}
</code>
То есть ругается на следующий реквизит-ссылку на справочник "Организации"
8 crazydimka
 
28.01.14
11:21
(6) и работает полный без проблем так ?
9 netsurfer
 
28.01.14
11:23
Организации синхронизируются только по коду, тип данных кода строка (Ф9) и в источнике и в приёмнике
10 netsurfer
 
28.01.14
11:23
(8) да штатные обмены по плану обмена "Полный" в базе работают  без проблем
11 crazydimka
 
28.01.14
11:24
(7) КлючПоискаВИБИсточнике чем равно, смотрел по коду ?
12 netsurfer
 
28.01.14
11:40
(11) если смотреть отладчиком в обработку
Обработка.КонвертацияОбъектовИнформационныхБаз.МодульОбъекта(6630) то попадаем в
Функция НайтиЭлементЗапросом(

если сделать точку останова на Запрос.Выполнить или остановку по ошибке, то получим
КлючПоискаВИБИсточнике    {(1,1)}: Переменная не определена (КлючПоискаВИБИсточнике)
13 crazydimka
 
28.01.14
11:45
(12) и в итоге понять почему не заполняется ключ по коду не получается ? я бы делал именно так...