EasyCatalog-Tabellenfelder Schritt-für-Schritt Tutorial

Inhalt

Inhalt
  • Einführung
  • Grundidee
  • Die XML-Datei
  • Eine EasyCatalog-Palette aus der XML-Datei erstellen
    • Standardfelder
    • XML-Fragment für Tabellenfeld
  • Die Feldoptionen für das Tabellenfeld
    • Ein Feld zum Tabellenfeld machen
    • XSLT-Stilinformationen einstellen
    • Zusätzliche Weiterverarbeitung mittels Lua
  • Einen Produktstil bauen mit einem Tabellenfeld
    • Eine Tabelle erstellen
    • EasyCatalog-Tabellenoptionen einstellen
    • EasyCatalog-Felder in die Tabelle eintragen
  • Fertig!

Einführung

Einführung
  • Mit Version CC 2017 von Adobe InDesign stand auch eine neue Version von EasyCatalog zur Verfügung
  • Die neue EasyCatalog-Version enthält viele Erweiterungen
    • Neues Feldformat wurde eingeführt: Tabellenfeld (engl. tabular field)
      • Tabellen werden per XSLT-Stil aufgebaut
      • Weitere Verarbeitung geschieht mit Skript-Sprache Lua
    • Zusatzfelder können unterschieden werden nach Standard und Erweitert
      • Standardfelder funktionieren wie in den Vorversionen
      • Erweiterte Felder können mit der Skript-Sprache Lua gefüttert werden
    • Verbesserungen an der Bedienoberfläche
    • Weitere neue Funktionen
    • Diverse Fehlerbehebungen
  • In der vorliegenden Schritt-für-Schritt-Anleitung wird eingegangen auf:
    • Wie erstelle ich ein Tabellenfeld?
    • Wie kann die Weiterverarbeitung von Inhalten des Tabellenfeldes mit der Skriptsprache Lua erfolgen?

Die Grundidee

Die Grundidee
  • Als Beispiel soll ein einfacher Katalog von Wanderschuhen aufgebaut werden
  • Die Schuhpreise sind teilweise größenabhängig und sollen tabellarisch dargestellt werden mit der Schuhgröße in einer Spalte und dem Preis in einer weiteren
  • Voraussetzung für alle folgenden Überlegungen ist, das entweder der gesamte Datenbestand als XML-Datei vorliegt oder zumindest der Teil davon, der tabellarisch dargestellt werden soll, in unserem Beispiel also die Preis- und Größendaten
  • Technisch:
    • Die Preis- und Größendaten werden als XML-Fragment in ein EasyCatalog-Feld geladen
    • Das Feld bekommt in der EasyCatalog-Palette das neue Format Tabellenfeld
    • Das Tabellenfeld wird per XSLT-Stil in eine HTML-Tabelle umgeformt
    • Der Produktstil besteht aus einer InDesign-Tabelle mit den tabellarischen Daten aus dem Tabellenfeld

Die XML-Datei

Die XML-Datei
  • Beispiel: Einfacher Katalog von Wanderschuhen
  • Es muss genau ein Wurzel-Element geben, hier <products>
  • Jeder Artikel steht in einer <product>...</product>-Struktur
  • Es gibt Standardfelder, z.B. order_number oder color
  • Die Varianten variation unterscheiden sich nach Schuhgröße und Preis; diese sollen tabellarisch angeordnet werden im Katalog

Eine EasyCatalog-Palette aus der XML-Datei erstellen

Eine EasyCatalog-Palette aus der XML-Datei erstellen
  • Hauptmenü: Datei - Neu - EasyCatalog Palette - Neue XML-Datenquelle
  • XML-Datei auswählen
  • Datensatz-XPath eingeben: mit dieser XPath-Anweisung werden alle Datensätze gesucht, in unserem Beispiel alle Schuhe (Element <product> aus XML-Datei)
  • Nach Eingabe des XPath den Knopf Auswerten drücken
  • Mit dem Knopf Neu... fügen Sie neue Felder zu Ihrer EasyCatalog-Palette hinzu (siehe nächste Seiten)
  • Abschließend betätigen Sie OK, um die Palettenkonfiguration abzuschließen und die neu erstellte Palette zu öffnen
  • Weitergehende Informationen über XPath: http://www.w3schools.com/xml/xpath_intro.asp

Ein Standardfeld zur EasyCatalog-Palette hinzufügen

Ein Standardfeld zur EasyCatalog-Palette hinzufügen
  • Am einfachsten dürfte es sein, einen Eintrag aus dem Auswahlfeld Beispiel zu wählen, soweit möglich
  • Die Felder Name und Pfad werden dann automatisch gefüllt
  • Anpassungen können jederzeit vorgenommen werden
  • Als Pfad muss ein XPath-Pfad eingegeben werden, ausgehend vom Datensatz-XPath aus dem vorherigen Dialog
    • Im vorliegenden Beispiel in der Abbildung wäre der vollständige XPath: /products/product/color/text()
    • Das entspricht genau dem Ort der Farben der Schuhe in unserer Beispiel-XML-Datei
    • text() meint den Inhalt der Einträge <color>...</color> in der XML-Datei

Ein XML-Feld zur EasyCatalog-Palette hinzufügen

Ein XML-Feld zur EasyCatalog-Palette hinzufügen
  • Voraussetzung für die spätere Verwendung eines Feldes als Tabellenfeld ist es, dass ein sog. XML-Fragment vorliegt
  • Aktivieren Sie dazu das entsprechende Kontrollfeld
  • Als Pfad verwenden wir im Beispiel das Element <variations> aus der XML-Datei und gehen mit dem Anhängen von /.. wieder eine Ebene nach oben in der XML-Datei
  • Dadurch wählen wir in Wirklichkeit das Produkt-Element <product> aus
  • Später werden wir in den Tabellenoptionen wieder tiefer in die XML-Hierarchie absteigen und die einzelnen <variation>-Elemente ermitteln
  • Sinn: ein XML-Fragment muss selber valides XML darstellen und darf nur einen Wurzelknoten haben
    • Das ist für <variations> selber nicht der Fall, da es davon ja mehrere Einträge pro Produkt gibt
    • /.. wählt genau das eine übergeordnete Produkt aus, so dass das XML-Fragment valide wird
    • Man hätte auch einfach einen Punkt . eingeben können und hätte dasselbe erreicht; zur besseren Veranschauung haben wir uns aber für die andere Variante entschieden

Die Palette in einer ersten Fassung

Die Palette in einer ersten Fassung
  • Sie sehen die Palette, wie sie ähnlich nach dem erstmaligen Öffnen nach Abschluss der Konfiguration aussehen könnte
  • In der Beispielabbildung ist die Palette bereits nach dem Feld category gruppiert
  • Außerdem, und hier durch das kleine Bild zu erkennen, wurde bereits das Feld image als Bildfeld festgelegt und konfiguriert
  • Die verfügbaren Größen im Feld available_sizes enthalten jedoch immer noch lediglich das XML-Fragment
  • Dies ändern wir in den folgenden Schritten

Ein Tabellenfeld erstellen

Ein Tabellenfeld erstellen
  • Klicken Sie mit der rechten Maustaste auf die Spalte, die Sie zum Tabellenfeld machen möchten, im Beispiel also available_sizes
  • Als Feldformat wählen Sie Tabellenfeld
  • Quelle ist Feldinhalt und der Feldinhalt selber ist XML
  • Um aus den XML-Inhalten des Feldes eine Tabelle zu machen, betätigen Sie nun den Knopf Konfigurieren...

Das Tabellenfeld konfigurieren - Tabelle aufbauen

Das Tabellenfeld konfigurieren - Tabelle aufbauen
  • Im Konfigurieren...-Dialog gibt es ein großes Eingabefeld, das eine sog. XSLT-Transformation aufnimmt
  • Das vorliegende Beispiel macht folgendes:
    • Es wird eine Tabelle <table> erzeugt
    • Es werden alle Elemente variation durchlaufen
    • Für jedes dieser Elemente wird eine neue Zeile in die Tabelle aufgenommen mit drei Spalten
    • Spalte 1 und 3 werden mit den Inhalten der Elemente <size> und <price> der <variation> gefüllt
    • Spalte 2 wird zunächst nur mit einem Dummy-Text gefüllt; hier soll der Netto-Preis ohne MwSt. hinein - das geschieht dann im nächsten Schritt
  • Mehr Informationen zu XSLT gibt es unter: http://www.w3schools.com/xml/xsl_intro.asp

Das Tabellenfeld konfigurieren - Zusätzliche Verarbeitung

Das Tabellenfeld konfigurieren - Zusätzliche Verarbeitung
  • Die zusätzliche Verarbeitung findet mit Hilfe der Skriptsprache Lua statt
  • Folgendes mach das oben angegebene Skript:
    • Durchlaufe alle Zeilen der Tabelle (die mit der XSLT-Transformation erstellt wurde)
    • Lade den Brutto-Preis aus der dritten Spalte und wandle ihn in eine Zahl um
    • Ziehe 19% MwSt. (Netto = Brutto / 1,19) ab
    • Wandle den Bruttopreis in einen Text mit zwei Nachkommastellen um
    • Fülle den so erhaltenen Bruttopreis in die Spalte zwei der gerade verarbeiteten Zeile
  • Weitere Informationen zu Lua gibt es unter: https://www.lua.org/

EasyCatalog-spezifische Informationen zu Lua finden

EasyCatalog-spezifische Informationen zu Lua finden
  • EasyCatalog-spezifische Informationen zu Lua finden Sie, wenn Sie in den Feldoptionen einer Palette auf die Karteikarte Aussehen gehen und dort das Info-Symbol anklicken (siehe Abbildung)

Einen Produktstil bauen mit einem Tabellenfeld

Einen Produktstil bauen mit einem Tabellenfeld
  • Neben den anderen Feldern wie z.B. Name, Farbe oder Artikel-Nr. soll eine Tabelle mit Größen und Preisen eingefügt werden, in der Abbildung rot umkringelt
  • Dazu fügt man zunächst eine Tabelle mit einer Kopf- und einer Körperzeile sowie der passenden Anzahl von Spalten ein
  • Wenn jetzt schon möglich, wird die Tabelle so formatiert, wie sie später aussehen soll
  • Weiter geht es auf der nächsten Seite

EasyCatalog-Tabellenoptionen einstellen

EasyCatalog-Tabellenoptionen einstellen
  • Die Tabelle erhält die Einfügemarke und man ruft die Tabellenoptionen aus dem Menü der EasyCatalog-Palette auf
  • Durch die Wahl von Befülle aus Tabellenfeld weist man EasyCatalog an, die Daten entsprechend in die neue Tabelle zu füllen
  • Als Feld wählt man nun das früher konfigurierte Tabellenfeld, im Beispiel also available_sizes
  • Wichtig: Wenn die Tabelle Kopf- oder Fußzeilen enthalten, sollten Sie die entsprechenden Kontrollkästchen zu deren Erhalt aktivieren, sonst werden sie beim Paginieren der Daten gelöscht

Felder in die Tabelle eintragen

Felder in die Tabelle eintragen
  • Man erweitert in der EasyCatalog-Palette die Ansicht des Tabellenfeldes, so dass dessen Daten sichtbar werden (Größen und Preise in der obigen Abbildung)
  • Man platziert die Einfügemarke in die erste zu befüllende Tabellenkörper-Zelle
  • Nun erfolgt ein Doppelklick bei gedrückter Umsch.-Taste; der Feldinhalt wird platziert, z.B. [34]
  • Man verfährt mit den weiteren Spalten genauso
  • Zum Abschluss kann man, wenn gewünscht, die konkreten Daten zurückwandeln in Feldspezifikatoren; dabei hilft der entsprechende Punkt aus dem EasyCatalog-Palettenmenü
  • Nun steht der erfolgreichen Paginierung des neuen Tabellenfeldes nichts mehr im Wege!

Fertig

Fertig
  • Anhand eines einfachen Beispiels haben wir gezeigt, wie die neuen Tabellenfelder von EasyCatalog verarbeitet werden können
  • Sie haben gelernt, was bei der Erstellung der EasyCatalog-Palette zu beachten ist sowie, wie man anhand der Feldoptionen aus einem XML-Fragment tabellarische Daten macht
  • Schließlich haben Sie erfahren, wie Sie einen Produktstil erstellen, der die Daten des zuvor erstellten Tabellenfeldes enthält
  • Viel Erfolg beim eigenen Ausprobieren!
Dokumente
Tutorial - EasyCatalog Tabellenfelder Schritt-für-Schritt [PDF]
Tutorial - EasyCatalog Tabellenfelder Schritt-für-Schritt [PDF]