在 ASP.NET 中使用 SQL Server 2000 Analysis Services 和 Office XP 构造 OLAP 报表应用

豆豆网   技术应用频道   2006年07月23日    社区交流

本文详细介绍在 ASP.NET 中使用 SQL Server 2000 Analysis Services 和 Office XP 构造 OLAP 报表应用

  LoadCustomPivotTableReport 方法使用了大量的 PivotTable 的属性(参见 Figure 5)。请务必牢记以下几点:

  • 使用 InsertFieldSet 方法在行和列的轴中插入合适的 PivotFieldSet
  • 使用 IncludedMembers 属性以区分表中不同的 PivotField。IncludedMembers 属性的值为一个变量数组,对应于 .NET 中的 Object 数组
  • IsIncluded 属性允许或禁止 PivotFieldSet 中特定的 PivotField
  • InsertTotal 方法在 totals 网格中插入合适的度量值
  • NumberFormat 属性定义了度量值的格式。此属性接受格式代码(如"0.###")或者预定义的格式,如 "Currency" 或 "Percent"
  •   保存和获取定制的报表

      既然我们已经将报表的产生过程经历了一遍,我们不希望每次产生新报表时都重复这项工作。可喜的是,用于复制报表的数据保存在 XMLData 属性中。因此,保存报表的工作变得很简单,只需将XMLData 属性保存在可永久存放的介质,如关系数据库中即可。加载报表的工作同样简单,只需获得保存的 XMLData 并 将它重新绑定到 PivotTable 上即可。这个特点如 Figure 2 中的 Pathway 3 所示。

      应用程序的 Web Service 中有两个方法,分别用于保存和获取定制报表的 XMLData。在例子中,我们将 XMLData 保存在名为 OLAPReport1.xml 的文本文件中。程序界面提供了两个按钮:Save Report 和 Load Saved Report。Save Report 按钮调用一个 JavaScript 将 PivotTable 控件的 XMLData 发送到下面的 Web方法中:

    function SaveReport() {
      // Purpose: Call Web Service method to save the report
      var strReportXMLData = frm1.PivotTable1.XMLData;
      var iCallID = service.svcOLAP.callService(onSaveReportResult,
        ''SaveReport'', strReportXMLData, ''OLAPReport1.xml
    }

      此 Web 方法紧接着将 XMLData 写入一个文件。Load Saved Report 按钮则调用一个 JavaScript函数完成反向的工作,如 Figure 11 所示。此函数调用一个 Web 方法打开文本文件,获取 XMLData,然后回传用以绑定 PivotTable 控件。

    作者:sages    责编:豆豆技术应用

    正在加载评论...