我一直对地图报告感兴趣,所以我想创建一个具有向下钻取功能的地图报告,因此基本上创建了两个报告,如下所示: a)基于SQL Server Spatial数据的主报告,用于显示美国各州的销售情况 b)根据ESRI shapfile深入查看地图报告,以显示所选州的美国县销售额
我下载了美国县ESRI shapefile。
完成报告后,我使用向下钻取功能测试了地图。我预览了主要报告,将鼠标悬停在德克萨斯州上方,我没有看到德克萨斯州的县。我只看到一张带有小圆点的美国地图。
所以,我不确定我错过了什么。我从空间数据中选择了“县名称”列,并从分析数据集中选择了县名。它是ESRI shapefile吗?
请告知。
答案 0 :(得分:1)
据我所知,SSRS不支持'悬停'功能只有'动作'功能。该操作可以转到超链接,转到报告或转到部分。要对报表进行深入分析,即使它是地理位置,您也需要引用可以传递给其他内容的内容。我最近做了类似于你问的事情。您可以创建一个“子报表”,动态地从表示状态的地理数据类型创建。我做了什么:
我下载了一个程序,该程序使用Census形状文件并将它们放入SQL数据库中: http://www.sharpgis.net/page/sql-server-2008-spatial-tools.aspx
我从人口普查中得到了美国各州的形状文件。
我创建了地图类型的子报表,但选择了空间数据向导。这些选项并不重要,但您如何制作图像。此报告从我所创建的表的“地理”列中获取数据,因此查询将是这样的(确保将数据源转到空间数据库):
Select StateName, Counties, geog(geographic type)
from UsCounties
where StateName = @State
完成后的报告看起来像blob,因为它是在运行时创建的,而不是静态创建的。您可以“预览”它并从应该创建的名为“State”的变量中传入“OR”或“WA”之类的状态。如果它不是自动创建的,您可以这样做并使其成为“文本”变量。如果设置正确,它将显示状态形状。
请记住,使用SSRS很难让它具有一些3D功能,并且由于某些原因将鼠标悬停在对象上会被完全忽略,但只会被降级为“工具提示”,您可以使用这些功能来加载文本和数字但不多。我在另一个地方写了一个关于如何使用javascript弹出一个窗口的黑客攻击,但是在幕后你真的只是用不同的方式进行演练。