2012-04-18 17 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