|
Как записать объектXDTO в Регистр сведений ? |
☑ |
0
SHAURMAN
20.12.18
✎
16:03
|
Народ, всем привет! Подскажите, пожалуйста, есть объектXDTO как его можно сохранить в Регистр сведений?
Если есть идеи у кого-нибудь поделитесь, пожалуйста.
|
|
1
mikecool
20.12.18
✎
16:05
|
сериализовать в хмл и запихнуть в хранилище
|
|
2
SHAURMAN
20.12.18
✎
16:15
|
я потом все обратно десириализовываю и все типы в этом объекте превращаются в "Строка"
Сериализую вот так:
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.УстановитьСтроку();
СериализаторXDTO.ЗаписатьXML(ЗаписьXML,ОбъектXDTO);
ЗаписанныйОбъект = ЗаписьXML.Закрыть();
Сообщение = Новый ХранилищеЗначения(ЗаписанныйОбъект, Новый СжатиеДанных(9));
|
|
3
Fragster
гуру
20.12.18
✎
16:18
|
(2)а обратно как достаешь? так-то все работает.
|
|
4
SHAURMAN
20.12.18
✎
16:31
|
Как я написал так не получается
Пишет:
{ОбщийМодуль.Загрузка.Модуль(688)}: Ошибка при вызове метода контекста (ЗаписатьXML)
по причине:
Несоответствие типов (параметр номер '2') (Ошибка отображения типов)
|
|
5
SHAURMAN
20.12.18
✎
16:35
|
Как я писал код выше,так не получается*
|
|
6
Fragster
гуру
20.12.18
✎
16:38
|
надо фабрикуXDTO использовать
|
|
7
Fragster
гуру
20.12.18
✎
16:38
|
вместо сериализатораXDTO
|
|
8
SHAURMAN
20.12.18
✎
16:48
|
Потом все свойства в ОбъектеXDTO превращаются в тип "строка"
обратно достаю вот так:
Сообщение = Сообщение.Получить();
ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.УстановитьСтроку(Сообщение);
ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML);
|
|
9
SHAURMAN
20.12.18
✎
17:17
|
До:
После:
|
|
10
nicxxx
20.12.18
✎
17:18
|
XSD-схема нужна, чтобы при обратной процедуре типизировать поля.
|
|
11
nicxxx
20.12.18
✎
17:19
|
загружаешь ее в XDTO-пакеты, главное не забудь namespace определить.
|
|
12
SHAURMAN
20.12.18
✎
17:36
|
все равно также все в строках(
ФабрикаВыгрузки = ФабрикаВыгрузки();
ОбъектXDTOВыгрузки = ФабрикаВыгрузки.ПрочитатьXML(ЧтениеXML);
|
|