Class: Reportme::Report
Instance Attribute Summary collapse
-
#name ⇒ Object
Returns the value of attribute name.
-
#setup_callback ⇒ Object
Returns the value of attribute setup_callback.
Instance Method Summary collapse
- #columns(table_name) ⇒ Object
- #dependencies ⇒ Object
- #depends_on(dependencies = []) ⇒ Object
- #exec(sql) ⇒ Object
- #historice?(history) ⇒ Boolean
- #histories(histories = []) ⇒ Object
-
#initialize(report_factory, name, temporary = false) ⇒ Report
constructor
A new instance of Report.
- #select_all(sql) ⇒ Object
- #select_rows(sql) ⇒ Object
- #select_value(sql) ⇒ Object
- #select_values(sql) ⇒ Object
- #setup(&block) ⇒ Object
- #source(&block) ⇒ Object
- #sql(von, bis, period_name) ⇒ Object
- #table_name(period) ⇒ Object
- #temporary? ⇒ Boolean
Constructor Details
#initialize(report_factory, name, temporary = false) ⇒ Report
Returns a new instance of Report.
7 8 9 10 11 12 13 14 15 16 |
# File 'lib/reportme/report.rb', line 7 def initialize(report_factory, name, temporary=false) name = name.to_sym @report_factory = report_factory @name = name @depends_on = [] @histories = [] @temporary = temporary end |
Instance Attribute Details
#name ⇒ Object
Returns the value of attribute name.
4 5 6 |
# File 'lib/reportme/report.rb', line 4 def name @name end |
#setup_callback ⇒ Object
Returns the value of attribute setup_callback.
5 6 7 |
# File 'lib/reportme/report.rb', line 5 def setup_callback @setup_callback end |
Instance Method Details
#columns(table_name) ⇒ Object
71 |
# File 'lib/reportme/report.rb', line 71 def columns(table_name); @report_factory.columns(table_name); end |
#dependencies ⇒ Object
39 40 41 |
# File 'lib/reportme/report.rb', line 39 def dependencies @depends_on end |
#depends_on(dependencies = []) ⇒ Object
34 35 36 37 |
# File 'lib/reportme/report.rb', line 34 def depends_on(dependencies=[]) dependencies = dependencies.collect{|d| d.to_sym} @depends_on += dependencies end |
#exec(sql) ⇒ Object
66 |
# File 'lib/reportme/report.rb', line 66 def exec(sql); @report_factory.exec(sql); end |
#historice?(history) ⇒ Boolean
30 31 32 |
# File 'lib/reportme/report.rb', line 30 def historice?(history) @histories.include?(history) end |
#histories(histories = []) ⇒ Object
26 27 28 |
# File 'lib/reportme/report.rb', line 26 def histories(histories=[]) @histories = histories end |
#select_all(sql) ⇒ Object
69 |
# File 'lib/reportme/report.rb', line 69 def select_all(sql); @report_factory.select_all(sql); end |
#select_rows(sql) ⇒ Object
70 |
# File 'lib/reportme/report.rb', line 70 def select_rows(sql); @report_factory.select_rows(sql); end |
#select_value(sql) ⇒ Object
67 |
# File 'lib/reportme/report.rb', line 67 def select_value(sql); @report_factory.select_value(sql); end |
#select_values(sql) ⇒ Object
68 |
# File 'lib/reportme/report.rb', line 68 def select_values(sql); @report_factory.select_values(sql); end |
#setup(&block) ⇒ Object
43 44 45 |
# File 'lib/reportme/report.rb', line 43 def setup(&block) @setup_callback = block end |
#source(&block) ⇒ Object
22 23 24 |
# File 'lib/reportme/report.rb', line 22 def source(&block) @source = block end |
#sql(von, bis, period_name) ⇒ Object
47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/reportme/report.rb', line 47 def sql(von, bis, period_name) raw = @source.call(von, bis, period_name) <<-SQL select '#{von}' as von, rtmp1.* from ( #{raw} ) rtmp1 SQL end |
#table_name(period) ⇒ Object
61 62 63 64 |
# File 'lib/reportme/report.rb', line 61 def table_name(period) prefix = temporary? ? "tmp_" : "" "#{prefix}#{name}_#{period}" end |
#temporary? ⇒ Boolean
18 19 20 |
# File 'lib/reportme/report.rb', line 18 def temporary? @temporary end |