SQL Reporting Service使用代码总结

来源:互联网 发布:淘宝卖家寄棺材犯法吗 编辑:程序博客网 时间:2024/05/16 16:10

SQL Reporting Service使用代码总结

姚义军 2007-7-3

注意:本文是参考Wrox.Professional.SQL.Server.2005.Reporting.Services.Mar.2006.pdf做的。

 

最近在学习SQL Reporting Service,在学习使用代码时遇到了一个小问题。现在写出来与大家共同学习。

问题:当在【报表属性】的【代码】页输入完代码后,然后选择一个字段的表达式,输入=Code.后系统并没有提示函数名称。为此我专门上网问了一下,才解决这个问题。注意:没有提示是正常的。

下面是我的具体操作过程:

开发环境:

VS2005SQL Server 2005(必须安装报表服务和示例数据库AdventureWorks,建议另外一个示例数据库AdventureWorksDW也安装)

1.          打开VS.NET,选择【新建项目】à【报表服务器项目】,输入项目名称。

 

2.          打开【解决方案资源管理器】,在【共享数据源】单击鼠标右键,然后选择【添加新数据源】

   

3.          输入一个名称,点击【编辑

   

4.          选择服务器、输入用户名、密码、选择数据库。点击【测试连接】OK后再点击【确定】。

5.          打开【解决方案资源管理器】,在【报表】单击鼠标右键,然后选择【添加】à【新建项W…

   

6.          在弹出的对话框中选择【报表】然后输入报表名称。

   

7.          此时会弹出报表设计器,先设计一个数据集。在【数据】选项卡,选择【新建数据集】。输入数据集名称,并选择刚才建立的数据源。

   

8.          输入以下代码:

SELECT         Person.Contact.FirstName, Person.Contact.LastName,

                          Person.Contact.Phone

FROM             Purchasing.Vendor INNER JOIN

                          Purchasing.VendorContact ON

                          Purchasing.Vendor.VendorID = Purchasing.VendorContact.VendorID INNER JOIN

                          Person.Contact ON

                          Purchasing.VendorContact.ContactID = Person.Contact.ContactID

然后点击运行按钮(是那个红色的感叹号)

9.          点击【布局】选项卡。在【工具箱】中选择【表】控件,将基拖到布局页面。

   

10.      拖动数据集的字段到表的详细信息。

   

11.      选择报表主体(一定要在主体上单击一下,否则后面的菜单不会出来),然后选择菜单【报表】à【报表属性(R)…】,再选择【代码】选项卡,再复制以下代码:

        Function CustomFormat(ByVal Value As String, ByVal Format As String) As String

        Select Case Format

            Case "Phone"

                Select Case Value.Length

                    Case 7

                        Return Value.Substring(0, 3) & "_" & Value.Substring(3, 4)

                    Case 10

                        Return Value.Substring(0, 3) & "_" & Value.Substring(3, 3) & "_" & Value.Substring(6, 4)

                    Case 12

                        Return Value.Substring(0, 3) & "_" & Value.Substring(4, 3) & "_" & Value.Substring(8, 4)

                    Case Else

                        Return Value

 

                End Select

 

            Case "SSN"

                If Value.Length = 9 Then

                    Return Value.Substring(0, 3) & "_" & Value.Substring(3, 2) & "_" & Value.Substring(5, 4)

                Else

                    Return Value

 

                End If

            Case Else

                Return Value

        End Select

    End Function

12.      选择一个字段,然后单击鼠标右键,选择弹出菜单【表达式(E)…

  

13.      在【编辑表达式】对话框中先删除Fields!LastName.Value,只留下等于号(=),然后输入以下代码:Code.CustomFormat(Fields!Phone.Value,"Phone"),此时系统会提示错误:“无法识别的标识符。”不用理会,直接按【确定】

     

14.      点击【预览】查看数据。

   

 

 
原创粉丝点击