If-Then-Else Across Table in Formula / Group

时间:2017-05-19 16:17:58

标签: crystal-reports

我想评估每个不同的record_id

的多个条件

我的表格中有20多列,每个record_id得分为是/否 基于视图中的case语句,例如:

record_id --- is_up --- is_down --- is_left --- is_right
1234 ---不---是---否---是

我开始使用if / then / else语句,如:

if is_up = yes then "Its Up" else   
if is_down = yes then "Its Down else   
if is_left = yes then "Its Left else     
if is_right = yes then "Its Right" else "Not"  

这在记录满足多个条件之前有效,然后报告仅在满足第一个条件时显示记录

我想对这个公式进行分组,并显示满足每个条件的所有记录,因此如果record_id 3344在每个条件中都有“是” - 它会显示在每个组下面

理想情况下,我希望避免为每个案例提供多个子报告

对任何建议或想法持开放态度,谢谢!

1 个答案:

答案 0 :(得分:0)

如果要为要转换的20列调用条件/函数20次,请使用sql命令数据源而不是基于表。

您需要关注:

  1. 一个sql标量函数,用于返回条件的结果或对所有20个字段或IIF使用CASE语句(SQL Server 2012及以上版本)

  2. 您的主要SQL语句

  3. 示例代码

    Select iif(col1='condition',truevale,falsevalue) t1,.....t20 from table
    

    或者

    let data = json["venue"].dictionaryValue
    print(data.keys)
    

    或CASE