当前位置: 首页 > 工具软件 > jasper-rails > 使用案例 >

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

扈瑞
2023-12-01

今天终于打开报表了,原来是传参数传的不对。应该传给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

 类似资料: