![]() |
Wie erzeugt man heutzutage (Massen)Druckoutput?
Hallo zusammen,
ich arbeite als Entwickler in einem international tätigen Unternehmen, welches als Dienstleister in der Energiebranche auftritt. Unsere Software erzeugt Druckoutput in verschiedenen Formaten, welche zum Teil der Archivierung dienen (PDF) aber auch direkt an den Kunden gehen (PCL -> Papier). Unsere Datenbasis wird in einer Oracle-Datenbank verwaltet. Das von uns selbst entwickelte Drucksystem ist mittlerweile in die Jahre gekommen. Wir verwalten unterschiedliche Formulare in inhaltlich und layoutmässig unterschiedlichen Ausprägungen (da international unterschiedliche Anforderungen an den Output). Beispiel: Zitat:
Die benötigten Daten werden auf Zuruf innerhalb dieser Formulare zusammengesammelt und in eine Queue gestellt. Aus dieser werden dann nachts unterschiedliche Druckengines aufgerufen (PDF, PCL...) die die Daten dann entsprechend umsetzen und den eigentlichen Output erzeugen. Dieses ist alles native gelöst, d.h. wir benutzen hier keine Reporting-Tools oder so, sondern wird schreiben die PCL-, Postscriptbefehle usw. selber, inkl. der kompletten Formatierungen etc. Zu dieser Aufbereitung gehören auch weiterführende Prozesse wie bspw. der Aufruf von Webservices zur Archivierung der Daten oder das Erzeugen von Mails, die den Druckoutput als Attachment mit auf die Reise bekommen. Das ist alles schön und gut und funktioniert, aber was das für ein Moloch ist, könnt Ihr Euch sicherlich vorstellen. Die Integration neuer Technologien wie bspw. QR-Codes usw. sind recht aufwändig, da sie auch immer in allen Druckengines implementiert werden müssen. Des Weiteren bedarf es zwingend eines Programmierers (was für mich nicht unbedingt zum Nachteil ist :lol:), um kleinste Anpassungen am Layout oder so vorzunehmen. Nun ist es so, dass im Rahmen einer Umstrukturierung auch das Layout unserer Dokumente (und das sind ein paar 100) angepasst werden soll. So eine Runde haben wir zuletzt vor etwa 13 Jahren gedreht und zu meiner Schande muss ich gestehen, dass wir mit den Auswirkungen zum Teil heute noch zu kämpfen haben. Es ist so viel, was man in dem Bereich zu beachten hat, seien es passende Seitenumbrüche, horizontale Ausdehnung von dynamischen Elementen usw. Dieses in der aktuellen Infrastruktur umzusetzen, sehe ich als sehr kritisch. Somit komme ich zu meinem eigentlichen Anliegen 8-) Ich bin nun auf der Suche nach einer Alternative, die unser aktuelles Drucksystem ablösen soll. Und da ich mich diesbezüglich auf dem aktuellen Markt gar nicht auskenne, wende ich mich an Euch und hoffe, ein paar nette Ideen zu bekommen :) Fakten:
Must have:
Nice to have:
Nicht-Anforderungen:
Das ist erstmal das, was mir spontan so einfällt :) Ich habe mich schoneinmal mit XSLT auseinander gesetzt, weiß aber nicht, ob dieses bei dem Umfang einsetzbar ist. Da fehlt es an Erfahrungen. Ich freue mich über Eure Anregungen :) |
AW: Wie erzeugt man heutzutage (Massen)Druckoutput?
Generell brauchst du Report-Generatoren. Da gibt es z.B. FastReport oder Quickreport (dann lieber Fastreport).
Aber wenn du dich in der Richtung mal umschaust wirst du sicherlich was finden. Der Reportgenerator ist normalerweise ähnlich zu bedienen wie der Formular-Generator in Delphi. Programmierkenntnisse sind normalerweise nicht erforderlich. Wenn mich nicht alles täuscht gibt es bei fast allen (oder sogar alle) Report-Generatoren eine Option den Quelltext mitzukaufen. Kostet dann etwas mehr aber man kann die Engine als auch den Editor seinen wünschen anpassen. Wobei das eigentlich normalerweise nicht nötig ist. |
AW: Wie erzeugt man heutzutage (Massen)Druckoutput?
Und für die Skalierbarkeit nimmt man etwas wie MSMQ, ActiveMQ, usw. und schiebt die Jobs in so eine Queue. An der Queue lauschen dann 1-n Systeme, die diese Jobs verarbeiten können.
|
AW: Wie erzeugt man heutzutage (Massen)Druckoutput?
Wenn es Java sein darf:
![]() In der Community Edition kostenlos, lizensiert unter AGPL. Zitat:
Zitat:
|
AW: Wie erzeugt man heutzutage (Massen)Druckoutput?
Zitat:
|
AW: Wie erzeugt man heutzutage (Massen)Druckoutput?
Zitat:
Wenn man unbedingt zur Laufzeit des Reports noch eigene Delphi-Funktionen aufrufen will, sollte man dies zuerst noch mal überdenken. |
AW: Wie erzeugt man heutzutage (Massen)Druckoutput?
Zitat:
Die einzige Möglichkeit da eine andere Sprache als Delphi einzubringen ist entweder die vorhandene Software umzuschreiben (was wie gesagt total übertrieben wäre) oder ein zweites Programm in Java/C#/WasAuchImmer zu schreiben mit dem das Delphi Programm dann erst mal kommunizieren muss. Aber das wäre ja wohl mehr als umständlich/unnötig. |
AW: Wie erzeugt man heutzutage (Massen)Druckoutput?
Zitat:
|
AW: Wie erzeugt man heutzutage (Massen)Druckoutput?
Gibt es denn einen Reportgenerator, der PCL-Dokumente erzeugen kann? So was wäre für mich auch interessant.
Ansonsten stört mich ein wenig die Dateigröße von PDFs, die mit Fastreport erstellt wurden. |
AW: Wie erzeugt man heutzutage (Massen)Druckoutput?
Zitat:
Und mit FastReport erzeugt man auch (direkt) keine PDF-Dokumente (es sei denn man ist sehr leidensfähig oder es ist einem egal, was da raus kommt). |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz