【问题标题】:How to validate the date input controls in Jasper Server/Jasper Reports如何验证 Jasper Server/Jasper Reports 中的日期输入控件
【发布时间】:2016-07-04 03:31:18
【问题描述】:

我想对这些日期进行验证,例如:

1) END_DATE 不应早于 START_DATE
2) START_DATE 不应大于 END_DATE

【问题讨论】:

    标签: jasper-reports jasperserver


    【解决方案1】:

    您可以在这种情况下使用变量。我创建了一个类似的名称并复制了您的要求。

    <variable name="START_DATE_corr" class="java.util.Date">
        <variableExpression><![CDATA[($F{START_DATE}.getTime() > $F{END_DATE}.getTime()) ? $F{END_DATE} : $F{START_DATE}]]></variableExpression>
    </variable>
    
    <variable name="END_DATE_corr" class="java.util.Date">
        <variableExpression><![CDATA[$F{END_DATE}.getTime() < $F{START_DATE} ? $F{START_DATE} : $F{END_DATE}]]></variableExpression>
    </variable>
    

    之后就可以使用变量了

    $V{START_DATE_corr}
    $V{END_DATE_corr}
    

    在您的报告中。

    【讨论】:

    • 但我需要输入控件级别的验证。
    • 输入控件级别验证恐怕只用于检查一次只有一个参数的正确格式是否是正确的数据格式,以防止恶意使用参数。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-04
    • 1970-01-01
    • 2018-01-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多