roo
Get Version
0.0.3
What
This gem allows you to access the values from open-office documents (.ods).
Installing
sudo gem install roo
The basics
Currently only read-access is implemented.
Please note that the upper left cell of a table is numbered (1,1) or (1,’A’) (not 0,0).
Demonstration of usage
Supposed you have created this spreadsheet:
which includes the amount of work you have done for a customer.
You can now process this spreadsheet with the following sample code.
1 require 'rubygems'
2 require 'roo'
3
4 HOURLY_RATE = 123.45
5
6 oo = Openoffice.new("/home/tp/Desktop/simple_spreadsheet.ods")
7 oo.default_sheet = oo.sheets.first
8 4.upto(1000) do |line|
9 # puts "line: "+line.to_s
10 date = oo.cell(line,'A')
11 start_time = oo.cell(line,'B')
12 start_time = 0.0 unless start_time
13 end_time = oo.cell(line,'C')
14 end_time = 0.0 unless end_time
15 pause = oo.cell(line,'D')
16 pause = 0.0 unless pause
17 sum = (end_time-start_time)-pause
18 comment = oo.cell(line,'F')
19 amount = sum * HOURLY_RATE
20 if date
21 puts "#{date}\t#{sum}\t#{amount}\t#{comment}"
22 end
23 end
which produces this output
2007-05-07 1.75 216.0375 lokale lauff��hige Umgebung aufgesetzt, Datenbank eingerichtet, Repository erstellt und anf��nglichen Sourcecode eingestellt
2007-05-07 1.0 123.45 Userstories erfasst
2007-05-08 1.0 123.45 Test neuen User anlegen, Perioden (��berschneidend) anzulegen
2007-05-08 1.0 123.45 Bestandsaufnahme/Aufwandssch��tzung/Korrespondenz
2007-05-08 0.5 61.725 Functional Test Ueberschneidung
2007-05-14 0.5 61.725
2007-05-14 0.5 61.725
2007-05-15 1.0 123.45
2007-05-15 0.75 92.5875 G��stebuch
2007-05-15 0.5 61.725 G��stebuch
2007-05-15 0.5 61.725 G��stebuch
2007-05-16 1.0 123.45 G��stebuch
2007-05-17 0.25 30.8625 G��stebuch
2007-05-17 1.25 154.3125 G��stebuch
2007-05-18 3.0 370.35 G��stebuch
2007-05-18 1.75 216.0375 G��stebuch
Documentation
Forum
http://groups.google.com/group/ruby-roo
Wiki
http://roo.rubyforge.org/wiki/wiki.pl
License
This code is free to use under the terms of Ruby
Contact
Comments are welcome. Send an email to Thomas Preymesser.
Dr Nic, 30th May 2007
Theme extended from Paul Battley