2011-11-17 103 views
1

我需要一点帮助,为我想要在SSRS中创建的数据集创建if语句。我有2个字段DateOrdered和FirstDate(意思是它的首次订购日期)现在我想要3个输出方法1,方法2和方法3取决于DateOrdered和FirstDate之间的时间 0-24个月方法1 25-36月Tier 2 37 + Tier 3IIF声明在SSRS

现在这里是扭曲的,如果有什么是第一次订购之前1/1/10我希望它的时钟开始于1/1/10所以,如果东西是第一次订购9/25/09,即使它超过36,因为时钟被移动,它也会进入第2层。

不知道如何在SSRS

回答

0

编辑表达数据集创建这个如果我明白你的问题正确那么这应该是接近你所追求的。在发布之前我没有对它进行测试,所以仔细查看任何语法错误。

=Switch(
    DateDiff("month", IIf(Fields!FirstDate.Value < DateTime.Parse("2010-01-01"), DateTime.Parse("2010-01-01"), Fields!FirstDate.Value), Fields!DateOrdered.Value) <= 24, "Tier 1", 
    DateDiff("month", IIf(Fields!FirstDate.Value < DateTime.Parse("2010-01-01"), DateTime.Parse("2010-01-01"), Fields!FirstDate.Value), Fields!DateOrdered.Value) <= 36, "Tier 2", 
    True = True, "Tier 3" 
)