我有一个表,其中包含 No、Name、Address、Phone、Email 列。我想在No
列中设置自动编号,而无需从我的 java 类中传递参数。有没有EL
什么可以解决的JasperReport
。我使用的是 5.1 版。
注:作为简单的表格,我没有提供源代码和模板。
我有一个表,其中包含 No、Name、Address、Phone、Email 列。我想在No
列中设置自动编号,而无需从我的 java 类中传递参数。有没有EL
什么可以解决的JasperReport
。我使用的是 5.1 版。
注:作为简单的表格,我没有提供源代码和模板。
尝试这个
放置一个文本字段并在表达式编辑器下粘贴$V{REPORT_COUNT}
并保存并运行 jasper jrxml
$V{REPORT_COUNT}
是一个内置变量。
如果您对最终值感兴趣,请将文本字段的评估时间设置为“报告”。
我们还可以打印字母而不是整数值。即我们可以打印 a,b,c... 而不是 1,2,3...
为此,我们需要传递一个要打印的字母列表作为序列号,这里我将使用以下代码创建字符列表,
List<String> characters = new ArrayList<String>(26);
for (char c = 'a'; c <= 'z' ; c++) {
characters.add(String.valueOf(c));
}
parametersMap.put("charactersList", characters);
现在,在设计中添加以下表达式以用字母而不是数字显示结果,
<textFieldExpression><![CDATA[$P{charactersList}.get(($V{REPORT_COUNT}-1)%26)]]></textFieldExpression>
这会将序列呈现为存储在给定索引处的列表中的字母表。