2011-12-21 72 views
2

在Crystal Reports中,我可以定义一个公式来评估每个细节行。举例来说,如果我有一个查询将返回PatientId,一个ObsTerm名称和ObsTerm价值,我可以定义一个名为{} @Hispanic公式的值为:如何在SQL Server Reporting Services中执行CR类型公式?

If {Command.OBSNAME} = "HISPANIC" Then 
    {Command.OBSVALUE} 
Else 
    " " 

然后,组页脚,我可以取最大值({@Hanspanic},{Command.PATIENTID})来查看我是否得到了一个为患者种族返回的值 - 要么我得到这个值(假设只有一个,因为这就是我建立查询)或空白。

我试图将CR报告转换为SSRS 2008R2:我将如何执行上述操作?谢谢。

回答

2

计算字段添加到数据源(称为“西班牙裔”或其他)本的公式:

=IIF(Fields!OBSNAME.Value="Hispanic",Fields!OBSVALUE.Value,"") 

在报表中,父组添加到你的细节行并键入[最大(西班牙裔)]到组行中的一个字段。然后您可能想要隐藏详细信息行并只显示汇总数据。我认为可能有更简单的方法来做你想做的事情,但是从你的问题来看并不清楚。

我从水晶过渡到SSRS,这是一条艰难的道路。你需要忘掉所有的水晶(特别是格式化)。

+1

可爱。这就回答了我问的问题。我有一个后续问题:由于历史原因,本报告从三个地方提取数据以获得一个答案。在组页脚的表情,我有\t \t (INSTR(IIF(不IsNothing(MAX(字段!Ethnicity.Value, “PatientId”)) ,MAX(字段!Ethnicity.Value, “PatientId”) ,IIF (Max(Fields!obsEthnicity.Value,“PatientId”) ) ),“Max(Fields!obsEthnicity.Value,”PatientId“) ,非“)> 0) 重复5次。任何方式来简化?如果是这样,我会发布一个新问题。 – SarekOfVulcan 2011-12-27 14:24:54

相关问题