4

我正在尝试在 Visual Studio 2012 中创建 Microsoft SQL 报告。我的报告数据输入是存储在数据库中的 XML 二进制文件。

为了打破它,这就是我想做的事情:

  1. 从数据库中检索 XML 二进制文件

  2. 使用 XML 的内容填充报告

  3. 创建报告的 PDF 版本

第 1 步和第 3 步没有问题。但是第2步是。我不知道如何在数据集中使用 XML 数据,所以我在报告中使用它。

我缺少一些基本的东西吗?

我以前只使用数据库中的数据而不是 XML 来创建许多报告。

谢谢你。

4

1 回答 1

2

如果 XML 存储在数据库中并且您只能通过 SQL 查询访问它,我建议如下:

  1. 使用空连接字符串创建 XML 数据源。通常它是一个网站/服务 URL。
  2. 在报表的数据集中选择使用 XML 数据源。请注意,现在唯一可能的命令类型是文本。
  3. 为报告添加一个内部参数,该参数将包含您的 XML 文件。
  4. 编写表达式以从数据库中获取参数的默认值。该值应该是您的 XML。
  5. 在 dataset 命令中使用XML Query选择字段,例如:

    <Query>
       <XmlData>
        <!-- Your XML starts -->
        <Books>
            <Book id='1'>Foo</Book>
            <Book id='2'>Bar</Book>
            <Book id='3'>Baz</Book>
        </Books>
        <!-- Your XML ends -->
       </XmlData>
       <ElementPath>Books/Book</ElementPath>
    </Query>
        <!--just tweaked indentation-->
    

这将添加两个字段:idBook。您需要使用参数而不是 XML。

更新:对于 XML 格式的抱歉,我无法让代码块工作。

于 2012-11-20T01:29:38.790 回答