|
Конвертация данных, ВыгрузитьПоПравилу, РС СоответствиеОбъектовИнформационныхБаз | ☑ | ||
---|---|---|---|---|
0
lg2marvel
02.03.21
✎
11:49
|
Всем привет. Старая тема немного потеряла актуальность, вопрос пока не решен, прошу помощи повтороно.
Конвертация данных. Задача из документа источника (поступление товаров услуг) передавать в документ приемник (некий документ операция упр), документы по своей структуре различаются. Способ решения: в ПВД ПослуплениеТоваровУслуг в обработчике ПередВыгрузкой собираются данные из документа источника в структуру ВходящиеДанные и в конце // выгружаем в ПКО ОперацияУПР ВыгрузитьПоПравилу(Объект.Ссылка,,ВходящиеДанные,,"ОперацияУПР"); // прерываем дальнейшую обработку Отказ = Истина; ПКО ОперацияУПР все свойства получаем из входящих данных. В итоге - документ обменом передается, документы снимаются с регистрации при повторном запуске, т.е. механизм работает. В базе приемнике в регистре СоответствиеОбъектовИнформационныхБаз создается запись, где указаны ссылки, но не заполняется тип приемника. И при обмене в базе источнике ошибка в журнале регистрации: Значение не является значением объектного типа (Менеджер) {Обработка.КонвертацияОбъектовИнформационныхБаз.МодульОбъекта(8978)}: УникальныйИдентификаторИсточника = СтруктураСвойств.Менеджер.ПолучитьСсылку(УникальныйИдентификаторИсточника); источник ошибки из отладчика: Обработка.КонвертацияОбъектовИнформационныхБаз Функция ПрочитатьИнформациюОРегистрацииОбъекта() // Присваиваем ПЕРЕКРЕСТНЫЕ значения переменным; РС симметричен. УникальныйИдентификаторПриемника = одАтрибут(ФайлОбмена, ТипСтрока, "УникальныйИдентификаторИсточника"); УникальныйИдентификаторИсточника = одАтрибут(ФайлОбмена, ТипСтрока, "УникальныйИдентификаторПриемника"); ТипПриемника = одАтрибут(ФайлОбмена, ТипСтрока, "ТипИсточника"); ТипИсточника = одАтрибут(ФайлОбмена, ТипСтрока, "ТипПриемника"); ПустойНабор = одАтрибут(ФайлОбмена, ТипБулево, "ПустойНабор"); Идентификаторы есть, ТипПриемника есть, ТипИсточника - нет |
|||
1
Ёпрст
02.03.21
✎
11:53
|
(0) а обмен через чего хоть ? через универсальнуюзагрузкувыгрузку или обменчерез планы обмена ?
|
|||
2
lg2marvel
02.03.21
✎
11:57
|
(1) через планы обмена, конвертация 2.1
|
|||
3
Ёпрст
02.03.21
✎
12:00
|
(2) если через планы обмена, то ПВД там вообще не учитываются.. только для какой-то версии бсп пвд работают.
|
|||
4
Ёпрст
02.03.21
✎
12:01
|
И.. проще ЭТО сделать через ПКО .
|
|||
5
lg2marvel
02.03.21
✎
12:03
|
(3) (4) Сделаю тест через ПКО, но не уверен что-то изменится
|
|||
6
lg2marvel
02.03.21
✎
12:07
|
(4) почитал описание обработчика, да, возможно, попробую. Спасибо
|
|||
7
Pro-tone
02.03.21
✎
12:13
|
(3) все зависит от того что стоит в ПВД в "Способ выборки". Если "произвольный алгоритм" то учитывается. Выборка по планам обмена идет если в ПВД стоит "Стандартная выборка".
|
|||
8
lg2marvel
02.03.21
✎
12:15
|
(7) да, произвольный алгоритм
|
|||
9
Ёпрст
02.03.21
✎
13:43
|
(7) ээ..так что учитывается, а что не учитывается то в итоге ?
|
|||
10
Ёпрст
02.03.21
✎
13:43
|
)
|
|||
11
lg2marvel
02.03.21
✎
14:52
|
(9) если старндартная выборка - не учитывается
Если произвольный алгоритм - учитывается, можно задать свой запрос для выборки данных Переделал через ПКО, пока в процессе отладки заполнения свойств |
|||
12
lg2marvel
02.03.21
✎
15:40
|
все ок, переделал через ПКО
|
|||
13
lg2marvel
02.03.21
✎
15:40
|
спасибо
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |