Angebote und Rechnungen per Skript in InDesign erstellen
von Stephan Wissner
Abb. 1 – Für eine größere Darstellung bitte auf das Bild klicken
Kostenloser Skript Download: http://www.pixelstaub.de/blog/wp-content/uploads/id_rechnungsscript.zip
Einleitung
Das erste mal kam mir die Idee zu dem Skript auf der PUBKON 2015 beim Vortrag „Ich habe gar kein InDesign“ von Stephan Mitteldorf, der damit endete, dass ins Publikum gefragt wurde:
„Wer erstellt eigentlich von Euch seine |
Antwort:
Fast alle :) |
Die Abscheu des Vortragenden Office-Cracks war vorhersehbar…
Denn selbst, wenn die Software unser aller Lieblingswerkzeug ist, in dem wir schnell, routiniert und gut gestalten – auf den ersten Blick macht es wirklich verdammt wenig Sinn, Rechnungen und/oder Angebote in InDesign zu schreiben.
Ja, klar, ich mache das auch, allerdings gebe ich zu: Dass InDesign „nicht wirklich“ rechnen kann, ist in dem Kontext ziemlich ätzend und nervig.
Was ich aber dann in diesem Kontext an Adobes Layoutprogramm sehr schätze, ist folgendes: Sobald man eine Funktion vermisst, kann man mittels Script im Großteil aller Fälle eine Lösung für das Problem realisieren. Und so auch hier: Scripte können nämlich hervorragend rechnen.
Skript-Erklärung
Toll wäre also ein „es öffnet sich ein Dialogfenster, in dem ich Einstellungen treffen und angeben kann, was ich alles für meinen Kunden gemacht habe und nach ein wenig Klicken kommt hinten eine fertige Rechnung als InDesign-Dokument (Abb. 1) raus“-Skript.
Und – wenn wir schon beim Wünschen sind – dann sollte auch all das folgende damit möglich sein:
Rechnungsposten-Tab
• Eine vordefinierte Liste, aus der ich Leistungen auswählen (z.B. Entwurf, Korrekturen oder Reinzeichnung) (Abb. 3, Nr. 1) und die ich bei Bedarf anpassen und erweitern kann (Abb. 2).
Abb. 2
• Die Möglichkeit, je Leistung entweder Stundenanzahl und individuellen Stundensatz oder Stückpreis und Menge als Berechnungsgrundlage auszuwählen (Abb. 3, Nr. 2).
• Leistungen sollten in der Rechnung mit 0, 7 und 19 % MwSt. versteuert werden können (Abb. 3, Nr. 3)
• Da Angebote und Rechnungen ja prinzipiell gleich aufgeteilt sind, wäre es toll, wenn ich einstellen könnte, ob ich ein Angebot oder eine Rechnung erstellen will (Davon abhängig sollte sich das Kleingedruckte unter der Rechnung ändern). (Abb. 3, Nr. 4)
Abb. 3 – Für eine größere Darstellung bitte auf das Bild klicken
Konfiguration-Tab
• Runde Preise („Preis,00“) sollten optional vom Script in „Preis,–“ umgeschrieben werden können. (Abb. 4, Nr. 1)
• Preise über 999,99 sollten optional mit einem automatischen Tausender-Trennpunkt versehen werden können z.B. EUR 1.000,– (Abb. 4, Nr. 2)
• Der User sollte zudem die Möglichkeit haben, einfache Basis-Gestaltungsparameter im Script einzustellen, auf deren Basis automatisch entsprechende Stile angelegt werden. (Abb. 4, Nr. 3)
Abb. 4 – Für eine größere Darstellung bitte auf das Bild klicken
• Aus einer weiteren (ebenfalls leicht anpassbaren) Liste (Abb. 5) sollte man einen Kunden mit Ansprechpartner und Adresse als Rechnungsempfänger auswählen können (Abb. 4, Nr. 4)
Abb. 5
• Und zusätzlich sollten natürlich auch die gängigsten Benutzerfehler abgefangen werden
Als es im Sommer mal nach Sommerloch ausschaute, habe ich mich dann auch mal an die Umsetzung gemacht.
Das Resultat gibt’s hier:
http://www.pixelstaub.de/blog/wp-content/uploads/id_rechnungsscript.zip
Lauffähig und getestet in InDesign CS6 und den CC-Versionen auf dem Mac (da der PC andere Pfadschreibweisen benötigt, behaupte ich mal: läuft NICHT auf dem gemeinen Windows-PC – was aber relativ leicht anzupassen sein sollte). Hierfür einfach die Pfadangaben in den Zeilen 14 sowie 29 bis 31 an Eure Bedürfnisse anpassen. Ansonsten gerne ausprobieren, testen und Feedback und Bugreports dann gerne hierhin: http://www.pixelstaub.de/blog/script-beta-angebote-rechnungen-in-indesign/
Hinweise zur Installation/Konfiguration:
• zip-File entpacken und die Dateien in den Unterordner „Scripts/Scripts Panel“ innerhalb Eures InDesign-Ordners verschieben
• Im Dialogfenster (nach Scriptaufruf) könnt Ihr im Tab „Rechnungsposten“ einstellen, ob das Script eine Rechnung oder ein Angebot generieren soll, wie lange das Angebot gültig sein soll, bzw. wann Zahlungsziel Eurer Rechnung ist.
• Weitere Leistungen können durch Klicken auf + hinzugefügt werden (Klick auf – entfernt die jeweilige Leistung wieder) ——> Abb. 3
• Die Datei Leistungen.txt (Abb. 2) enthält alle Leistungen, die man im Dropdown des Scripts auswählen kann. Auch Leistungen können über mehrere Zeilen laufen. Nach jeder Leistung muss ein * als Trenner stehen.
• Im Tab „Konfiguration“ (——> Abb. 4) des Dialogfensters könnt Ihr einstellen,
– ob die Rechnungstabelle im aktuellen oder einem neuen Dokument erstellt werden soll
– ob runde Preise auf „,–“ enden sollen (statt auf „,00“)
– ob ein Tausender-Punkt in den Zahlen eingefügt werden soll
– ob eine auf dem heutigen Datum basierende Rechnungsnummer eingefügt werden soll
– ob InDesign Absatz- (TabAbsatz, TabAbsatz_zentriert), Zeichen- (bold) und Zellenformate (LeereZelle, erste Zeile, letzte Zeile) anlegen soll, mit denen Eure Tabelle formatiert wird (kann man nachträglich ändern)
– Welche Grundschrift in den Formaten benutzt werden soll (Achtung: Gibt es zu dieser Grundschrift keinen korrespondierenden bold-Schnitt, meckert das Script nach Erstellen der Rechnung und Ihr müsst das erstellte Zeichenformat „bold“ händisch anpassen, das in diesem Fall vom Script mit der Zeichenfarbe magenta ausgezeichnet wird).
• In der Datei kunden.txt könnt Ihr Euren Kundemstamm anlegen: Ein Kunde kann über mehrere Zeilen gehen (z.B. Firma, Ansprechpartner, Straße, PLZ Ort). Nach jedem Kunden muss ein # als Trenner stehen (——> Abb. 5)
• In der Datei „Stundensatz.txt“ könnt Ihr Euren Standard-Stundensatz hinterlegen. Dieser taucht anschließend als Preset im Dialog auf und muss nicht immer händisch abgeändert werden.
Features für zukünftige Versionen:
• Mehr Kontrolle über das Styling der Tabellen
Known Bugs:
• Klickt man im Tab „Rechnungsposten“ die letzte verbliebene Leistung weg, stürzt InDesign nach der Fehlermeldung ab
Vielen Dank an Stephan Wissner für diesen Beitrag. Wer mehr über Stephan erfahren will sollte unbedingt auf seiner Webseite vorbeischauen!
Ich freue mich, wenn Ihr die Tipps und Tricks mit Euren Kollegen und Freunden teilt…
Hinterlasst gerne auch einen Kommentar, denn das ist der Applaus eines (Gast)Bloggers. Danke!
Related Posts
10 Comments
Schreibe einen Kommentar Antworten abbrechen
Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.
// NEWS
// NEWSLETTER

KENNST DU EIGENTLICH DEN InDesign-Blog NEWSLETTER?
Du möchtest immer aktuell informiert werden wenn z.B. ein neues Tutorial-Video online geht? Dann ist der Newsletter der beste Weg!
NEWSLETTER-ANMELDEN
// FACEBOOK GRUPPE

KOMM IN DIE GESCHLOSSENE UND KOSTENLOSE InDesign-Blog FACEBOOK GRUPPE
Hier kannst Du gerne Deine Frage rund um das Thema InDesign stellen und einer der über 1.400 Mitglieder wird bestimmt eine Antwort wissen!
FB-GRUPPE BEITRETEN
// VOREINSTELLUNGEN GUIDE
// SUPPORT BUCHEN

DU BRAUCHST SUPPORT?
In der Planungsphase oder bei der technischen Umsetzung Deiner InDesign Templates für z.B. Magazine, Broschüren oder Bücher? Du suchst Hilfe für den Satz oder die Reinzeichnung? Du willst InDesign besser kennen lernen und bist auf der Suche nach einer Schulung/Coaching (vor Ort/Online)? Oder Du braucht einfach nur die Antwort auf eine knifflige InDesign Aufgabe/Frage? Sprich mich gerne an!
SUPPORT-BUCHEN
Perfekt. Das wars. Super Danke.
@Carsten: Danke Dir für die Rückmeldung zu meinem Rechnungsscript. Wie Du selbst schon vermutet hast, liegt es tatsächlich an der aktuellen InDesign-Version CC2017.1. Die nämlich hat einen Bug in der Darstellung von Dialogfenstern mit Reitern – und ein solches benutzt auch das Rechnungsscript. Aber: Adobe hat ein Bugfix herausgebracht. Damit sollte es wieder laufen. :)
Gute Grüße
Stephan
Hallo Super Idee, da auch ich natürlich in InDesign meine Rechnungen erstelle und manchmal blöde Schusselfehler einbaue.
Leider stürzt das Script nach drücken des OK Button in InDesign ab.
Script ist korrekt in den Scripts-Ordner kopiert worden und lässt sich auch in InDesign starten.
Kann es an der Version liegen?
Ich arbeite unter MacOSX Sierra 10.12.6 mit der aktuellsten InDesign-Version CC 2017.
Danke
Carsten
Hallo Carsten, sorry das die Antwort so lange gedauert hat!
Ich kann natürlich aus der ferne nicht wirklich sagen warum das Skript abstürzt und werde deine Nachricht an den Skript-Entwickler weitergeben.
Schöne Grüße
Tim
@Sandro: Sorry, da ich selbst Macuser bin und kein Windows10-System hier rumstehen habe, muss ich hier leider passen …
@ Stephan
Das sind die externen Listen. Leistungsart, Empfänger.
Win10 INDCC2017
VG
[…] Reaktion auf meinen Gastartikel im InDesign-Blog erreichte mich gestern folgende Anfrage von Ines aus Österreich per […]
Hallo Sandro,
danke erstmal :) Kurze Rückfrage hierzu noch: Geht es um alle Auswahllisten (also z.B. auch um die Font-Liste im Reiter Konfiguration, auch um die Liste Stück o. Stunden im Reiter Leistungen) o. nur um die, die sich aus den externen Textdateien speisen (wie etwa die Liste der Leistungen)? Welche InDesign-Version unter welchem Betriebssystem nutzt Du?
Grüße
Stephan
He Sandro,
vielen Dank für Deinen Kommentar und das Feedback :)
Ich gebe das gerne an den Gastautor weiter ebenso wie die Frage!
Schöne Grüße
Tim
Tolles Script.
Eine Idee warum die Auswahllisten immer nur den ersten Wert anzeigen?