第 4 课:为子报表定义数据连接和数据表

设计父报表后,下一步是为子报表创建数据连接和数据表。 在本教程中,数据连接是 AdventureWorks2008 数据库。 还可以选择连接到 AdventureWorks2012 数据库。

通过添加数据集来定义数据连接和数据表(用于子报表)

  1. “网站 ”菜单上,单击“ 添加新项”。

  2. 在“ 添加新项 ”对话框中,单击 “数据集 ”,然后单击“ 添加”。 出现提示时,应单击“”将项添加到App_Code文件夹中。

    这会向项目添加新的 XSD 文件 DataSet2.xsd ,并打开数据集设计器。

  3. 从“工具箱”窗口中,将 TableAdapter 控件拖到设计图面上。 这会启动 TableAdapter 配置向导。

  4. 在“ 选择数据连接 ”页上,单击“ 新建连接”。

  5. 在“添加连接”对话框中,执行以下步骤:

    1. “服务器名称 ”框中,输入 AdventureWorks2008 数据库所在的服务器。

      默认的 SQL Server Express 实例为 (local)\sqlexpress

    2. 在“登录到服务器”部分中,选择使你可访问数据的选项。 “使用 Windows 身份验证”为默认选项。

    3. “选择”或输入数据库名称 下拉列表中,单击 “AdventureWorks2008”。

    4. 单击“确定”,然后单击“下一步”

  6. 如果在步骤 5(b)中选择 了使用 SQL Server 身份验证 ,请选择是将敏感数据包含在字符串中还是设置应用程序代码中的信息的选项。

  7. “将连接字符串保存到应用程序配置文件”页上,键入连接字符串的名称或接受默认AdventureWorks2008ConnectionString。 单击 “下一步”

  8. 在“ 选择命令类型 ”页上,选择“ 使用 SQL 语句”,然后单击“ 下一步”。

  9. “输入 SQL 语句 ”页上,输入以下 Transact-SQL 查询以从 AdventureWorks2008 数据库中检索数据,然后单击“ 下一步”。

    SELECT PurchaseOrderID, PurchaseOrderDetailID, OrderQty, ProductID, ReceivedQty, RejectedQty, StockedQty FROM Purchasing.PurchaseOrderDetail  
    

    还可以通过单击 “查询生成器”来创建查询,然后单击“ 执行查询 ”按钮来验证查询。 如果查询未返回预期数据,则可能使用的是早期版本的 AdventureWorks。 有关安装 AdventureWorks2008 版本的 AdventureWorks 的详细信息,请参阅 演练:安装 AdventureWorks 数据库

  10. “选择要生成的方法 ”页上,取消选中 “创建方法”以将更新直接发送到数据库(GenerateDBDirectMethods),然后单击“ 完成”。

    现已完成将 ADO.NET DataTable 配置为报表的数据源。 在 Visual Studio 中的“数据集设计器”页上,应看到所添加的 DataTable ,其中列出在查询中指定的列。 DataSet2 由根据查询从 PurhcaseOrderDetail 表获得的数据组成。

  11. 保存文件。

  12. 若要预览数据,请单击“数据”菜单上的“预览数据”,然后单击“预览”。

下一个任务

您已成功为子报表创建数据连接和数据表。 接下来,您将使用报表向导设计子报表。