标签: ruport

解决Rails应用程序中的类名冲突

我一直在构建一个执行会计功能的Rails应用程序.作为其中的一部分,我有一个带有类名的模型Transaction.到目前为止一直很好,我已经建立了这个功能一个月左右,一切都按预期工作.

到现在...

我刚刚发现一些使用Ruport库在几个月前开发的旧报告功能已停止工作.看来,Ruport在生成PDF时需要一个也有类/模块命名的库Transaction.

TypeError in Admin/team reportsController#generate
Transaction is not a module

...

This error occurred while loading the following files:
  pdf/writer
  transaction/simple
Run Code Online (Sandbox Code Playgroud)

所以,我正在寻找一个快速解决方案.一个希望不涉及重命名我的Transaction模型和重构最后几周的代码.

期待一些聪明的建议:)

ruby conflict ruby-on-rails classname ruport

7
推荐指数
2
解决办法
5874
查看次数

考虑到长期使用,Ruport vs. Prawn

我想在我的Rails应用程序中添加报告功能,现在我正在努力使用哪种报告软件来创建我的PDF文档.

到目前为止,我很确定RuportPrawn是最好的方式.

在对它们进行实验后,我发现它们都非常强大且非常普遍,但它们也有不同的特点,我担心从长远来看,我可能会做出错误的选择.

Ruport和Prawn如何在大型复杂的应用程序中相互比较长期使用?

  • 可维护性?生成代码的报告会成倍增长吗?代码是否容易变脆?
  • 可用性?图书馆还会在几年内积极维护吗?(ruport-util似乎有些过时......)
  • 可定制性?使用相同的代码库为不同的客户端生成不同的布局有多容易?
  • 最重要的是:在做出选择之前我应该​​考虑的任何其他方面我都不知道吗?

先感谢您!

ruby reporting ruby-on-rails prawn ruport

6
推荐指数
0
解决办法
2486
查看次数

Rails,二维表,pivot,嵌套哈希循环

我正在制作成绩簿报告 - 一个二维表格,显示水平的课程名称和垂直学生的列表.

Student Name | LessonID x | LessonID x | LessonID x          
Joe                 95%        95%
Mary                80%        80% 
Sam                 80%                    80%
Run Code Online (Sandbox Code Playgroud)

我的数据位于包含以下字段的表中:

student_id, lesson_id, grade_in_pct, grade_in_pts, grade_high, grade_low, grade_median
Run Code Online (Sandbox Code Playgroud)

学生和课程总数不固定.

我考虑过使用ruport/acts_as_reportable或mysql pivot程序,但看起来这个pivot只给了我一个维度.所以这不会起作用,因为在我看来,我想添加鼠标悬停功能和条件格式以显示每个年级的更多信息.

所以我认为我唯一的选择是生成一个嵌套的哈希,然后在视图中循环它.你的想法是什么?有人可以建议一种方法来构建嵌套哈希吗?循环250行(约50名学生,每门5堂课)是否过于处理器密集?

我被卡住了.请帮忙.谢谢!

arrays hash pivot ruby-on-rails ruport

6
推荐指数
1
解决办法
1379
查看次数

Ruby中的文本格式(适用于装箱单)

我需要为我正在处理的Ruby on Rails项目生成格式化的文本打包单.我正在考虑使用Ruport或者只是将自己格式化为字符串并将其输出到文本中.唯一的挑战是适当地证明所有输出.它需要看起来像这样,总是正确对齐.有什么建议?

Company Name
(T) 1-800-123-1234
(E) info@company.com

BILL TO: CUSTOMER NAME                   SHIP TO: CUSTOMER NAME
123 Some Street                          321 Some Street
Address etc.                             Address etc.

Date: 2010-03-12 16:30
Payment Number: 1234-123456

LN  NAME             SKU           DESCRIPTION             QTY    PRICE      TOTAL
----------------------------------------------------------------------------------
001 Product name     GUDB 012 HGQ  product description     2      52.99     105.98
         - Color
Run Code Online (Sandbox Code Playgroud)

ruby formatting ruby-on-rails packing ruport

2
推荐指数
1
解决办法
1340
查看次数

如何使用Ruport/Ruby on Rails进行分组?

我正在尝试评估Ruport在我的Rails应用程序中使用,但我不确定如何使用日期/时间戳记拍摄一系列记录并通过Ruport的分组功能对它们进行分组.

如果Ruport没有意义,我会接受其他/更好的方法来做同样的分组.

ruby mysql reporting ruby-on-rails ruport

1
推荐指数
1
解决办法
1428
查看次数

Ruport - 未定义的方法`each'表示"":String

对不起我的英语不好.

我正在关注这个tuto:http: //ruportbook.com/printable_documents.html ,第一个例子,但我得到未定义的方法`每个'为"":字符串一直,我用这段代码创建了一个新文件:

class MultiTableController < Ruport::Controller    
  stage :multi_table_report    
  class PDF < Ruport::Formatter::PDF    
    renders :pdf, :for => MultiTableController    
    build :multi_table_report do
      data.each { |table| pad(10) { draw_table(table) } }
      render_pdf
    end    
  end    
end
Run Code Online (Sandbox Code Playgroud)

然后,在名为workers_controller.rb的现有控制器中,我执行了下一个操作:

  def index_report
    t1 = Table(%w[a b c]) << [1,2,3] << [4,5,6]
    t2 = Table(%w[a b c]) << [7,8,9] << [10,11,12]
    pdf = MultiTableController.render_pdf(:data => [t1,t2])
  end
Run Code Online (Sandbox Code Playgroud)

我当然把这条路线添加到routes.rb.

然后,我在浏览器上收到此错误:

undefined method `each' for "1":String
Run Code Online (Sandbox Code Playgroud)

但错误不仅发生在这个例子中,我已经尝试了许多其他例子,我得到了同样的错误.

一些帮助?请提前!问候.

ruby reporting ruby-on-rails ruport ruby-on-rails-3

1
推荐指数
1
解决办法
1万
查看次数