Logo

FileMaker & E-Rechnung – ein technischer Hindernislauf

Die Umstellung auf E-Rechnungen stellt eine große Herausforderung dar, insbesondere weil FileMaker bisher nicht dafür ausgelegt ist. Die Gründe dafür sind vor allem technischer Natur: Ohne Plugins oder externe Unterstützung ist FileMaker in Bezug auf die Verarbeitung von XML- und PDF-Dokumenten stark eingeschränkt.

FileMaker & XML – ein Blick in die Vergangenheit

Die einzige native Möglichkeit zur XML-Erzeugung in FileMaker ist ein XSLT-Prozessor der Version 1.0 – eine Technologie aus dem November 1999. Weiterentwicklungen wie XSLT 2.0 (Januar 2007) und XSLT 3.0 (Juni 2017) wurden nicht in FileMaker integriert. In der Version FileMaker 2024 wurde der XSLT-Prozessor zwar aktualisiert, blieb jedoch bei der Spezifikation 1.0. Das ist bedauerlich, da für die inhaltliche Validierung von E-Rechnungen die Schemadateien in XSLT 2.0 vorliegen. Zudem ist die Validierung durch eine XSD nativ nicht möglich. Es bleibt fraglich, ob Formate wie CII oder UBL überhaupt mit dem vorhandenen XSLT-Prozessor erzeugt werden können – bislang ist mir keine Lösung bekannt.

Einige FileMaker-Entwickler nutzen Textfunktionen, um XML zu erzeugen. Auch wenn XML technisch gesehen in Textdateien gespeichert wird, handelt es sich dabei nicht um normalen Text, sondern um eine Auszeichnungssprache zur strukturierten Darstellung von Inhalten. Überspitzt gesagt: XML ist kein Text! Die Erstellung von XML mithilfe von Textfunktionen ist problematisch und sollte vermieden werden:

Das sind alles in allem keine guten Voraussetzungen für die Umsetzung der neuen Technologie.

FileMaker & PDF – warum auch archivieren?

Ein Blick auf die PDF-Ausgabe von FileMaker zeigt schnell, dass es kaum Anpassungsmöglichkeiten gibt. Daher überrascht es nicht, dass FileMaker die Ausgabe im PDF/A-3-Format nicht unterstützt. Für die E-Rechnung im hybriden Format (Factur-X) ist jedoch genau diese Ausgabe als PDF/A-3 zwingend erforderlich.

PDF/A-3 ist ein spezielles PDF-Format, das nach einer ISO-Norm für die Langzeitarchivierung entwickelt wurde. Es gewährleistet, dass Rechnungen auch nach vielen Jahren noch lesbar bleiben.

Während andere Anwendungen, wie zum Beispiel LibreOffice, diese Funktionalität problemlos bieten, fehlt sie bei FileMaker vollständig. Das sind keine guten Voraussetzungen, um E-Rechnungen im hybriden Format zu erstellen.

FileMaker & No-SQL – es ist nicht alles Relation

XML ist eine Auszeichnungssprache, die Dokumente in einer Baumstruktur beschreibt. Das Abbilden solcher Baumstrukturen in einer relationalen Datenbank wie FileMaker ist jedoch aufwändig. Die Informatik bietet hierfür eine passende Lösung: NoSQL-Datenbanken.

Glücklicherweise verfügt FileMaker über Funktionen, die es ermöglichen, solche Strukturen abzubilden: die JSON-Funktionen. Diese Funktionen bieten eine praktikable Alternative, um Daten in hierarchischen Strukturen zu speichern. Es liegt daher nahe, E-Rechnungen in einem JSON-Format zu speichern, um von den Vorteilen einer flexiblen und strukturierten Datenrepräsentation zu profitieren.

Fazit – es gibt doch noch Hoffnung

Mit meinen Lösungen möchte ich aufzeigen, dass es trotz der schwierigen Ausgangslage möglich ist, FileMaker das Erstellen von E-Rechnungen beizubringen. Dies erfordert jedoch den Einsatz moderner Technologien, die bei FileMaker leider nicht integriert sind. Dazu gehören ein fortschrittliches XML-Parsing, XSLT 3.0-Prozessoren sowie eine schema-basierte Ein- und Ausgabe in JSON-Format. Um diese Lücken zu schließen, habe ich auf andere Hochsprachen wie Python, Java und Rust zurückgegriffen.