#0
by 80ksa
Есть простой код Валюта - реквизит формы - СправочникСсылка.Валюты После этого кода создается XML файл, в котором записана выбранная валюта со всеми реквизитами. Если нужно создать свою систему, где например, валюта сериализуется в XML не по всем реквизитам, а только по некоторым, значит логично нужно создать свой пакетXDTO, на основании него создать ФабрикуXDTO и сформировать XML, как и выше, а именно, указать Сериализатору ВалютуОбъект, которую он по правилам, имеющимся в фабрике обработает. написал код но в итоге выдает ошибку {Форма.Форма.Форма}: Ошибка при вызове метода контекста (ЗаписатьXML) Сериализатор.ЗаписатьXML(Запись, ВалютаОбъект); по причине: Несоответствие типов (параметр номер '2') (Ошибка отображения типов) Как будто бы требует, что бы тип был не СправочникОбъект, а объектXDTO кто пробовал создавать свои пакетыXDTO ,а ФабрикуXDTO программно. КАК потом происходит сериализация: способом указанным выше или заполняется каждый реквизит в отдельности?
#1
by Amiralnar
Вроде в демо конфигурации по веб сервисам - происходит заполнение каждого реквизита. Только сперва создается объект вашего типа, и на него ЗаполнитьЗначенияСвойств. Вроде так.
#2
by 80ksa
Благодарю, этот способ мне известен. Буду хитрить дальше, попробую свою фабрику создать на основе схемы XML (*.xsd)
#3
by 80ksa
Итак, воспользовавшись , имеем: А именно, записались реквизиты только те, которые соответствуют моему пакету, в нем определено два реквизита Код и Наименование у типа объекта. Но теперь не читается файл с данными, обратно не сериализует. ПРИЧИНА: Ошибка отображения типов: Отсутствует отображение для типа '{' ДЕЙСТВИТЕЛЬНО, для типа объекта Валюта в пакете Базовый тип не указан. Если его указать как CatalogObject.Валюты ИЗ , то при проверке пакета будет ошибка: Базовый тип отсутствует CatalogObject.Валюты или не определен; Если это пространство имен добавить в пакете как Директивы импорта, тогда проверка пакета удачна, но при выполнении кода ошибка даже на этапе создания фабрики Фабрика = Новый ФабрикаXDTO(НаборСхемХМЛ) --- Импортируемый пакет типов '' не определен. Ну что всех запутал, я сам запутался, подскажите еще мысли.
#4
by Amiralnar
А сериализатор у тебя на основании какой фабрики? Должен быть твой пакет XDTO, как понимаю. И прочитаешь ты РОВНО то и такого типа, что ты удачно записал в первом примере. А потом, как я понимаю, ты создаешь валюту метедом "Справочники.Валюты.СоздатьЭлемент", и в нем заполняешь свойства из прочитанного объекта методом "ЗаполнитьЗначенияСвойств" Демонстрационная конфигурация "Web-сервисы" иллюстрирует использование следующих механизмов: определение схемы данных; получение описания Web-сервиса; динамическое создание прокси Web-сервиса; статическое создание прокси Web-сервиса на основе WS-ссылки; вызов операции Web-сервиса; работу с объектами передачи данных (XDTO).
#5
by 80ksa
благодарю за советы, частично ими воспользовавшись имеем схему обмена для разнородных конфигураций через XDTO: в документе расходная накладная: После нажатия кнопки имеем файл xml (фрагмент) <Документ xmlns="http://www.sample-package.org" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> в документе приходная накладная: Где -это пакет XDTO, созданный в ветке конфигурации ОБЩИЕ, и который присутствует в конфигурации источнике и конфигурации приемнике, пакет самодостаточен, т.е. не ссылается другие пространства имен, типа
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- v8: списки xdto и объекты xdto
- 8.2. Как включить пакет XDTO в глобальную Фабрику XDTO?
- XDTO и списки XDTO. Чтение
- Сериализатор XDTO и набор записей регистра бухгалтерии
- XDTO: Как сделать свойство Типа объекта XDTO с составным типом данных
- Как сделать пакет XDTO со Списком XDTO с разнородными элементами ?
- XDTO скопировать список XDTO
- Возвращается XDTO объект вместо XDTO список в результате вызова веб сервиса
- Формирование XML с помощью XDTO (пакет XDTO)
В этой группе 1С
- Синхронизация справочников между 7.7 и 8.1
- КД. Обработчик поля поиска.
- Резервы предстоящих отпусков. Кто как решает в ЗУПе?
- БГУ Амортизация ОС
- v7: Как в рамках 7.7 перебрать файлы дерева каталогов?
- v8: СКД: вывести порядковые номера для строк результата запроса.
- Смена IP батником
- РИБ - удаление документа
- 4-ФСС не формирует (ЗУП)
- ЗуП: Перенести подзразделение из одной организации в другую
- Регистр сведений Объекты доступа документов и как от него избавиться?
- Кто нибудь в камине 3.0 место рождения сотрудника выгружал?
- v7: Изменить флаг "Пропускать при вводе" программно
- проблема с принтером zebra s4m
- Управляемое приложение, глобальные переменные
- Отчет с группировками разных сущностей по горизонтали
- Сортировка выборки ПланыОбмена.ВыбратьИзменения()
- V82.application не работает вместо V82.COMConnector
- v8: Как обратиться к метаданным документа в УФ?
- Какой должна быть дисперсия случайной величины?