将Crystal Formula Workshop转换为SQL和SSRS

时间:2018-08-14 16:36:44

标签: visual-studio reporting-services crystal-reports

在我第一次尝试使用Crystal Reports在SSRS中重新创建报告时,我被困在一个公式中以将其放置在SSRS中。

那么,如何将这个crystal-query-formula转换为SQL query

 StringVar DorF:='D';

 if {TABLE.COUNTRY_COLUMN} = 'US' then DorF := 'D';
 if {TABLE.COUNTRY_COLUMN} <> 'US' and not ISNULL 
 ({TABLE.COUNTRY_COLUMN}) then DorF := 'F';
 DorF "

1 个答案:

答案 0 :(得分:0)

自从我使用Crystal报表以来已经有一段时间了,但是看起来它只是查询中的 CASE 语句。不过我不确定ELSE-我认为它应该是 DorF ,它最初是 D

CASE WHEN COUNTRY_COLUMN = 'US' THEN 'D' 
     WHEN COUNTRY_COLUMN <> 'US' AND COUNTRY_COLUMN IS NOT NULL THEN 'F' 
     ELSE 'D' --??
END

如果您想在报告的SSRS中而不是查询中进行操作,我将使用嵌套的 IIF 语句。

IIF(Fields!COUNTRY_COLUMN.Value = 'US', "D", 
    IIF(Fields!COUNTRY_COLUMN.Value <> 'US' AND NOT ISNOTHING(Fields!COUNTRY_COLUMN.Value), "F", "D")

这是IF country = US then D else if country <> US and NOT NULL then F else D.

我猜测该字段只能是 F 原始或 D 固有的,而没有其他值。