MS-Word Dokumente erzeugen

ja hallo erstmal,…

ich suche derzeit nach einer Möglichkeit ein MS Word Dokument zu erzeugen.
Gegen ist eine Word - Vorlage. In diese Vorlage sollen Daten aus der
Datenbank
eingefügt werden - das Dokument soll dann zum Nutzer gesendet werden.
In Java / kein Problem - hier wird man praktisch mit Libs erschlagen -
aber
für Ruby / Rails habe ich noch nichts gefunden.

Kennt ihr was nettes?

Danke,
Keep smiling
yanosz

Hi,

für ruby gibts ein “win32ole” lib. habe sie selbst noch nicht benutzt,
aber schau mal bei
david mullett vorbei. dort gibts beispiele für word und excel.

gruss,
christian

Am 04.02.2008 um 18:30 schrieb Jan L.:

Kennt ihr was nettes?

Danke,
Keep smiling
yanosz


rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug

|||| Christian A.
|||| tel +49 178 4049442
|||| email [email protected]
||||
|||| innoQ Deutschland GmbH
|||| Halskestrasse 17
|||| D-40880 Ratingen
|||| tel +49 2102 7716 20
|||| fax +49 2102 7716 01
|||| web www.innoq.com
|||| blog www.innoq.com/blog/ca/wordpress

ja hallo erstmal,…

Am Montag, 4. Februar 2008 schrieb Christian A.:

Hi,

für ruby gibts ein “win32ole” lib. habe sie selbst noch nicht benutzt,
aber schau mal bei
david mullett vorbei. dort gibts beispiele für word und excel.

Ruby on Windows: word

Danke, aber auf meinem Debian funktioniert das eher nicht…
Was ich bräuchte wäre so etwas wie Perl’s OpenOffice::OODoc.

Keep smiling
yanosz

aso,
glaube da gibts im moment kein projekt welches mit dem neuen
openoffice format umgehen kann ?

für spreadsheets(excel & oo) : http://rubyforge.org/projects/roo/

vielleicht kann man da einen eindruck von REXML bekommen.

gruss,
christian

Am 04.02.2008 um 19:43 schrieb Jan L.:

Ruby on Windows: word

Danke, aber auf meinem Debian funktioniert das eher nicht…
Was ich bräuchte wäre so etwas wie Perl’s OpenOffice::OODoc.

Keep smiling
yanosz


rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug

|||| Christian A.
|||| tel +49 178 4049442
|||| email [email protected]
||||
|||| innoQ Deutschland GmbH
|||| Halskestrasse 17
|||| D-40880 Ratingen
|||| tel +49 2102 7716 20
|||| fax +49 2102 7716 01
|||| web www.innoq.com
|||| blog www.innoq.com/blog/ca/wordpress

ja hallo erstmal,…

Am Dienstag, 5. Februar 2008 schrieb Thomas P.:

  1. Muß es denn unbedingt ein Dokument im Word-Format sein, oder würde z.B.
    PDF auch genügen? Falls letzteres, da gibt es ja schon Lösungen für Ruby
    (Rails vielleicht auch, weiß ich nicht).
  2. Beim Stichwort “Google”. Theoretisch wäre da ja eine Lösung denkbar, bei
    der man sein Dokument per Google-API erstellen und dann einen Download im
    Word-Format (oder Openoffice) durchführt und dieses Dokument dem Benutzer
    sendet.

leider habe ich mich ein wenig ungeschickt ausgrückt. Der Punkt ist,
dass die
Vorlage ein Word-Dokument ist - was ich auch gerne belassen würde.
Ob hinterher ein .doc/.docx/.odf oder pdf herauskommt ist nicht ganz so
wichtig - ein Format, dass einfach zu bearbeiten wäre (.doc/.odf) wäre
aber
nett.
Derzeit überlege ich, es es nicht das beste wäre, die .docs ins odf zu
konviertieren und den XML-Baum zu bearbeiten ohne ihn zu verstehen (also
ohne
ihn über die XML-Ebene hinaus zu interpretieren) zu bearbeiten.

Die “Fachseite” von OpenOffice zu überzeugen scheint eigentlich
realistisch.

Keep smiling
yanosz

On 05/02/2008, Christian A. [email protected] wrote:

aso,
glaube da gibts im moment kein projekt welches mit dem neuen openoffice
format umgehen kann ?

für spreadsheets(excel & oo) : http://rubyforge.org/projects/roo/

…und Google-Spreadsheets

  1. Muß es denn unbedingt ein Dokument im Word-Format sein, oder würde
    z.B.
    PDF auch genügen? Falls letzteres, da gibt es ja schon Lösungen für Ruby
    (Rails vielleicht auch, weiß ich nicht).
  2. Beim Stichwort “Google”. Theoretisch wäre da ja eine Lösung denkbar,
    bei
    der man sein Dokument per Google-API erstellen und dann einen Download
    im
    Word-Format (oder Openoffice) durchführt und dieses Dokument dem
    Benutzer
    sendet.

-Thomas

Lieber Jan,

Am Wed, 6 Feb 2008 16:28:23 +0100 schrieb Jan L.
[email protected]:

Derzeit überlege ich, es es nicht das beste wäre, die .docs ins odf zu
konviertieren und den XML-Baum zu bearbeiten ohne ihn zu verstehen (also ohne
ihn über die XML-Ebene hinaus zu interpretieren) zu bearbeiten.

in diesem Fall könnte Documatic* etwas für dich sein! Unter
http://stonecode.svnrepository.com/documatic/trac.cgi/wiki/HowItWorks
gibt’s einen recht guten Ãœberblick.

Beste Grüße
Moritz

On 06/02/2008, Jan L. [email protected] wrote:

leider habe ich mich ein wenig ungeschickt ausgrückt. Der Punkt ist, dass
die
Vorlage ein Word-Dokument ist - was ich auch gerne belassen würde.

ja, aber wenn das nicht unbedingt Voraussetzung sein muß und wenn sich
das
nicht laufend ändert, dann könnte man sich ja für diese Dokumente
auch
ein Rahmen-Dokument (als Ruby-Programm) definieren welches pdf-Output
erstellt und darin dann jeweils nur die individuellen Sachen
parametrisiert
ausgeben.

Derzeit überlege ich, es es nicht das beste wäre, die .docs ins odf zu
konviertieren und den XML-Baum zu bearbeiten ohne ihn zu verstehen (also
ohne
ihn über die XML-Ebene hinaus zu interpretieren) zu bearbeiten.

Ich habe mich ja etwas mit der Spreadsheet-Seite von Openoffice
beschäftigt - wenn das bei Textdokumenten ähnlich aufgebaut ist und
du
im wesentlichen nur Textersatz brauchst, dann sollte es keine großen
Schwierigkeiten geben, in der entsprechenden XML-Datei einfach die
nötigen
Änderungen vorzunehmen und das alles wieder als Openoffice-Dokument
zusammenzupacken.

Gruß
-Thomas


Thomas P.
[email protected]
[email protected]
Büro: 030 - 830 353 88
mobil: 0176 - 75 03 03 04
Privat: 030 - 49 78 37 06

http://www.thopre.com/

Am 06.02.2008 um 18:25 schrieb Thomas P.:

ja, aber wenn das nicht unbedingt Voraussetzung sein muß und wenn
sich das nicht laufend ändert, dann könnte man sich ja für diese
Dokumente auch ein Rahmen-Dokument (als Ruby-Programm) definieren

wenn dann gleich eine DSL, ist auch viel angenehmer als XML oder gar
yaml.

Ich bin zur Zeit am überlegen ob das für ein Projekt von mir Sinn
macht bei dem
die User Karten als PDF erstellt bekommen und ich ein paar Vorlagen
haben möchte.
Bei der Preisberechnung wird’s auf jeden Fall eine DSL.

ciao, tom


Thomas R. “TomK32” Koll || http://tomk32.de || http://ananasblau.com
(NEW)
just a geek trying to change the world
Skype: TomK32 || Mail: [email protected]

Hallo Jan,

On 08/02/2008, Jan L. [email protected] wrote:

Es ist schon notwendig, dass die Fachseite das Dokument ohne großen
Aufwand
ändern kann.

dann wäre vielleicht die Openoffice-Lösung zu bevorzugen, bei der die
Fachseite dann ein Dokument bearbeiten kann, in dem dann z.B.
Variablen-Ersetzung a la ${VORNAME}, ${NACHNAME} etc. durchgeführt wird.

Gruß
-Thomas


Thomas P.
[email protected]
[email protected]
Büro: 030 - 830 353 88
mobil: 0176 - 75 03 03 04
Privat: 030 - 49 78 37 06

http://www.thopre.com/

na, ganz trivial ist aber auch die Lösung nicht, oder?! Wenn ich das
noch richtig im Kopf habe, dann war das odt ja ein zip, in dem der
Inhalt als content.xml abgelegt war: Man muss das Ganze also
unzippen, suchen&ersetzen und dann wieder zippen - oder gibt’s da
noch einen einfacheren Weg? Ãœber die Office SDK’s vielleicht? Ein
einfacherer Weg würde mich jetzt aber dann auch interessieren.,…

Grüße
stefan

Am 08.02.2008 um 10:58 schrieb Thomas P.:

ja hallo erstmal,…

Am Mittwoch, 6. Februar 2008 schrieb Thomas P.:

On 06/02/2008, Jan L. [email protected] wrote:

leider habe ich mich ein wenig ungeschickt ausgrückt. Der Punkt ist, dass
die
Vorlage ein Word-Dokument ist - was ich auch gerne belassen würde.

ja, aber wenn das nicht unbedingt Voraussetzung sein muß und wenn sich das
nicht laufend ändert, dann könnte man sich ja für diese Dokumente auch
ein Rahmen-Dokument (als Ruby-Programm) definieren welches pdf-Output
erstellt und darin dann jeweils nur die individuellen Sachen parametrisiert
ausgeben.

Es ist schon notwendig, dass die Fachseite das Dokument ohne großen
Aufwand
ändern kann.

Alles Gute
Jan

On Feb 08 2008, at 11:11, Stefan F. wrote:

Man muss das Ganze also unzippen, suchen&ersetzen und dann wieder
zippen

gem install rubyzip

require ‘zip/zipfilesystem’
Zip::ZipFile.open(“bla.odt”) do |z|
x = z.file.read(“content.xml”)
x.gsub!(/bla/, “blub”) # na ja…
z.file.open(“content.xml”, “w”) { |f| f.write x }
end

(Sorry fuer Fehler, nicht getestet)

Gruesse, Carsten