SSRS:报告标签位置动态

时间:2010-04-27 10:23:52

标签: sql-server dynamic reporting-services label position

我有一份报告,以多个标签显示客户地址。

我的客户使用窗口信封进行邮寄。我需要地址标签位置可配置。

有点像,我会有一个数据库表,用于存储每个客户的每个标签的顶部/左侧位置。根据此表,我需要在报告中定位地址标签。

我认为,它可以通过表达式来实现,但是Location属性不提供设置表达式并使标签的顶部和左侧动态的功能。

关于如何实现这一目标的任何人,任何想法?

4 个答案:

答案 0 :(得分:2)

正如您所提到的,您无法为location属性设置表达式。我之前想要这样做,但似乎没有解决方案。

答案 1 :(得分:1)

对不起重复的帖子

我遇到了和你一样的问题。我通过使用旧的HTML技巧解决了这个问题。它涉及在图像中使用transparent.gif。你把你的图像(链接到gif),然后将你的标签放在上面。使用参数,您可以通过在两个控件的hidden属性中设置表达式来切换要显示的项目。

答案 2 :(得分:1)

正如其他人所说,它不受支持。但是,这里有两个可能用于基本报告的丑陋工作。

使用填充处理。
您无法在标签的位置设置公式,但您可以使用填充选项。

  1. 因此,您可以将标签设置为与报告一样宽,也可以设置为与区域一样高。
  2. 另外,将标签的水平对齐设置为" Left"垂直对齐"顶部"。
  3. 然后,在左侧和顶部填充中添加公式以偏移文本。
  4. enter image description here

    您还可以通过将水平对齐设置为"右"来实现右对齐的偏移标签。并使用右边的填充而不是左边的填充来偏移右边的字段。使用相同的配方,您可以使用" bottom"从底部偏移。垂直对齐和底部填充。

    丑陋的一面:
    此方法将在报表设计器中创建一个混乱,因为所有动态标签将相互重叠并占用静态标签上的所有空间。此外,请注意,使用此方法,您无法在文本和超链接周围添加边框等奇特内容。

    使用子报告。
    如果标签的不同位置数量非常少。您可以为每种可能性创建子报表,并使用公式显示正确的子报表。遗憾的是,这对标题中的标签不起作用,因为子报告不允许在那里。

答案 3 :(得分:0)

没有解决方案,因为它不受支持!!!

来自MS在线社区支持......

“据我所知,报告中文本框的位置是静态的而不是动态的,所以它不会向左移动。”

参考:http://forums.asp.net/t/1433297.aspx