0

我尝试在 Excel 中创建与 XMLA Web 服务的连接。我正在使用 Analysis Services 连接助手。我用 Web 服务 url 和凭据填充第一个掩码。然后我在服务器上收到 10 个 DISCOVER_PROPERTIES 和一个 DISCOVER_SCHEMA_ROWSETS 请求。在最后一个 DISCOVER_SCHEMA_ROWSETS 之后,我在 excel 中收到一个通知(没有错误对话框),数据连接助手在给定数据源中找不到数据库列表。我可以在哪里获得有关发生错误的更多信息?我很感激任何帮助!

DISCOVER_SCHEMA_ROWSETS 消息:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Header>
    <Session xmlns="urn:schemas-microsoft-com:xml-analysis" SessionId="D5C7494A-14DC-47F4-B9A5-AC6A487BCC38"/>
  </soap:Header>
  <soap:Body>
    <Discover xmlns="urn:schemas-microsoft-com:xml-analysis">
      <RequestType>DISCOVER_SCHEMA_ROWSETS</RequestType>
      <Restrictions>
        <RestrictionList/>
      </Restrictions>
      <Properties>
        <PropertyList>
          <LocaleIdentifier>1031</LocaleIdentifier>
        </PropertyList>
      </Properties>
    </Discover>
  </soap:Body>
</soap:Envelope>

和发现响应:

<?xml version="1.0" encoding="UTF-8" ?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
  <SOAP-ENV:Body>
    <DiscoverResponse xmlns="urn:schemas-microsoft-com:xml-analysis">
      <return>
        <root xmlns="urn:schemas-microsoft-com:xml-analysis:rowset">
          <xsd:schema xmlns="urn:schemas-microsoft-com:xml-analysis:rowset" targetNamespace="urn:schemas-microsoft-com:xml-analysis:rowset" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sql="urn:schemas-microsoft-com:xml-sql" elementFormDefault="qualified">
            <xsd:element name="root">
              <xsd:complexType>
                <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="row" type="row"/>
                </xsd:sequence>
              </xsd:complexType>
            </xsd:element>
            <xsd:complexType name="row">
              <xsd:sequence maxOccurs="unbounded" minOccurs="0">
                <xsd:element name="SchemaName" type="xsd:string" minOccurs="0" maxOccurs="1" sql:field="SchemaName"/>
              </xsd:sequence>
            </xsd:complexType>
          </xsd:schema>
          <row>
            <SchemaName>DISCOVER_DATASOURCES</SchemaName>
          </row>
          <row>
            <SchemaName>DISCOVER_PROPERTIES</SchemaName>
          </row>
          <row>
            <SchemaName>DISCOVER_SCHEMA_ROWSETS</SchemaName>
          </row>
          <row>
            <SchemaName>DISCOVER_ENUMERATORS</SchemaName>
          </row>
          <row>
            <SchemaName>DISCOVER_KEYWORDS</SchemaName>
          </row>
          <row>
            <SchemaName>DISCOVER_LITERALS</SchemaName>
          </row>
          <row>
            <SchemaName>DBSCHEMA_CATALOGS</SchemaName>
          </row>
          <row>
            <SchemaName>MDSCHEMA_CUBES</SchemaName>
          </row>
          <row>
            <SchemaName>MDSCHEMA_DIMENSIONS</SchemaName>
          </row>
          <row>
            <SchemaName>MDSCHEMA_MEASURES</SchemaName>
          </row>
          <row>
            <SchemaName>MDSCHEMA_HIERARCHIES</SchemaName>
          </row>
          <row>
            <SchemaName>MDSCHEMA_LEVELS</SchemaName>
          </row>
          <row>
            <SchemaName>MDSCHEMA_MEMBERS</SchemaName>
          </row>
          <row>
            <SchemaName>MDSCHEMA_PROPERTIES</SchemaName>
          </row>
          <row>
            <SchemaName>DBSCHEMA_COLUMNS</SchemaName>
          </row>
          <row>
            <SchemaName>DBSCHEMA_PROVIDER_TYPES</SchemaName>
          </row>
          <row>
            <SchemaName>DBSCHEMA_TABLES</SchemaName>
          </row>
          <row>
            <SchemaName>DBSCHEMA_TABLES_INFO</SchemaName>
          </row>
          <row>
            <SchemaName>MDSCHEMA_ACTIONS</SchemaName>
          </row>
          <row>
            <SchemaName>MDSCHEMA_FUNCTIONS</SchemaName>
          </row>
          <row>
            <SchemaName>MDSCHEMA_SETS</SchemaName>
          </row>
        </root>
      </return>
    </DiscoverResponse>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
4

1 回答 1

0

首先通过将 web 服务的 URL 放入浏览器中进行测试,看看它是否工作。

您可以下载在 VBA 界面中提供插件的Microsoft Office XP Web 服务工具包。该插件允许您为 Web 服务指定路径并为您创建类。您可以使用此类并调用您的网络服务中的函数。

于 2013-04-08T12:38:58.757 回答