Viele Datenquellen in InDesign-Scripting Workflows

Wir bei T+S werden immer wieder mal von unseren Kunden gefragt, an welche Datenquellen InDesign-Scripting Extensions bzw. Plugins angeschlossen werden können.

Zunächst kann man zwischen Online-Datenquellen und Offline-Datenquellen unterscheiden. Eine Online-Datenquelle stellt einen direkten Live-Zugriff auf eine Datenbank oder ein PIM-System her. Dagegen ist eine Offline-Datenquelle immer eine Datei, die von einem Datensystem erzeugt wurde, und die dann zu einem späteren Zeitpunkt durch InDesign verarbeitet wird. Beide Varianten können Vor- und Nachteile haben, die vom jeweiligen Einsatz anhängen.

InDesign-Extensions bzw. Plugins können folgende Offline-Datenquellen anbinden:

  • Excel-Dateien
  • CSV-Dateien
  • XML-Dateien
  • JSON-Dateien

Bei den Onliine-Datenquellen sind zu erwähnen:

  • Web Service (REST oder SOAP)
  • ODBC-Datenbankzugriff
  • Nativer Datenbanktreiber

Excel-Dateien

Excel-Dateien können von einem InDesign-Plugin direkt eingelesen werden. Wir bei T+S empfehlen es allerdings nicht, da Excel-Dateien sehr viele „Fallstricke“ wie »ausgeblendete Spalten«, »Formatierte Zellen« oder „angewendete Filterbedingungen« enthalten können. Diese Varianten müssen beim Import berücksichtigt werden und machen die Entwicklung der Import-Routine aufwändig, bevor man überhaupt zur eigentlichen Aufgabe – der Automatisierung – gekommen ist.

Eleganter ist es, den Inhalt einer Excel-Datei über die Zwischenablage mit Copy & Paste in ein Textfeld innerhalb eines von T+S entwickelten Plugins einzufügen. Der Weg über die Zwischenablage entfernt alle Formatierungen und macht den Importvorgang schnell und überschaubar. Durch dieses Vorgehen erhält man immer eine mit Tabulatoren separierte Textdatei.

CSV-Dateien

CSV-Dateien sind flache Textdateien, die in der ersten Zeile eine Kopf-Definition der Datenfelder und ab der zweiten Zeile die eigentlichen Daten beinhalten. Datenfelder eines Datensatzes sind normalerweise mit Komma, Semikolon oder Tabulator getrennt. Wenn die Feldtrennzeichen auch innerhalb der eigentlichen Nutzdaten vorkommen, so müssen die Felder mit Anführungszeichen begrenzt werden.

XML-Dateien

XML-Dateien stellen eine elegante und effiziente Möglichkeit dar, um Daten mit mehrstufigen Hierarchien (1:n-Beziehungen) von einer Quelle zu beziehen. Mit einem InDesign-Plugin XML-Dateien mit mehreren Hundert Megabyte zu verarbeiten ist problemlos möglich. Zwischen Generieren der XML-Dateien und dem Einlesen kann allerdings etwas Zeit liegen.

JSON-Dateien (JavaScript Object Notation)

JSON-Dateien finden eher im Datenaustausch mit Web Services ihre Anwendung. Sie sind – wie XML-Dateien – eine elegante und effiziente Möglichkeit um strukturierte hierarchische Daten von einem Datenbanksystem an ein Plugin zu übertragen. 

Web Service (REST oder SOAP)

Ein Web Service ist ein Dienst, der Daten über http oder https zur Verfügung stellt. Dieser Dienst erhält seine Daten normalerweise aus einer Datenbank oder einem PIM-System.

Wenn ein InDesign-Plugin Daten von einem Web Service bezieht, liegt der große Vorteil in der Aktualität der Daten, da der Zugriff online stattfindet. Bei CSV-, XML- oder JSON-Daten liegt immer eine gewisse Zeitspanne zwischen Erstellen der Daten und dem Einlesen der Daten in das Plugin.

Nativer Datenbanktreiber

Für Microsoft SQL Server und MySQL gibt es es JavaScript Bibliotheken, die wir erfolgreich eingesetzt haben um direkt auf Datenbanken zuzugreifen. Der Vorteil ist wie beim Web Service die Aktualität der Daten, da der Zugriff online stattfindet.

Bei jedem Update der Datenbank stellt sich allerdings im Vorfeld die Frage, ob  anschließend der Zugriff vom Plugin auf die Datentabellen noch funktionieren wird. Man sollte deshalb die Vorteile und Nachteile genau abwägen.

Jetzt InDesign-Scripting anfragen

Informieren Sie sich jetzt bei unserem Experten Michael Tschuschner über Ihre Möglichkeiten des InDesign-Scripting von T+S!