|
Обмен БП УТ | ☑ | ||
---|---|---|---|---|
0
men47
24.12.14
✎
13:10
|
Ситуация такая, нужно организовать синхронизацию из БП в УТ определенных справочников и документов, но они не типовые. Есть правила переноса из БП в УТ.
Я создал в обратную сторону(т.к. синхронизация просит и в обратную сторону) и создал Правила регистраций объектов. Залез в Планы обмена и решил изменить стандартные правила обмена, добавил туда не типовые объекты, которые нужно переносить. В Правилах регистрации объекта и в Планах обмена выставил "Авторегистрация" = Разрешить. Если не пробегаться обработкой "Регистрация изменений для обмена данными". То ошибок никаких и, естественно, выгрузки/загрузки не какой. А после регистрации обработкой, выдает вот такую ошибку. ВНЕШНЕЕ СОЕДИНЕНИЕ: {Обработка.КонвертацияОбъектовИнформационныхБаз.МодульОбъекта(9596)}: Ошибка при записи документа: Выпуск продукции 000001286 от 01.12.2014 8:00:00. Описание ошибки: {Обработка.КонвертацияОбъектовИнформационныхБаз.МодульОбъекта(1576)}: Ошибка записи объекта ТипОбъекта = Выпуск продукции Объект = Выпуск продукции 000001286 от 01.12.2014 8:00:00 ОписаниеОшибки = Ошибка при вызове метода контекста (Записать) НаборЗаписей.Записать(); по причине: Ошибка при выполнении обработчика - 'ПередЗаписью' по причине: {РегистрСведений.СоответствияОбъектовИнформационныхБаз.МодульНабораЗаписей(32)}: Ошибка при вызове метода контекста (Добавить) НаборЗаписей.Записать(); по причине: Несоответствие типов (параметр номер '1') ПозицияМодуля = ОбщийМодуль.ОбменДаннымиСервер.Модуль(8083) КСообщенияОбОшибках = 26 ВызватьИсключение СтрокаСообщения; Я понимаю, что синхронизация не может зарегистрировать в регистре запись, но, я не могу понять почему.... и отладить не знаю как.... Подскажите, что я упустил, или как мне это отладить |
|||
1
men47
24.12.14
✎
13:31
|
up=(
|
|||
2
Shrek_yar
24.12.14
✎
13:42
|
в правила регистрации добавил их? добавил в состав обмена новые объекты?
|
|||
3
men47
24.12.14
✎
13:51
|
(2) да, конечно.. но только правила регистрации я добавлял в ручную, т.е. открыл типовой xml редактором, убрал то, что не нужно, добавил то, что нужно=)
|
|||
4
men47
24.12.14
✎
13:52
|
||||
5
Godofsin
24.12.14
✎
13:53
|
ОбщийМодуль.ОбменДаннымиСервер.Модуль(8083) - ни о чем тебе не говорит?
|
|||
6
Godofsin
24.12.14
✎
13:55
|
И вот это Ошибка при выполнении обработчика - 'ПередЗаписью'
|
|||
7
men47
24.12.14
✎
14:04
|
(5) (6) попытался отладить эти места... ничего особенного не нашел...
а "ПередЗаписью" это уже в самом регистре... он спотыкается на этой строчки ОбменДанными.Получатели.Добавить(Отбор.УзелИнформационнойБазы.Значение); |
|||
8
men47
24.12.14
✎
14:23
|
(5) скажем так ни о чем не говорит, т.к. тут идет запись в регистр об успешном или не успешном обмене....
(6) это в самом регистре {РегистрСведений.СоответствияОбъектовИнформационныхБаз.МодульНабораЗаписей(32)}: Ошибка при вызове метода контекста (Добавить) я эту часть не могу никак отладить... Подскажи поподробнее, пожалуйста... |
|||
9
men47
24.12.14
✎
14:35
|
up....
|
|||
10
men47
24.12.14
✎
14:40
|
up......
|
|||
11
AlexITGround
24.12.14
✎
15:06
|
Что у тебя находится в параметре 1?
|
|||
12
men47
24.12.14
✎
15:49
|
(11) вот как раз и я не знаю что 1с туда передает... Ибо я не могу то место отладить через точку останова... Т к идет подключение и это, как я понял, отрабатывается внешнем соединением. Вот я и спрашиваю, кто что знает... Т к уже не первый день сижу воюю
|
|||
13
Shrek_yar
24.12.14
✎
16:00
|
(3)какие объеты добавил?
|
|||
14
men47
24.12.14
✎
16:10
|
(13) добавил 1 документ и шт 5-7 справочников
|
|||
15
men47
24.12.14
✎
16:29
|
(13) т.е. такая ошибка возникает не только с документом, но и со справочниками, когда я их зарегистрирую и пытаюсь синхронизовать...
В конфигурациях объекты созданы идентичны.. Вот что в плане обмена у меня [URL=http://www.radikal.ru][IMG]http://s019.radikal.ru/i634/1412/a5/9b63f3c0e8f7.png[/IMG][/URL] |
|||
16
men47
24.12.14
✎
16:30
|
||||
17
men47
24.12.14
✎
17:02
|
up=((
|
|||
18
Umga2002
24.12.14
✎
17:29
|
Сапожник и пироги....
|
|||
19
men47
24.12.14
✎
18:17
|
(18) а точнее
|
|||
20
men47
24.12.14
✎
18:26
|
(18) кидаться крылатыми фразами все хороши, а вот написать что-то дельное, помочь, что-то никто не горит желанием
|
|||
21
men47
24.12.14
✎
19:15
|
Up(((
|
|||
22
hhhh
24.12.14
✎
21:53
|
обычно узел не тот пишут. проверь, не лоханулся? узел не сам себе пересылает данные?
|
|||
23
men47
24.12.14
✎
22:34
|
(22) вот что я сделал, изменил план обмена в обоих базах так как показано на картинке, и добавил узел обмена вот по этому плану обмена, загрузил свои правила обмена и правила регистрации... Я что то упустил?
|
|||
24
men47
24.12.14
✎
22:37
|
А узел не сам себе, там идет подключение к базе и если не регестрировать обработкой какие не достают документы и справочники и нажать синхронизовать, то в обоих базах пишет, что синхронизация прошла успешно, выгружено/загружено 0 и увеличивается счетчик отправленых и принятых сообщений. Если же обработкой зарегистрировать недостающие объекты в справочнике или же в документе, вылазие та ошибка, которую я указал в шапке
|
|||
25
men47
24.12.14
✎
22:39
|
И я никак не могу понять почему.... Где я ошибся, в инете есть информация только о типовых правилах, и есть такие же ошибки только с типовыми, все там пршут обновись или загрузи с обновления правила.... Но мне же это не подходит, я пытаюсь синхронизовать не типовые объекты
|
|||
26
men47
25.12.14
✎
08:00
|
Up
|
|||
27
hhhh
25.12.14
✎
09:00
|
(24) должно быть по 2 узла в каждой базе. И коды узлов должны совпадать.
|
|||
28
men47
25.12.14
✎
09:03
|
(27) естественно, в обоих 2 узла и в обоих совпадает и код и наименование.... это все понятно
|
|||
29
hhhh
25.12.14
✎
09:05
|
и зеленый кружок предопределенный узел тоже правильно стоит?
|
|||
30
men47
25.12.14
✎
09:10
|
(29) конечно, само по себе подключение есть и программа видит эти узлы, но при добавлении нового объекта, программа не может добавить в регистр сведений информацию о переданном объекте, из-за этого выходит ошибка, я не могу понять почему....
|
|||
31
hhhh
25.12.14
✎
09:13
|
(30) ну посмотрели отладчиком
ОбменДанными.Получатели.Добавить(Отбор.УзелИнформационнойБазы.Значение); ?? Что за узел там? Или пусто вообще? |
|||
32
men47
25.12.14
✎
09:37
|
(31) я еще раз пишу=)) я ставлю туда точку останова и при синхронизации он не останавливается на этом месте, на сколько я понял, программа отрабатывает данное место через COM-объект
Если бы точка отрабатывала, я бы сам увидел, что он туда запихивает... и уже сам сообразил, но я не знаю, что 1с туда запихивает=( |
|||
33
Godofsin
25.12.14
✎
09:43
|
(32) Вставь Предупреждение()
|
|||
34
men47
25.12.14
✎
10:37
|
(33) Предупредить и Сообщить вообще не канает....
я сначала закомментировал тот момент, когда происходит запись в регистр сведений. Попытался синхронизовать, все ок! синхронизация произошла документ выгрузился, но мне нужно, чтобы программа тоже понимала, что было выгружено и что не было, для этого мне нужен этот регистр. Полез дальше, создал еще 1 объект в документах, который мне нужно выгрузить, добавил в коде, чтобы была запись в журнале регистрации ЗаписьЖурналаРегистрации("Обмен данными.ОбменУправлениеТорговлейБухгалтерияПредприятия30.Узел 00.Отправка данных", УровеньЖурналаРегистрации.Информация,,, Отбор.УзелИнформационнойБазы.Значение); нажал синхронизовать.... И вот что я увидел http://s020.radikal.ru/i704/1412/bb/197666126bed.png т.е. те документы, которые он ранее загружал, он их увидел и сделал изменения в них.... далее он попытался добавить новый, но там объект не найден!! далее за ним идет то, что я ввел запись, т.е. имя узла (p.s. Отбор.УзелИнформационнойБазы.Значение) т.е. параметр он читает спокойно..... и далее происходит эта долбаная ошибка.... Кто подскажет, почему не происходит запись.... но запись спокойно происходит если я коменчу регистр... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |