Posts Tagged ‘Templates’

Document Export & Export templates

Saturday, January 30th, 2010

Being able to export data, is a crucial feature of business software. Most applications offer export formats like XLS, XML or HTML with a fixed set of data-fields and a static internal markup. We also tried to take this road, but realized its drawbacks very soon.

We felt the need for a new approach, driven by the fact that we don’t know how our users want their data. Paired with our reach for freedom, we implement an outstanding flexible export system. It is based on export-templates which define:

  • exportable data-fields (through placeholders)
  • arbitrary text-based output:  HTML, XML, CSV, Plain text, … whatever you want!

To aid with HTML/XML generation one can further choose between HAML or Textile markup.

Export template for an HTML table with the help of HAML Markup

Export template creating a HTML table. Uses HAML Markup.

An export template is bound to a specific data type(invoices, estimates, clients) and will show up in the export dialog. To create a new export activate the batch control and choose the green arrow. Finished exports are saved to the export log, from where the file can be downloaded.

Create a new export

Create a new export

Of course, we have not yet reached all of our goals, so our roadmap contains:

  • email an export
  • export attachments (archived PDF)
  • export all records by a given filter

Date format customizing

Tuesday, July 21st, 2009

This is the first post for our international users .. sorry guys .. took us a while. But now you can finally change and customize your date format.

New Date formatting options

New Date formatting options

Within the date format field you can use a couple of placeholders to change the date formatting in any way you like. The formatting will then be used everywhere a date is shown, be it in an invoice list or on an invoice pdf template.

Date format templates

Date format templates

For the beginners in date formatting there are a couple of templates to provide an easy start. The pro’s should take a look into ruby’s strftime function.

Einfach PDF-Vorlagen kopieren

Thursday, April 9th, 2009

Eigene PDF-Vorlagen von Rechnungen und Angeboten können ab sofort samt Einstellungen mit einem Klick kopiert werden.

PDF-Vorlagen kopieren

Das Kopieren von Standard PDF-Vorlage ist bisher jedoch noch nicht möglich. Neu hinzugekommen sind in den Einstellungen der PDF-Vorlagen die Felder Zwischensumme und Übertrag, die nun frei übersetzt werden können. Desweiteren werden Einstellungen zu nicht verwendeten PDF-Blöcken nun automatisch ausgeblendet.

Mehrseitige Rechnungen? Die PDF-Tabellen-Maschine hilft

Thursday, October 16th, 2008

Die KingPDF::TableMachine, so ist Ihre exakte Typenbezeichnung, ist für das fehlerfreie Verteilen von tabellarischen Rechnungsdaten über mehrere Seiten zuständig, sie erstellt (fast) beliebige Kopf- und Fuß-Zeilen, verwaltet Datenzeilen und passt den Tabellen-Platz seitenweise an.

Sei es eine Rechnung, Angebot oder Mahnung, die PDF-Tabellen-Machine muss mit diversen Unbekannten umgehen und trotzdem am Ende ein sauberes PDF produzieren.

Erstellt der User ein Dokument und erzeugt daraus ein PDF, können wir Folgendes nicht voraussehen:

  • Die Anzahl der Daten z.B Posten einer Rechnung / Angebot
  • Die Anzahl der angezeigten Spalten z.B. Beschreibung, Menge, Preis
  • Anzahl der Kopf-/Fußzeilen z.B. Übertrag, Versandkosten, Summen
  • Die benutze PDF-Vorlage z.B. Rechnungs-Vorlage, Angebots-Vorlage
  • Wechselnde Seiten innerhalb der Vorlage (Multipage-PDF)

Das Erstellen einer PDF-Rechnung erscheint, dem User oder Entwickler, als triviale Aufgabe … ist es auch … wenn ALLE oben genannten Variablen VORHER bekannt sind. Doch Einschränkungen wie diese sind Gegner des SalesKing. Der SalesKing strebt nach Freiheit im Dokumenten-Design und Layout. Zwei seiner Hauptgegner sind dabei Word-Rechnungen oder Excel-Vorlagen.
Wenn Sie jetzt denken: “Meine Word-Rechnung ist aber immer bezahlt worden!”, kann ich nur sagen, Word wurde nicht dafür gemacht den Rechnungs-Workflow zu unterstützen, sei es für 5, 100 oder 10000 Rechnungen … doch das ist ein anderes Thema.

Die dunkle Seite

… sieht meist nur der Programmierer und in diesem Falle habe ich viel Dunkelheit vor dem Licht gesehen. Nun da es langsam hell wird, sind wir imstande sehr viele Posten aus Mahnung, Angebot und Rechnung(mit noch minimalen Einschränkungen) auf sehr viele individuelle Seiten zu verteilen.

Es gibt natürlich auch für den User eine dunkle Seite der Freiheit: Er muss seine Möglichkeiten erlernen. Wir versuchen diesen Lernprozess zwar durch sinnvolle Vorgaben zu verringern, doch irgendwann hat jeder einmal seinen Spezialfall. Das Abfedern solcher Spezialfälle übernimmt die Tabellen-Maschine.

Freiheit in Layout, Design und Mehrseitigkeit

Die neue Waffe des SalesKing, die KingPDF::TableMachine, testet jede Seite 2-3mal mit den echten Rechnungsposten bevor sie zum Druck freigegeben wird. Sie ist verantwortlich für:

  • Aufteilung der Rechnungsposten pro Seite
  • Überträge am Anfang jeder Folgeseite
  • Zwischensummen am Ende jeder Seite
  • keine allein stehenden Gesamtsummen auf der letzten Seite
  • Passgenauigkeit der Posten im Platzhalter-Block bei beliebiger Anzahl von Spalten und Zeilen innerhalb der Posten-Liste
  • Überschreiben der Grußformel (=ungenutzter Platz nach den Posten)
  • beliebige Positionierung der Rechnungsposten pro Vorlagen-Seite

Sind Sie bereits SalesKing Benutzer finden sie einige Einstellungen für die TableMachine in den Settings jeder Vorlage:

Die PDF Vorlagen Liste

Die PDF Vorlagen Liste

PDF Vorlage mit Einstellungen der Rechnungsposten

Möchten Sie Ihre Vorlage im Acrobat erweitert anpassen, müssen Sie den Platzhalter-Block “line_items” bearbeiten. Falls Ihnen das nichts sagt, sollten sie die weiteren Artikel der “KingPDF-Templates” Reihe lesen.

Bewegungsfreiheit: PDF-Vorlagen im Acrobat bearbeiten

Thursday, October 2nd, 2008

Wie schon im ersten Artikel der  “KingPDF-Templates” Reihe angekündigt, werde ich mich hier der Anpassung von SalesKing-Vorlagen mittels Platzhaltern widmen. Steigen wir also direkt wieder ein:

Sie haben ein Rechnungs-Design in Ihrem favorisierten Grafikprogramm erstellt und möchten es als Vorlage im SalesKing verwenden. Nach dem Export als PDF und dem Öffnen im Acrobat-Writer(mit Block-Plugin) ist Ihre Vorlage fertig .. nun gut .. fast fertig. Der SalesKing muss schließlich noch wissen, an welche Stellen er Daten (Namen/Rechnungsposten/Logo usw.) in das PDF schreiben soll. Womit wir beim Artikeltitel wären, denn ein wirklich flexibles Vorlagen(Template)-System benötigt für diesen Schritt zwei Hauptkomponenten:

  1. Bewegungsfreiheit beim Platzieren der Platzhalter
  2. Viele und vor allem intelligente Datenfelder

Schauen wir uns den ersten Punkt im Detail an. Dem Zweiten widme ich einen weiteren Artikel der Serie.

Bewegungsfreiheit durch Blöcke

Die Platzhalter-Blöcke in der PDF-Vorlage werden beim Rechnungsdruck, der PDF-Erzeugung, mit echten Daten (Texten/Bildern) gefüllt. Der SalesKing erkennt die Blöcke anhand ihres Namens und liefert die entsprechenden Daten. Das Erstellen der PDF’s übernimmt im SalesKing die in Fachkreisen wohlbekannte, PDFlib mit dem Personalization Server (PPS). Im PPS inbegriffen ist der Acobat Block-Plugin, welcher das Bearbeiten, Erstellen, Kopieren, Ex- und Importieren von Platzhalter-Blöcken ermöglicht. Folgend der Screenshot einer Rechnungsvorlage. Man sieht die Blöcke mit ihrem rot markierten Namen und auf der zweiten Seite(Vorlage für Folgeseiten) einen Block-Dialog, für das markierte Adressfeld.

Screenshoot Acrobat mit aktiviertem Block Plugin

Im SalesKing werden die Blöcke in den PDF-Einstellungen ebenfalls sichtbar, hier eine weitere Rechnungs-Vorlage:

Vorschau einer PDF Rechnungsvorlage in den SalesKing PDF Einstellungen

Blöcke können an beliebige Stellen im Dokument platziert werden. Zusätzlich verfügt ein Block über Eigenschaften die z.B. die spätere Textformatierung vorgeben. Die Darstellungsoptionen sind so divers, dass ich sie hier nur kurz zusammenfasse:

  • Text: Schrift/Farbe/Größe/Fluss/..
  • Farbe: Outline/Füllung/Text
  • Typ des späteren Blockinhalts: Text(einzeilig/mehrzeilig)/Bild/PDF
  • für jeden Blocktyp spezielle Optionen

Das alles ist im Prinzip noch keine Magie, obwohl es mich schon wundert, dass ich es bisher nicht gesehen habe. Uns hat das natürlich noch nicht gereicht, also haben wir den SalesKing-Blöcken etwas eingeheizt.

“Wir haben tiefergelegte Blöcke”

In den aufgezählten Block-Optionen habe ich zwei noch nicht erwähnt:

  • Vom SalesKing definierte Eigenschaften (Custom Fields/Spezial-Felder)
  • Blocknamen mit besonderer Bedeutung

Im Folgenden ein Screenshot der Blockeigenschaften des “notes_after”-Blocks (Grußformel an Ende der Rechnung), mit einem Spezialfeld:

Eingenschaften eines Block mit aktivierten Spezialfeld Einstellungen

Jeder Block kann dieses Spezialfeld “show_on_page” enthalten, denn es beeinflusst – nicht schwer zu raten – auf welcher Seite im Dokument der Block angezeigt werden soll. Dieses Feld, für mehrseitige PDF’s gedacht, kann drei verschieden Werte enthalten:

  • first – Diesen Block nur auf der ersten Seite anzeigen
  • last – Diesen Block nur auf der letzten Seite anzeigen
  • 2   – Nummer der Seite auf welcher der Block angezeigt wird

Wie Sie schon gemerkt haben erlauben wir mehrere Seiten pro Vorlage bzw. Ausgabe-PDF. Ein mehrseitiges PDF benötigt deshalb eine intelligente Seitennummerierung. Das bringt unsere Blocknamen mit besonderer Bedeutung ins Spiel, ein solcher ist der “page_number”-Block:

Seiten-Nummer Block mit Spezielfeld zur Formatierung

Im Seiten-Nummern-Block können Sie die Formatierung der Seitennummern, ebenfalls über ein Spezial-Feld einstellen. In diesem Fall ist die Ausgabe: “Seite 1 von 3″.

Mehrseitige Rechnungen + mehrseitigen Vorlagen = Problem

Nicht für den SalesKing, denn ein neues PDF wird Seite für Seite von der Vorlage erzeugt. Übersteigt die Ausgabe-PDF Länge die in der Vorlage enthaltenen Seiten, wird die letzte Vorlagen-Seite für das verbleibende Dokument benutzt. Schwer vorstellbar? Ein Beispiel:

Sie drucken eine Rechnung, mit vielen Posten, über drei Seiten und benutzen dazu eine zweiseitige PDF-Vorlage.

Für die erste Seite wird die erste Vorlagenseite genutzt, und der Block “notes_after” (Grußformel am Rechnungsende) wird, wie oben abgebildet, nicht angezeigt. Sein Platz wird übrigens von den Rechnungsposten mitbenutzt. Die folgenden zwei Seiten werden aus der zweiten Vorlagenseite erzeugt. Das Aufteilen der Rechnungsposten erfolgt dabei automatisch, natürlich werden Überträge und Zwischensummen eingefügt. Der Grußformel-Block wird auf der zweiten Seite ebenfalls überschrieben.

Hört sich recht simpel an und wird vom (professionellen) User erwartet, doch die wenigsten Rechnungsprogramme unterstützen so etwas. Vielleicht übertreibe ich, da die meisten Rechnungen einseitig sind, doch wer schon mit mehrseitigen Rechnungen gekämpft hat, kennt die diversen Probleme.

Noch nicht genug Freiheit? Lesen Sie im nächsten “KingPDF-Templates”-Artikel:

Professionelle Rechnungen mittels PDF Layout flexibel gestalten

Wednesday, September 24th, 2008

Heute ist ein lang ersehnter Traum für mich in Erfüllung gegangen. Ich habe unser neuen flexibleren PDF-Tabellen-Maschine Leben eingehaucht.

Um zu erklären was dieser (Programmierer) Traum bedeutet und was das ganze mit flexiblen Layout zu tun hat, hole ich etwas weiter aus und vielleicht bekommen Sie danach auch Lust es einmal live zu erleben.

Mich begleitet das Rechnungs-Vorlagen Thema nun schon seit Jahren, weshalb ich mich entschlossen habe diesem eine kleine Serie über unsere  “KingPDF-Templates”zu widmen. So kann ich den Teilbereichen mehr Aufmerksamkeit zukommen lassen und Google freut sich auch.

In diesem ersten Teil gehe ich auf die grafischen Grundlagen ein. Es folgen entsprechend dem Workflow(vom Design bis zum fertigen Dokument): das Bearbeiten der Daten-Platzhalter, die Verwaltung/Verarbeitung im SalesKing, sowie je nach Gusto einige tabellarische Spezialitäten.

Das Rechnungs-Layout

Seitdem ich Rechnungen schreibe ist einer der ersten Schritte, in jeder neuen Rechnungs-Software, die Rechnungs-Vorlage anzupassen. Ob es das Rechnungs-Layout war oder die in der Vorlage enthaltenen Daten (Platzhalter), der Anpassbarkeit waren immer Grenzen gesetzt. In keiner Software konnte ein professioneller Design-Agentur Workflow, von Photoshop/Freehand/InDesign in den Adobe Acrobat bis zum finalen druckechten PDF-Dokument, verlustfrei durchgeführt werden.

Alle meine Versuche ob in Word, Excel, Lexware oder in diversen eigenen und fremden Online-Rechnungs-Lösungen endeten immer dem traurigen Fazit:

“Zu unflexibel”

Wenn nicht von mir, dann kam es von Ole, welcher als Grafik-Designer naturgemäß noch schneller unglücklich war. Doch warum? Die Antwort ist einfach:

“Keiner hat PDF-Vorlagen”

Nun gut, man könnte denken, aus Word lassen sich ja auch PDF’s erstellen. Jaaa natürlich, aber Word ist zum einen keine Grafiksoftware, zum anderen ist es nicht dafür gedacht Platzhalter für spätere Daten zu enthalten. Ich revidiere deshalb meine Aussage leicht: “Kein mir bekannter, hat PDF Vorlagen mit eingebetteten Datenfeld-Platzhaltern”. Den Platzhaltern widme ich den zweiten Artikel dieser Reihe, weshalb ich nur kurz auf die Grafiksoftware eingehen will.

Wir sind der Meinung:

“Ein professionelles Dokument entspringt in einer Grafiksoftware”

Der professionelle, kreative Entwicklungsprozess eines Firmendokuments startet(nach dem Papier) in einer Grafiksoftware. Hier hat der Grafiker, hoffentlich dem Coorporate Design folgend, volle Freiheit. Er muss sich nicht an Konventionen für Schriften, Farben, Anordnung oder (ich nenne es mal schnöde) Schmuckelemente halten und kann vor allem garantieren, dass die Grafikdatei als PDF druck-echt ist.

Normalerweise würde man jetzt versuchen das gelieferte Design in ein Word-, Excel oder HTML-Dokument einzubauen, um eine Vorlage für neue Dokumente zu erhalten. Doch genau dieser Schritt ist fatal. Warum  nimmt man ein weiteres Format um ein PDF(die Vorlage), mit mehr oder minder großem Aufwand und Designverlust, wiederum in ein PDF(die fertige Rechnung) zu wandeln?

Ganz zu schweigen von weiteren Personen, denn des Grafiker Liebe steckt bestimmt nicht in Word oder gar Programmierung. Der SalesKing sagt solchen Mediensprüngen den Kampf an, denn:

“Wir haben PDF Vorlagen”

Die SalesKing PDF-Vorlagen geben dem Designer die Macht über die Datenplatzhalter, ähnlich der Freiheit in sein Grafikprogramm. Er kann diese im gewohnten Adobe Acrobat (Writer) erstellen und beliebig platzieren. Das spart Geld, hält das gewünschtes Design ein und spart jede Menge Ärger zwischen den Zuständigen.

Im SalesKing werden die Datenplatzhalter während der Rechnungserstellung mit Namen, Adressen oder auch Bildern gefüllt und heraus kommt … natürlich ein PDF.

Doch genug der eigenen Glorifizierung, natürlich hat auch der SalesKing seine Limits. Vor allem Konventionen in den Platzhaltern erfordern eine, wenn auch kurze, Einarbeitungszeit. Doch dazu mehr im nachfolgenden Artikel, sowie in der  “KingPDF-Templates” Reihe