ASP.NET w-s ... потребляет из Excel? - PullRequest
0 голосов
/ 28 августа 2009

У нас есть веб-сервис на существующем веб-сайте ASP.NET, который отлично работает при доступе через другие биты ASP.NET. Я бы хотел, чтобы Excel 2007 и 2003 вызывали w-s и обновляли часть листа с результатами, используя VBA.

В идеале я бы хотел, чтобы ванильная версия Excel могла это делать (т.е. без необходимости устанавливать дополнительные биты).

Для начала (в 2007 году) я попытался Данные-> Получить внешние данные-> Из Интернета . Указал на: http://myhost/myvirtdir/ABCInfoWS.asmx?WSDL&op=testwebservice1

Материал появляется в Excel (хотя и с 'Указанный источник XML не ссылается на сообщение схемы' ), но оказывается, что это фактически описание всех веб-сервисов, предлагаемых в рамках того же WSDL.

Может кто-нибудь сказать мне, как я могу получить данные из testwebservice через VBA?

Ответы [ 2 ]

0 голосов
/ 28 августа 2009

Извините, но я не могу предоставить достаточно информации в комментариях. Вот что появляется в Excel, когда я выбираю SOAP 2 и XML:

Просто отвечая на ваши изменения, мой w-s возвращает XML, и вот как он выглядит - он не содержит tr / td, потому что ранее он использовался как «настоящий» веб-сервис.

Я понял, что я вообще не получаю фактические данные, но вместо этого описываю данные, которые предоставляет веб-служба - я думаю, мой URL все еще немного не в порядке?

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<GetBookJobStatusResponse xmlns="http://www.protecttheguilty.com/">
<GetBookJobStatusResult>
<BookJobStatus>
<JobStatus>string</JobStatus>
<JobType>string</JobType>
<RequestTime>dateTime</RequestTime>
<StartTime>dateTime</StartTime>
<EndTime>dateTime</EndTime>
<PathToOutput>string</PathToOutput>
</BookJobStatus>
<BookJobStatus>
<JobStatus>string</JobStatus>
<JobType>string</JobType>
<RequestTime>dateTime</RequestTime>
<StartTime>dateTime</StartTime>
<EndTime>dateTime</EndTime>
<PathToOutput>string</PathToOutput>
</BookJobStatus>
</GetBookJobStatusResult>
</GetBookJobStatusResponse>
</soap12:Body>
</soap12:Envelope>
0 голосов
/ 28 августа 2009

Удалите часть? WSDL из указанного выше URL.

РЕДАКТИРОВАТЬ: Что возвращает ваш веб-сервис?
Данные Excel -> Импорт данных ожидают табличную структуру, созданную с помощью tr & td для получения данных.

Если ваш веб-сервис возвращает XML, он также должен работать.

...