FERAG-String erzeugen - Open-Source Go-Bibliothek
Druckereien benötigen zur Steuerung ihrer FERAG-Versandanlagen einen sogenannten FERAG-String (auch TSL-Datei genannt). Mit meiner Open-Source-Bibliothek feragstring können Sie selbst FERAG-String-Dateien aus Ihren Logistikdaten erzeugen.
Die Bibliothek ist in Go geschrieben. Sie benötigen nur Grundkenntnisse in Go und Ihre produktionsrelevanten Daten. Damit können Sie ein Programm schreiben, das FERAG-Strings entweder aus CSV-Dateien oder durch direkten Datenbankzugriff generiert. Die Bibliothek wird bereits produktiv bei mehreren Zeitungsverlagen eingesetzt.
Installation
Die Installation erfolgt mit dem Go-Paketmanager:
go get -u github.com/jakoubek/feragstring
Verwendung
Hier ein Beispiel für die Erstellung eines FERAG-Strings:
// FERAG-String-Objekt erstellen
fs := feragstring.NewFeragString()
fs.SetTitleName("EDITION1")
// Titelparameter setzen
fs.TitleInfo.SetPrintObjectName("EDITION1A")
fs.TitleInfo.SetPublicationDate("2020-05-31")
fs.TitleInfo.SetCountryCode("13")
fs.TitleInfo.SetPrintObjectColor("00000000")
// Produkt hinzufügen
pr1 := feragstring.NewProductReference()
pr1.SetProductName("MAIN")
pr1.SetCopiesAssigned(25000)
pr1.SetSupervision(1)
pr1.SetOverlap(5)
mp := feragstring.NewMissingParameter(1, 1)
pr1.SetMissingParameter(mp)
pr1.SetIssueReference("MAIN01")
fs.AddProductReference(pr1)
// Route hinzufügen
rt := feragstring.NewRoute()
rt.SetRouteName("ROUTE001")
rt.SetRouteCode(fs.NextRouteCode())
rt.SetRampNumber(0)
rt.SetCopiesInRoute(1500)
rt.SetLimit(1)
rt.SetMaxStack(13)
rt.SetStandard(40)
rt.SetParameterN(4)
rt.SetMaxBundle(40)
rt.SetTopsheetMarker(5)
rt.SetEaMarker(0)
rt.SetTopsheetTemplateDirectory(20)
rt.AddProductReferenceNumber(1)
fs.AddRoute(rt)
// FERAG-String ausgeben
feragString := fs.PrintOut()
Ausgabe-Beispiel
Das obige Code-Beispiel erzeugt folgenden FERAG-String:
%2440+93EDITION1A +40EDITION1+95200531+9713+9400000000!
%2450+4101+42MAIN +5501+350000+0200025000+3600000+4401+4505+9910100+99102000000+99105000100000001+99195MAIN01 !
%2401+11ROUTE001 +7900001+2500+23001500!
%2402+11ROUTE001 +300001+310013+320040+330004+340040+350000+595+690+56020+4101!
%2406+11ROUTE001 !
%2441+40EDITION1!