XML objects

В случае указания этот параметра возвращаемый набор рекордсетов будет представлен элементами SqlXml. После набора элементов SqlXml будет идти один элемент SqlResultCode, который описывает возвращаемый хранимой процедурой код.

Оба этих элемента – дочерние элементы ИмяМетодаResult, который имеет тип SqlResultStream.

Если хранимая процедура возвращает не только recordset, но еще и некоторые параметры, то после элемента ИмяМетодаResult будет следовать набор элементов, содержащих значения возвращаемых параметров. Пример:

<tns:ИмяМетодаResult xsi:type="sqlresultstream:SqlResultStream"> <sqlresultstream:SqlXml>результирующий рекордсет</sqlresultstream:SqlXml>* <sqlresultstream:SqlResultCode xsi:type="sqltypes:SqlResultCode" sqltypes:IsNested="false">возвращаемый код</sqlresultstream:SqlResultCode></tns:ИмяМетодаResult><tns:ИмяВыходногоПараметра>значение</tns:ИмяВыходногоПараметра>*

По идее, SQLXML должен еще возвращать элемент SqlMessage, если в процессе выполнения запроса произошла ошибка. Я тестировал на различных конфигурациях, но никогда мне не удавалось получить от него такого сообщения. Вместо него всегда возвращался документ следующего содержания:

<?xml version="1.0" encoding="utf-16"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <SOAP-ENV:Fault> <faultcode>SOAP-ENV:Server</faultcode> <faultstring>Runtime errors.</faultstring> </SOAP-ENV:Fault> </SOAP-ENV:Body></SOAP-ENV:Envelope>

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: