在ruby on rails中调用jasperserver的webservice报表

今天终于打开报表了,原来是传参数传的不对。应该传给jasperserver的参数是will_id而不是will。这种情况下可以去ireport中看看sql查询,看看究竟需要传数据表中的哪个字段。

 def example_report
    output_format = "PDF"
    report_unit = "/reports/samples/EmployeeAccounts"
#    report_unit = "/adhoc/topics/CustomersReport"
#    report_unit = "/supermart/details/CustomerDetailReport"
#    report_params = Hash.new(params[:report_params]) # this should be a Hash!
#    report_params ="["+"["+"EmployeeID,matt"+"]"+"]"
#    report_params ={"key" => "Employee", "value" => "matt"}
      report_params = {'EmployeeID'=>params[:report_params]}
#       report_params = {'DateFrom'=>'19931111','DateTo'=>Time.now}
    puts report_params.to_s
    client = JasperServer::Client.new("http://localhost:8080/jasperserver-pro/services/repository",
                                      "jasperadmin", "jasperadmin")
    request = JasperServer::ReportRequest.new(report_unit, output_format,report_params)
    pdf_data = client.request_report(request)

    filename = params[:action]+" on "+Time.now.iso8601
    send_data(pdf_data, :type => Mime::Type.lookup_by_extension(output_format.downcase),
              :disposition => 'inline', :filename => filename)
  end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值