1

iReport 5.0.1 を使用しています。日付パラメーターを作成し、クエリで使用しています。

ここに画像の説明を入力

レポートをプレビューするときに、日付パラメーターを入力します。

ここに画像の説明を入力

すべてのパラメーターを入力してレポートを実行すると、次のエラーが表示されます。

Error filling print... Error executing SQL statement for : Sample
net.sf.jasperreports.engine.JRException: Error executing SQL statement for : Sample 
    at com.jaspersoft.jrx.query.PlSqlQueryExecuter.createDatasource(PlSqlQueryExecuter.java:143) 
    at net.sf.jasperreports.engine.fill.JRFillDataset.createQueryDatasource(JRFillDataset.java:1086) 
    at net.sf.jasperreports.engine.fill.JRFillDataset.initDatasource(JRFillDataset.java:667)
    at net.sf.jasperreports.engine.fill.JRBaseFiller.setParameters(JRBaseFiller.java:1258) 
    at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:877) 
    at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:822) 
    at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:61) 
    at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:446) 
    at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:276) 
    at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:745) 
    at com.jaspersoft.ireport.designer.compiler.IReportCompiler.run(IReportCompiler.java:891) 
    at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572) 
    at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997) 
Caused by: org.postgresql.util.PSQLException: ERROR: syntax error at or near "Feb" 
    at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1592) 
    at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1327) 
    at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:192) 
    at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:451) 
    at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:350) 
    at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:254) 
    at com.jaspersoft.jrx.query.PlSqlQueryExecuter.createDatasource(PlSqlQueryExecuter.java:136) 
    ... 12 more 
Print not filled. Try to use an EmptyDataSource...

ここで何が起こっていますか?どうすれば修正できますか? ありがとう!

4

1 に答える 1

0

in は、レポートにパラメーターのリテラル値を含めることを意味する!と思います。$P!{...}

$P{start_date}$P{end_date}を両方とも なしで使用してみてください!

事実上、SQL ステートメントは以下を使用しています。

and finalinsdate >= Feb/18/2013

これは有効な SQL ステートメントではありません。つまり、PostgreSQL は次のように文句を言います。

org.postgresql.util.PSQLException: ERROR: syntax error at or near "Feb"

次回は、スクリーン キャプチャではなく、ソース コードをコピーして貼り付けます。

于 2013-02-18T19:15:43.970 に答える