Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Как записать объектXDTO в Регистр сведений ?

Как записать объектXDTO в Регистр сведений ?
Я
   SHAURMAN
 
20.12.18 - 16:03
Народ, всем привет! Подскажите, пожалуйста, есть объектXDTO как его можно сохранить в Регистр сведений?
Если есть идеи у кого-нибудь поделитесь, пожалуйста.
 
 
   mikecool
 
1 - 20.12.18 - 16:05
сериализовать в хмл и запихнуть в хранилище
   SHAURMAN
 
2 - 20.12.18 - 16:15
я потом все обратно десириализовываю и все типы в этом объекте превращаются в "Строка"

Сериализую вот так:
            
ЗаписьXML = Новый ЗаписьXML;
            
ЗаписьXML.УстановитьСтроку();
            СериализаторXDTO.ЗаписатьXML(ЗаписьXML,ОбъектXDTO);
            
ЗаписанныйОбъект = ЗаписьXML.Закрыть();
            
Сообщение = Новый ХранилищеЗначения(ЗаписанныйОбъект, Новый СжатиеДанных(9));
   Fragster
 
3 - 20.12.18 - 16:18
(2)а обратно как достаешь? так-то все работает.
   SHAURMAN
 
4 - 20.12.18 - 16:31
Как я написал так не получается
Пишет:
{ОбщийМодуль.Загрузка.Модуль(688)}: Ошибка при вызове метода контекста (ЗаписатьXML)
по причине:
Несоответствие типов (параметр номер '2') (Ошибка отображения типов)
   SHAURMAN
 
5 - 20.12.18 - 16:35
Как я писал код выше,так не получается*
   Fragster
 
6 - 20.12.18 - 16:38
надо фабрикуXDTO использовать
   Fragster
 
7 - 20.12.18 - 16:38
вместо сериализатораXDTO
   SHAURMAN
 
8 - 20.12.18 - 16:48
Потом все свойства в ОбъектеXDTO превращаются в тип "строка"

обратно достаю вот так:
    Сообщение = Сообщение.Получить();
    
    ЧтениеXML = Новый ЧтениеXML;
    ЧтениеXML.УстановитьСтроку(Сообщение);
    
    ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML);
   SHAURMAN
 
9 - 20.12.18 - 17:17
   nicxxx
 
10 - 20.12.18 - 17:18
XSD-схема нужна, чтобы при обратной процедуре типизировать поля.
 
 Рекламное место пустует
   nicxxx
 
11 - 20.12.18 - 17:19
загружаешь ее в XDTO-пакеты, главное не забудь namespace определить.
   SHAURMAN
 
12 - 20.12.18 - 17:36
все равно также все в строках(

ФабрикаВыгрузки = ФабрикаВыгрузки();
    ОбъектXDTOВыгрузки = ФабрикаВыгрузки.ПрочитатьXML(ЧтениеXML);

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует