直接在IREPORT里写的SQL查询:
select t.operatorid ,
       t.cardasn , 
       t.transterminal ,
       t.indbtime ,
       t.transamount ,
       (select p.posername from poser p where p.poserid = t.operatorid) as posername ,
       t.transtype 
       from tvalidtr t where t.transtype in (20,21)
       and t.operatorid = $P{poserid}
$P{poserid}为String类型java程序代码为:reportParams.put("poserid", String.valueOf(poserid));
showReport(ctx, "Poser_Day_Translist_Report", reportParams,"applet");
ctx.forwardByName("exportreport");
不知道为什么这样传参 查不出任何数据 ??
在线求解 !!!!

解决方案 »

  1.   

    传参看不出什么问题,只要参数名字和sql里面的对上就可以了,可能是其他问题。
      

  2.   

    刚好路过,解决了这个问题。
    你传的参数不对,用Map传参,可以看下API
    Map  map = new HashMap();
    map.put("projId", projId);
    String file = JasperFillManager.fillReportToFile(path+"/report/question.jasper", map, dbConn);
      

  3.   

    不好意思。看你的代码应该用的是Map。