JasperSoft中数据集参数中的条件表达式

时间:2015-06-16 10:31:26

标签: mongodb jasper-reports conditional

我有一个与MongoDB相关联的.jrxml报告。在这个报告中,我有一个包含许多Dataset参数的表,以便动态创建查询。不幸的是,我有一个这样的参数问题,它看起来像:

($P {
    Owner
} == null || $P {
    Owner
}.equals("")) ? new String(""): ($P {
    Owner
}.equals("Pool")) ? "$and:[\"OpnPrps.CurAgtNme\":null,\"Nms.CloAgt\":null]" : "$or:[\"OpnPrps.CurAgtNme\":\"" + $P {
    Owner
} + "\",\"Nms.CloAgt\":\"" + $P {
    Owner
} + "\"]"

我的问题是,当我预览报告时,我的查询的$and$or部分无法执行,并且出现以下错误:

net.sf.jasperreports.engine.JRException: com.mongodb.util.JSONParseException: {
    'findQuery': {
        "OlaDat": {
            '$lte': {
                "$date": 1434438846714
            },
            '$gt': {
                "$date": 1402902732089
            }
        },
        * * $and: ["OpnPrps.CurAgtNme": null, "Nms.CloAgt": null],
        * *
        "Nms.Src": "e-mail"
    }

有没有办法更改这些条件才能在数据集参数中获得可评估的值?

0 个答案:

没有答案