EMD und Datenbank-EMD

Im Laufe meiner Tätigkeit bei der Firma s.a.x. Software GmbH in Karlsruhe habe ich dort das Programm EMD (Elektronischer Mehrschacht-Drucker), einen PCL-Druckerfilter entwickelt. Nach meinem Ausscheiden bei s.a.x. bekam ich die Möglichkeit, Weiterentwicklung und Support im Auftrag der Firma s.a.x. zu übernehmen. Im Rahmen einer Kooperation von s.a.x. mit der Firma Hefter Systemform GmbH wurden in dieser Zeit OME-Marken für unterschiedliche Kuvertiermaschinen in den EMD integriert, der von Hefter unter dem Namen Hefter OME-Generator vertrieben wird. Diese Zusammenarbeit schlief nach der Übernahme des Programms EMD durch die Firma Stethos allmählich ein.

Der unter Windows und Linux lauffähige EMD ist ein Programm, das den PCL-Datenstrom analysiert und in Abhängigkeit von Schlüsseln und/oder der in einer Datei hinterlegten Konfiguration Schriften, Formulare, OME-Marken, Barcodes sowie weitere Kommandos zur Steuerung des Ausdrucks einfügt. Unter Windows wird der Filter über einen speziellen Printprocessor eingebunden der das eigentliche Filterprogramm aufruft, unter Unix kann der Filter meist direkt über den Pipe-Mechanismus in den Druckdatenstrom eingebungen werden.
Neben dem Standard-Filterprogramm stellte der EMD unter Windows auch eine Schnittstelle für die Einbindung weiterer Spezialfilter zur Verfügung. Beispiele für solche Filter waren z.B.:

Zusätzlich zum EMD habe ich in den Jahren 2003 - 2005 den Datenbank-EMD entwickelt. Dieses Programm speicherte die eingehenden Druckaufträge über einen externen Filter des Standard-EMD in einer Datenbank, wobei auch Schlüsselwörter im Text berücksichtigt werden konnten. Im Anschluss daran konnten die gespeicherten Druckaufträge sortiert nach Kriterien wie Seitenzahl, Inhalt der Schlüsselwörter (z.B. Adressat) ausgegeben werden. Ziel war z.B. die Sortierung der Druckauftrage nach Größe für eine weitere automatisierte Verarbeitung mit Kuvertier- und Frankiermaschinen.

Während der Standard-EMD in reinem C geschrieben wurde um die Übersetzbarkeit des Programms auf beliebigen Unix-Systemen beim Kunden vor Ort zu gewährleisten, ist der Datenbank-EMD mit dem Borland-C++-Builder in C++ geschrieben. Als Datenbank kommt wie beim Programm KPM die einkompilierte DBIsam-Datenbank zum Einsatz. Der Printprozessor für Windows wurde in Visual-C++ von den durch Microsoft bereitgestellten Quellen abgeleitet.