* 单元格坐标的范围值从 0(零)开始。–1 表示未定义,或者某个范围中的所有值。
下表包含范围值对及其行为的示例。通常,以下条件必须为真才能返回结果集:beginrange <= endrange。如果 beginrange > endrange,则该范围无效且不会返回结果。
| beginrange | endrange | 行为 |
| -1 | -1 | 所有单元格或行。这是默认行为。 |
| 0 | -1 | 从第一个(即第 0 个)开始到未定义(即数据集末端)的所有单元格或行。 |
| 15 | -1 | 返回从单元格 15 到数据集末端的单元格或行。 |
| -1 | 0 | 作为范围中第一项的第一个单元格未定义(或为全部),并且末项是第 0 个元素。 |
| 15 | 50 | 返回范围为 olap 单元格 15 到 50(包含这两个单元格)。beginrange <= endrange。 |
| 2 | 1 | 由于范围无效(开始值大于结束值),将不会返回单元格。beginrange > endrange。 |
xml for analysis 中的错误处理
错误的类型不同,处理的方式也不同。可能发生以下类型的错误:
- 执行方法调用失败
- 执行方法调用成功,但带有错误或警告
- 执行方法调用成功,但结果集中包含错误
执行方法调用失败是通过 soap fault 消息来报告的。当发生这种情况时,不会返回“结果”。如果方法在完成时带有错误或警告,这些错误和警告将随“结果”一起返回给客户端。
mddataset 错误示例
与“结果”中单元格或数据相关的错误嵌在结果集的适当位置中。xml for analysis 中使用的数据类型中的“mddataset”包含了 mddataset 数据类型。 下面是 mddataset 中包含错误时结果的示例:
<celldata>
...
<cell cellordinal="10">
<value>
<error>
<errorcode>2148497527</errorcode>
<description>security error.</description>
</error>
</value>
</cell>
</celldata>
soap 错误示例
与此规范相关的 soap 错误代码以“xmlforanalysis”开头,后面是一个句点和十六进制的 hr 结果代码。例如,错误代码“0x80000005”将格式化为“xmlforanalysis.0x80000005”。
有关 soap 错误格式的详细信息,请参见 http://www.w3.org/tr/soap/#_ref477795996(英文)。
下表显示了 soap 响应的“详细信息”部分所包含的 xml for analysis 错误代码信息。各列为 soap 错误的详细信息部分中错误的特性。
| 列名称 | 类型 | 说明 | 是否可以为空 |
| errorcode | unsignedint | 指明方法成败与否的返回代码。注意:十六进制值必须转换为 unsignedint 值。 | 否 |
| description | string | 生成错误的组件所返回的错误文本和说明。 | 是 |
| source | string | 生成错误的组件的名称。 | 是 |
| helpfile | string | 说明错误的帮助文件或主题的路径或 url。 | 是 |