0
rikodroo
01.03.17
✎
12:14
|
Привет! Изучаю механизм работы с Веб сервисами и XDTO, но возник один вопрос и я пока не понял как его решить. Делаю обмен справочником номенклатуры между базами Сервер и Клиент. На Сервере сделал XDTO пакет, соответствующий Веб сервер (на подобии того, как это сделано в демобазе "WEB-сервисы" от 1с). На Клиенте добавил только такой же справочник номенклатуры (как и на Сервере) и соответствующую WS-ссылку. При обращении с Клиента через эту WS-ссылку к веб сервису Сервера, последний формирует (с использованием XDTO) перечень номенклатуры и уже на Клиенте я получаю соответствующий ОбъектXDTO. Далее, на Клиенте, я могу этот ОбъектXDTO сохранить как XML файл, например сделав так:
Соединение = WSСсылки.ДанныеНоменклатуры.СоздатьWSПрокси(";, "ДанныеНоменклатуры","ДанныеНоменклатурыSoap");
Ответ = Соединение.Получить();
ИмяФайла = "C:\nomenklatura_client.xml";
Запись = Новый ЗаписьXML;
Запись.ОткрытьФайл(ИмяФайла);
Соединение.ФабрикаXDTO.ЗаписатьXML(Запись, Ответ,,,,НазначениеТипаXML.Явное); //используем фабрику из соединения(по WS ссылке)
Запись.Закрыть();
Далее, конечно же можно этот XML файл прочитать и получить из него данные. Однако, я хотел бы узнать, можно ли данные (пусть в виде XML структуры) получить без создания отдельного файла, т.е. можно ли сразу из ОбъектаXDTO получить данные, т.е. не использовать вышеприведенный с записьюXML?
Как тут вообще лучше всего обмен сделать? У меня есть идея о том, чтобы через веб сервис передавать структуру (т.е. у операции веб сервиса добавить соответствующий параметр), элементом которой будет как-раз уже готовенький XML файл, но насколько это правильно не знаю.
|
|
2
rikodroo
01.03.17
✎
12:22
|
(1) Чтобы данные из него извлечь. Я не очень понял что такое XDTO объект, но знаю, что данные в нём есть))) А не понимаю как, этож свего роде сериализованные данные и мне их нужно ресериализовать.
|
|