如何替换dataSetRow中每次出现的字符串?

时间:2013-01-31 14:15:26

标签: birt

我有一些非常大的rptdesign报告定义文件。

我想做类似下面的例子:

<expression name="expression">dataSetRow["WORK_DESCRIPTION"].replace(new RegExp('&amp;lt;', 'g'), '&lt;');</expression>

但是对于任何行中任何单元格中任何数据集中出现的字符串。

这可以在rptdesign中完成吗?

或者还有其他方法可以完成这项任务吗?

1 个答案:

答案 0 :(得分:0)

您可以这样做的一种方法是创建样式(使用预定义的数据样式)并向其添加地图。将脚本放在第一个表达式中,如:

    importPackage(Packages.java.lang);
    if( _jsContext.getContent().getValue() instanceof String ){
      if( _jsContext.getContent().getValue() == "S18_1749" ){
       _jsContext.getContent().setValue(_jsContext.getContent().getValue()+"--");
      }
    }
    true;

这将始终返回true。将第二个表达式设置为false,因此映射永远不会发生。这有点丑陋