2012-04-18 112 views
0

我正在使用JasperReports Java API。我使用JRDesignExpression显示在报表上的价值观,用这样的代码:JRDesignExpression setText()语法

JRDesignExpression expression = new JRDesignExpression(); 
expression.setText("$F{" + fieldName + "}"); 

我看到$ F {somename}语法在一些网上的例子,只是把它抄了,因为的setText()未记录,像许多JasperReports API: http://jasperreports.sourceforge.net/api/net/sf/jasperreports/engine/design/JRDesignExpression.html#setText(java.lang.String

但是有一些文档描述该语法的其他地方吗?例如,我想指定数字的格式。

+0

您可以设置通过模式[JRTextField.setPattern(字符串)](http://jasperreports.sourceforge.net/api/ net/sf/jasperreports/engine/JRTextField.html#setPattern%28java.lang.String%29)方法 – 2012-04-18 10:16:30

+0

这当然有用。谢谢。但是我仍然想知道setText()接受了什么语法。 – murrayc 2012-04-18 18:35:28

+0

据我所知,你可以设置任何有效的表达。您可以阅读[JasperReports Ultimate Guide]中的语法(http://jasperforge.org/uploads/publish/jasperreportswebsite/trunk/JasperReports-Ultimate-Guide-3.pdf) – 2012-04-19 06:37:45

回答

0

语法无误。我有同样的问题,我申请的文本,并看到null值。原来问题出在我的代码上。我编辑了JasperDesignJasperReport在我做了所有更改之前。所以确保你做了所有的修改,然后编译。

JasperDesign jasperDesign = JRXmlLoader.load(inputStream); 

//perform all modifications 

JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign); 

//continue with export 

,并且确保你真正把它添加到一些JRDesignTextField