Web服务可以被多个不同用户所访问,那么报告(reporting)又该是怎样的呢?Crystal Reports已经成为了Visual Studio中事实上的报告标准,并且通过Visual Studio.NET现在已经可以将报告文件转换为Web服务。然后可以通过访问这些Web服务来将报告发送给企业内部或外部的用户。本文中,我们将一起来看看如何根据已有的报告文件来创建Web服务。在本文第二部分,我们将分析如何使用所创建的Web服务。
注意:在本教程中我们将使用Visual Studio.NET 2003。在开始学习之前,请检查你已经安装了Visual Studio以及所有的Crystal Reports组件,包括“Crystal Web services”相关选项。
打开Visual Studio,从Start菜单中选择File > New > Project来创建新的ASP.NET Web Application。在本例中,我们将此项目命名为“ReportService”。
在创建项目之后,需要创建或添加已有的Crystal Report,我们将在后面将其转换为Web服务。如果还没有报告文件,可以使用同Visual Studio一同发布的示例报告,它位于C:Program FilesMicrosoft Visual Studio .NET 2003Crystal ReportsSamplesReports。在本例中,我们将使用在General Business示例文件夹中的“World Sales Report.rpt”。
要在项目中添加已有的报告,可以选择Project > Add Existing Item,然后将对话框底部的下拉列表改为“Crystal Reports”,并选择希望添加的报告文件。
下一步,在Solution Explorer选定报告,然后直接右键单击报告。右键单击菜单中会出现“Publish as Web service”选项。选择此选项将产生一个ASMX文件,你可以通过右键单击此文件(本例中为“World Sales ReportService.asmx”)并选择“View in Browser”来对其进行查看。
此预览将显示所有对Web服务允许进行的操作,其中包括:
DrillGraph
Refresh
FindText
GetPage
GetTotaller
TestReport
GetGroupLevelData
FindGroup
GetLastPageNumber
GetReportInfo
Export
这里还会有一个链接链到使用WSDL(Web服务定义语言,Web Service Def