finereport时间参数传递问题


使用finereport配置了数据库了,并且也把sQL写好了,使用如下截图的参数,是可以正常预览搜索出数据来的。




但是我再做参数的时候,问题就来了。参数我选择了两种方法。都会报错,,这个怎么破啊??感觉finereport的参数传递的时候有些问题。。。
第一个方法是用文本框,输入参数“2017-03-17”得出如下截图报错


第二个方法是用时间控件,参数类型“yyyy-MM-dd”,选择时间后,也是报错




FineReport笨山猴 发布于 2017-3-17 13:57
悬赏:2 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共15回答
最佳回答
0
黑丨粉木耳发布于2017-3-17 13:57(编辑于 2023-9-6 09:34)
555
最佳回答
0
Poseidon发布于2017-3-17 14:02(编辑于 2023-9-6 09:34)
555
  • 笨山猴 笨山猴(提问者)

    日期控件我已经拖到参数面板了,SQL也已经在接收参数增加引号了。。。但是还是这样,详细可以看看我截图
    回复
    2017-03-17 14:07 
最佳回答
0
笨山猴发布于2017-3-17 14:07(编辑于 2023-9-6 09:34)
555
最佳回答
0
Poseidon发布于2017-3-17 14:22(编辑于 2023-9-6 09:34)
555
  • 笨山猴 笨山猴(提问者)

    我需要的不仅仅有日期,还要有时间的,但是我尝试过了以下方法都不行。

    方法1:把参数面板的时间控件设置为yyyy-MM-dd HH:mm:ss的类型。
    然后数据集中的sql改为如下:
    AND a.transaction_date >=   to_date(\'${P_DATE_F}\', \'yyyy-MM-dd hh24:mi:ss\')
    AND a.transaction_date <=  to_date(\'${P_DATE_T}\', \'yyyy-MM-dd hh24:mi:ss\')
    系统报错
    前台网页报错:Query:ORA-00936: missing expression
    finereport工具日志输出如下:
    2017-03-17 14:46:45
    正常:报表计算中[Name : YYWL/out_in_inv_detail(1).cpt] [Parameter : {__LOCALE__ : zh_CN[java.util.Locale], __STREAMCLOSED__ : [java.lang.String], CMD : parameters_d[java.lang.String], INVENTORY : 子库存[java.lang.String], LABEL0 : 事务处理日期(从)[java.lang.String], LABEL0_C : 事务处理日期(到)[java.lang.String], LABEL1 : 事务处理类型[java.lang.String], LABEL2 : 物资编码[java.lang.String], LABEL3 : 物资类型[java.lang.String], LABEL4 : 库存组织[java.lang.String], LABEL5 : 仓管员[java.lang.String], OP : fr_dialog[java.lang.String], P_DATE_F : 2017-03-17 00:54:56[java.lang.String], P_DATE_T : 2017-03-17 14:46:33[java.lang.String], P_INVENTORY : [java.lang.String], P_ITEMCODE : [java.lang.String], P_ITEMTYPE : [java.lang.String], P_ORGID : 124[java.lang.String], P_TRANS_TYPE : [java.lang.String], P_USER : [java.lang.String], REPORTLET : YYWL/out_in_inv_detail(1).cpt[java.lang.String], REPORTNAME : YYWL/out_in_inv_detail(1).cpt[java.lang.String], SESSIONID : 67657[java.lang.String]}][Type : page]  : 错误代码:1301 数据集配置错误 Query: ORA-00936: missing expression





    方法2:把参数面板的时间控件设置为yyyy-MM-dd 的类型
    然后数据集中的sql改为如下,(把时间日期参数拼接起来)
    AND a.transaction_date >=   to_date(\'\'${P_DATE_F}\'\' ||\' 00:00:00\', \'yyyy-MM-dd hh24:mi:ss\')
    AND a.transaction_date <=   to_date(\'\'${P_DATE_T}\'\' ||\' 23:59:59\', \'yyyy-MM-dd hh24:mi:ss\')
    同样是报错
    前台网页页面提示ORA-00907: missing right parenthesis
    finereport工具日志输出如下:
    2017-03-17 14:44:04
    正常:报表计算中[Name : YYWL/out_in_inv_detail(1).cpt] [Parameter : {__LOCALE__ : zh_CN[java.util.Locale], __STREAMCLOSED__ : [java.lang.String], CMD : parameters_d[java.lang.String], INVENTORY : 子库存[java.lang.String], LABEL0 : 事务处理日期(从)[java.lang.String], LABEL0_C : 事务处理日期(到)[java.lang.String], LABEL1 : 事务处理类型[java.lang.String], LABEL2 : 物资编码[java.lang.String], LABEL3 : 物资类型[java.lang.String], LABEL4 : 库存组织[java.lang.String], LABEL5 : 仓管员[java.lang.String], OP : fr_dialog[java.lang.String], P_DATE_F : 2017-03-17[java.lang.String], P_DATE_T : 2017-03-17[java.lang.String], P_INVENTORY : [java.lang.String], P_ITEMCODE : [java.lang.String], P_ITEMTYPE : [java.lang.String], P_ORGID : 124[java.lang.String], P_TRANS_TYPE : [java.lang.String], P_USER : [java.lang.String], REPORTLET : YYWL/out_in_inv_detail(1).cpt[java.lang.String], REPORTNAME : YYWL/out_in_inv_detail(1).cpt[java.lang.String], SESSIONID : 24483[java.lang.String]}][Type : page]  : 错误代码:1301 数据集配置错误 Query: ORA-00907: missing right parenthesis


    回复
    2017-03-17 14:47 
最佳回答
0
笨山猴发布于2017-3-17 14:47(编辑于 2023-9-6 09:34)
555
  • Poseidon Poseidon

    日志调为debug重启服务,然后看打印的SQL
    回复
    2017-03-17 14:49 
最佳回答
0
Poseidon发布于2017-3-17 14:49(编辑于 2023-9-6 09:34)
555
  • 笨山猴 笨山猴(提问者)

    我已经设置了debug了,最后的错误信息

    [java.lang.String], INVENTORY : 子库存[java.lang.String], LABEL0 : 事务处理日期(从)[java.lang.String], LABEL0_C : 事务处理日期(到)[java.lang.String], LABEL1 : 事务处理类型[java.lang.String], LABEL2 : 物资编码[java.lang.String], LABEL3 : 物资类型[java.lang.String], LABEL4 : 库存组织[java.lang.String], LABEL5 : 仓管员[java.lang.String], OP : fr_dialog[java.lang.String], P_DATE_F : 2017-03-01[java.lang.String], P_DATE_T : 2017-03-07[java.lang.String],
    回复
    2017-03-17 15:05 
  • 笨山猴 笨山猴(提问者)


    就是没有sql输出来。。。

    严重:报表计算中[Name : out_in_inv_detail(1).cpt] [Parameter : {__LOCALE__ : zh_CN[java.util.Locale], __STREAMCLOSED__ : [java.lang.String], CMD : parameters_d[java.lang.String], FR_AUTHORITY : SUPERROLE[com.fr.general.FArray], FR_CURRENT_PRIVILEGE_LOADER : com.fr.fs.privilege.base.FServicePrivilegeLoader@1530503[com.fr.fs.privilege.base.FServicePrivilegeLoader], FR_FS_AUTH_KEY : com.fr.fs.privilege.entity.DaoFSAuthentication@12b11b9: Principal: xiewei; Password: [PROTECTED]; Authenticated: true; Granted Authorities: SUPERROLE: User: xiewei; [com.fr.fs.privilege.entity.DaoFSAuthentication], FR_USERNAME : xiewei[java.lang.String], INVENTORY : 子库存[java.lang.String], LABEL0 : 事务处理日期(从)[java.lang.String], LABEL0_C : 事务处理日期(到)[java.lang.String], LABEL1 : 事务处理类型[java.lang.String], LABEL2 : 物资编码[java.lang.String], LABEL3 : 物资类型[java.lang.String], LABEL4 : 库存组织[java.lang.String], LABEL5 : 仓管员[java.lang.String], OP : fr_dialog[java.lang.String], P_DATE_F : 2017-03-01[java.lang.String], P_DATE_T : 2017-03-07[java.lang.String], P_INVENTORY : [java.lang.String], P_ITEMCODE : [java.lang.String], P_ITEMTYPE : [java.lang.String], P_ORGID : 124[java.lang.String], P_TRANS_TYPE : [java.lang.String], P_USER : [java.lang.String], REPORTLET : out_in_inv_detail(1).cpt[java.lang.String], REPORTNAME : out_in_inv_detail(1).cpt[java.lang.String], SESSIONID : 92570[java.lang.String]}][Type : page]  :
    错误代码:1301 数据集配置错误
    Query:
    ORA-00936: missing expression

            at com.fr.report.core.A.H.dealWithBEDSColumn(Unknown Source)
            at com.fr.report.core.A.k.cc_ce_array(Unknown Source)
            at com.fr.report.core.A.H.A(Unknown Source)
            at com.fr.report.core.A.H.A(Unknown Source)
            at com.fr.report.core.A.H.C(Unknown Source)
            at com.fr.report.core.A.H.execute4Expand(Unknown Source)
            at com.fr.report.core.A.H.execute(Unknown Source)
            at com.fr.report.worksheet.WorkSheet.execute(Unknown Source)
            at com.fr.report.core.sheet.WorkBookExecutor._execute(Unknown Source)
            at com.fr.report.core.sheet.WorkBookExecutor.execute(Unknown Source)
            at com.fr.main.impl.WorkBook.execute(Unknown Source)
            at com.fr.log.LogUtils.executeAndLogRecord(Unknown Source)
            at com.fr.log.LogUtils.executeAndLogRecord(Unknown Source)
            at com.fr.web.cache.ReportCache.getResultWorkBook(Unknown Source)
            at com.fr.stable.PageActor.getResultBookFromCacheIfNeed(Unknown Source)
            at com.fr.main.impl.WorkBookTemplateDelegate.execute(Unknown Source)
            at com.fr.web.core.ReportSessionIDInfor.calResultWorkBook(Unknown Source)
            at com.fr.web.core.ReportSessionIDInfor.initBook2Show(Unknown Source)
            at com.fr.web.core.ReportSessionIDInfor.getWorkBook2Show(Unknown Source)
            at com.fr.web.core.ReportSessionIDInfor.getResultWorkBook(Unknown Source)
            at com.fr.web.core.ReportSessionIDInfor.createPageSetChain(Unknown Source)
            at com.fr.web.core.ReportSessionIDInfor.getReportPage(Unknown Source)
            at com.fr.web.core.A.$C.A(Unknown Source)
            at com.fr.web.core.A.$C.A(Unknown Source)
            at com.fr.web.core.A.pB.A(Unknown Source)
            at com.fr.web.core.A.DB.actionCMD(Unknown Source)
            at com.fr.web.core.WebActionsDispatcher.dealForActionCMD(Unknown Source)
            at com.fr.web.core.WebActionsDispatcher.dealForActionDefaultCmd(Unknown Source)
            at com.fr.web.core.A.mB.process(Unknown Source)
            at com.fr.web.core.ReportDispatcher.dealWithOp(Unknown Source)
            at com.fr.web.core.ReportDispatcher.dealWeblet(Unknown Source)
            at com.fr.web.core.ReportDispatcher.dealWithRequest(Unknown Source)
            at com.fr.web.BaseServlet.doGet(Unknown Source)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:596)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
            at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:428)
            at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:473)
            at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:568)
            at org.mortbay.http.HttpContext.handle(HttpContext.java:1530)
            at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:633)
            at org.mortbay.http.HttpContext.handle(HttpContext.java:1482)
            at org.mortbay.http.HttpServer.service(HttpServer.java:909)
            at org.mortbay.http.HttpConnection.service(HttpConnection.java:820)
            at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:986)
            at org.mortbay.http.HttpConnection.handle(HttpConnection.java:837)
            at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:245)
            at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:357)
            at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:534)
    回复
    2017-03-17 15:08 
最佳回答
0
笨山猴发布于2017-3-17 15:04(编辑于 2023-9-6 09:34)
555
最佳回答
0
笨山猴发布于2017-3-17 15:05(编辑于 2023-9-6 09:34)
555
最佳回答
0
笨山猴发布于2017-3-17 15:08(编辑于 2023-9-6 09:34)
555
  • Poseidon Poseidon

    你改debug 了么?
    回复
    2017-03-17 15:09 
最佳回答
0
Poseidon发布于2017-3-17 15:09(编辑于 2023-9-6 09:34)
555
  • 笨山猴 笨山猴(提问者)

    有的,刚刚我用之前开发的一个正常的报表,故意把SQL改错,然后查看日志,是有输出sql的,
    就是这个没有。。。。
    回复
    2017-03-17 15:28 
  • 0关注人数
  • 1875浏览人数
  • 最后回答于:2017-3-19 16:26
    活动推荐 更多
    热门课程 更多
    返回顶部