1

我一直对地图报告感兴趣,所以我想创建一个具有向下钻取功能的地图报告,所以基本上创建了两个报告,如下所示:a) 基于 SQL Server 空间数据的主要报告,用于显示美国各州的销售额 b) 向下钻取地图基于 ESRI shapfile 的报告,用于显示所选州的美国县销售额

我下载了美国县 ESRI shapefile。

完成报告后,我使用向下钻取功能测试了地图。我预览了主要报告,将鼠标悬停在德克萨斯州,我没有看到德克萨斯州的县。我只看到一张带有小点的美国地图。

所以,我不确定我错过了什么。我从空间数据中选择县名列,并从分析数据集中选择县名。它是 ESRI 形状文件吗?

请指教。

4

1 回答 1

1

据我所知,SSRS 不支持“悬停”功能,仅支持“操作”功能。该操作可以转到超链接、转到报告或转到某个部分。要对报告进行深入研究,即使它是地理上的,您也需要引用可以传递给其他内容的内容。我最近做了一些类似于你问的事情。您可以制作一个“子报告”,该“子报告”是从代表州的地理数据类型动态创建的。我做了什么:

  1. 我下载了一个获取人口普查形状文件并将它们放入 SQL 数据库的程序:http: //www.sharpgis.net/page/sql-server-2008-spatial-tools.aspx

  2. 我从人口普查中得到了美国各县的形状文件。

  3. 我创建了一个名为“空间”的数据库
  4. 我创建了一个表并将数据从第 1 步的应用程序“县”插入其中
  5. 我使用美国的地理选项创建了一个通用的美国地图作为我的“主要”报告。
  6. 我创建了一个地图类型的子报表,但选择了空间数据向导。选项对于开始并不重要,但你如何制作图像。该报告从我创建的表的“地理”列中获取数据,因此查询将如下所示(确保将数据源转到空间数据库):

    Select StateName, Counties, geog(geographic type)
    from UsCounties
    where StateName = @State
    
  7. 完成后的报告看起来像一个 blob,因为它是在运行时创建的,而不是静态创建的。您可以“预览”它并从应该创建的名为“State”的变量中传入“OR”或“WA”之类的状态。如果它不是自动创建的,您可以这样做并将其设为“文本”变量。如果设置正确,它将显示状态形状。

  8. 您可以返回到第 5 步中的报告,然后转到您创建的图层的“多边形属性”。
  9. 选择左侧的“操作”窗格。选择“转到报告”,指定您创建的子报告,该报告将需要一个与“州”匹配的变量,通用美国州有一个与州两位数字代码相对应的“缩写”。
  10. 现在您应该能够运行主报表,并且当您在某个状态下单击任意位置时,它将“钻取”到在运行时从空间数据库创建的报表。这是基于矢量的,因此它相当快,具体取决于托管机器的硬件和显示的数据量。

请记住,使用 SSRS 很难使其具有一些 3d 功能,并且由于某种原因悬停在对象上被完全忽略,但被降级为只有“工具提示”,您可以加载这些功能以提供文本和数字但不多更多的。我在另一个地方写了一个关于如何使用 javascript 弹出窗口的 hack,但实际上你只是在以不同的方式进行钻取。

于 2013-03-27T23:28:45.743 回答