Die Auftragsdaten können Wahlweise über einen XML Import (Hotfolder) oder über einen REST Webservice als JSON Struktur übergeben werden.
XML Import und -format
Importkonfiguration
Der XML Import wird in der application.yml konfiguriert. Folgende Konfigurationseinträge sind verfügbar:
Schalter | Optional | Bedeutung/Wert | Anmerkung |
---|---|---|---|
hup.one.eworxx.imports.importer-enabled | N | true/false | De-/Aktivierung des Importers |
hup.one.eworxx.imports.update-trigger-state-reset-on | N | Liste von Auftragsattributen, die zu einer Statusänderung führen z.B. [height,width,cmyk,blackwhite,spotcolors] | Der Wertevorrat ist in der Default-Konfiguration dokumentiert |
hup.one.eworxx.imports.update-orders-with-new-motif-number | J | false | Auftrag mit gleicher Nummer und Position, aber mit neuer Motivnummer aktualisiert einen bestehenden (true) oder erstellt einen neuen Auftrag (false) |
hup.one.eworxx.imports.priorities-2-ignore | J | [ ] | Liste von Prioritäten (Integer), die beim Import ignoriert (d.h. als null-Wert importiert) werden sollen |
hup.one.eworxx.imports.import-points[0].name | N | 'Auftragsbearbeitung' | Der Name für den Importpoint |
hup.one.eworxx.imports.import-points[0].component-name | N | DesignOrderImportModule | Klassenname des Importmoduls |
hup.one.eworxx.imports.import-points[0].initial-delay | J | 15 | Wartezeit in Sekunden bevor der erste Import startet |
hup.one.eworxx.imports.import-points[0].interval | J | 20 | Poll-Abstand in Sekunden |
hup.one.eworxx.imports.import-points[0].parameters.input-directory | N | \\les-file1\gestaltung\eworxx\studioimport\input | Eingangs-/Poll-Verzeichnis für Gestaltungsaufträge (*.xml) |
hup.one.eworxx.imports.import-points[0].parameters.error-directory | N | \\les-file1\gestaltung\eworxx\studioimport\error | Fehlerverzeichnis |
hup.one.eworxx.imports.import-points[0].parameters.archive-directory | N | \\les-file1\gestaltung\eworxx\studioimport\archiv | Archivverzeichnis |
hup.one.eworxx.imports.import-points[0].parameters.xsl-transformation | J | Transformationsvorschrift (.xsl) vom Eingangsformat zum Importformat | |
hup.one.eworxx.imports.preparation-state | J | ['Teststudio', 'Satzstudio1', 'Satzstudio2'] | Satzstudios, für welche der Vorbereitungsstatus automatisch vergeben wird |
hup.one.eworxx.imports.orderno-regex-4-old-motif | J | \d{5} | |
Datenmigration | |||
hup.one.eworxx.imports.data-migration.service-enabled | N | true | false | De-/Aktivierung des Datenmigrationsservice (Default = false) |
hup.one.eworxx.imports.data-migration.max-batch-size | N | 20 | Max. Anzahl von Aufträgen, die in einem Migrationszyklus abgearbeitet werden (Default = 20) |
hup.one.eworxx.imports.data-migration.import-check-delay | N | PT3S | Pollrate |
Plugin advantage aktiv, wenn design-file-directory und template-file-directory konfiguriert und erreichbar | |||
hup.one.eworxx.imports.data-migration.advantage.design-file-directory | J | \\les-file1\gestaltung\eWorxx\advantage\Kunden | Verzeichnis für die Gestaltungsdateien |
hup.one.eworxx.imports.data-migration.advantage.template-file-directory | J | \\les-file1\gestaltung\eWorxx\advantage\JobTasche_KUNDEN | Verzeichnis für die Teilvorlagen |
hup.one.eworxx.imports.data-migration.advantage.delete-source-after-import | J | true | false (Default) | Löschen der Quelldatei nach erfolgreicher Übernahme |
hup.one.eworxx.imports.data-migration.advantage.orderno-regex-4-old-motif | J | \d{8} | Regulärer Ausdruck zur Ermittlung der tatsächlichen externen Auftragsnummer aus der DesignOrder.OrderNo; für Bestimmung der Verzeichnisse/Dateien z.B. 528604_11029770001_442 → \d{8} → 11029770 |
Plugin vl aktiv, wenn die unter studio-name-2-external-directory konfigurierten Verzeichnisse erreichbar sind | |||
hup.one.eworxx.imports.data-migration.vl.recursive | N | true | false (Default) | Gibt true an, dass der gesamte Verzeichnis-Inhalt (auch Unterverzeichnisse) nach eWorxx importiert wird |
hup.one.eworxx.imports.data-migration.vl.delete-source-after-import | N | true | false (Default) | Löschen der Quelldatei nach erfolgreicher Übernahme |
hup.one.eworxx.imports.data-migration.vl.prefix-4-original-motif-file | N | Präfix (Default: leer) | Präfix (Dateinamen-konform), der an die originale Motivdatei vorangestellt wird; wenn leer, erfolgt kein Motivdatei-Import |
hup.one.eworxx.imports.data-migration.vl.studio-name-2-external-directory[0].studio-name | Studioname | Studioname des Auftrags, für die die VL-Datenübernahme durchgeführt wird | |
hup.one.eworxx.imports.data-migration.vl.studio-name-2-external-directory[0].external-directory | Wurzel-Verzeichnis zur externen Auftragstasche | Aus diesem Verzeichnis werden alle Dateien (recursive beachten) aufgesammelt und ggf. importiert. |
XML-Dateiformat
Je nach Inhalt können noch Teilvorlagen als Bilddateien übergeben werden. Teilvorlagen sind gestaltete Elemente (wie z.B. Logos oder Fotos), die in der Anzeige berücksichtigt werden müssen. Ggf. wird hier direkt auf das CMS (Alfresco) referenziert.
Name | Datentyp | Pflicht | Beschreibung |
---|---|---|---|
Customer.Name | String | ja | Kundenname; max. 256 Zeichen; Freitext |
Customer.Number | String | nein | Kundennummer; max. 64 Zeichen |
Customer.Address | String | nein | Kundenadresse; max. 512 Zeichen; Freitext |
Customer.ContactPerson | String | nein | Kontaktperson des Kunden; max. 256 Zeichen; Freitext |
Customer.PhoneNumber | String | nein | Telefonnummer(n) des Kunden; max. 64 Zeichen |
Customer.Email | String | nein | Emailadresse(n) des Kunden; max. 256 Zeichen |
Customer.PostalAddress | String | nein | Formatierte Postadresse des Kunden; Freitext; CData-Section für Mehrzeiligkeit oder Html-codiert mit (siehe Beispiel) |
Layout.Height | Integer | ja | Soll-Höhe des Motivs in Mikrometer |
Layout.Width | Integer | ja | Soll-Breite des Motivs in Mikrometer |
Layout.Columns | Integer | nein | Spaltigkeit |
Layout.MotifHeight | Integer | nein | Ist-Höhe des Motivs in Mikrometer (wird nur beim Export verwendet!) |
Layout.MotifWidth | Integer | nein | Ist-Breite des Motivs in Mikrometer (wird nur beim Export verwendet!) |
Layout.CMYK | Byte/Boolean | nein | CMYK-Motiv; 0/1; default = 1 |
Layout.BlackWhite | Byte/Boolean | nein | Graustufen-Motiv; 0/1; default = 0 Zwischen CMYK und BlackWhite existiert keine entweder/oder-Abhängigkeit. Bei CMYK UND BlackWhite = 0 resultiert SW, sind beide = 1 resultiert 4C. |
Layout.SpotColors[].SpotColor name | String | nein | Spotfarbnamen; zusammen max. 512 Zeichen |
Order.StudioName | String | ja | Studioname; max. 256 Zeichen |
Order.Number | String | ja | Auftragsnummer; max. 32 Zeichen |
Order.Position | Integer | ja | Auftragsposition |
Order.MotifNumber | String | nein | Motivnummer max. 256 Zeichen |
Order.Priority | Integer | nein | Priorität; 1-N (1 = hoch) |
Order.PlainText | String | nein | Anzeigenrohtext Freitext; CData-Section für Mehrzeiligkeit oder Html-codiert mit (siehe Beispiel) |
Order.FinishingDateTime | DateTime | ja | Erstes bzw. Nächstes Fertigstellungsdatum zu dem die Gestaltung beendet sein muss |
Order.PublicationDate | Date | nein | Erstes bzw. Nächstes Erscheindatum; YYYY-MM-DD |
Order.Edition | String | nein | Ausgabe; max. 256 Zeichen; Freitext |
Order.Rubric | String | nein | Rubrik(en) (z.B. R1 > R2 > ... RN); max. 256 Zeichen; Freitext |
Order.ContactPerson | String | nein | Kontaktperson des Verlags (Name, Email, Telnr.); max. 256 Zeichen |
Order.OrderGroup | String | nein | Gruppierung von Gestaltungsaufrägen (z.B. Kollektiv-Kennung); max 32 Zeichen |
Order.Tags[].Tag.name | String | nein | Stichworte; max. 255 Zeichen |
Order.StateInfo.Key | String | nein | Status-Schlüssel (wird nur beim Export verwendet!) |
Order.StateInfo.Text | String | nein | Status-Bezeichnung (wird nur beim Export verwendet!) |
Order.EditionDates[].EditionDate | nein | Sequenz vom EditionDate (Tupel aus Edition,PublicationDate und FinishingDateTime ) z.B.: <EditionDate> <Edition>Edition1</Edition> <PublicationDate>2022-07-11</PublicationDate> <FinishingDateTime>2022-07-10T18:00:00</FinishingDateTime> </EditionDate> | |
DesignOrderNote | String | nein | Gestaltungshinweis; max. 512 Zeichen |
CorrectionNote | String | nein | Korrekturhinweis; max. 512 Zeichen |
TemplateFileNames[].FileName name | String | nein | Dateinamen der Gestaltungsvorlagen (Logos, Texte, Schriften) |
ExternalMotifFileName | String | ja | Motiv-Dateiname für den Export; max. 256 Zeichen |
User | String | nein | Benutzer (des Anzeigensystems) |
Acceptance.Text | String | nein | Abnahmetext (für Korrekturworkflow); max. 512 Zeichen |
Acceptance.Resubmission | Byte/Boolean | nein | Wiedervorlagekennzeichen; 0/1; default = 0 |
Acceptance.ReactionDeadline | DateTime | ja | Späteste Reaktionszeit (für Kundenkorrektur); YYYY-MM-DDTHH:MM:SS |
Acceptance.Emails[].Email address | String | nein | Emailadresse( n ) für den Korrektur-Workflow (TO/CC/BCC); max. 256 Zeichen je Adresse |
Acceptance.CCEmails[].Email address | String | nein | |
Acceptance.BCCEmails[].Email address | String | nein | |
Acceptance.FaxNumbers[].Fax number | String | nein | Faxnummer( n ) für den Korrektur-Workflow; max. 32 Zeichen eWorxx versendet automatisch ein Fax, wenn Resubmission=1 ist, und keine Email-Adressen vorhanden sind. |
Die Schemadefinition XSL hat die folgende Form:
Das zu importierende XML muss die folgende Struktur aufweisen:
Webservice Konfiguration und JSON Format (Import)
Die REST-Schnittstelle ist unter Hostname:Port/service/public/designorder/import verfügbar und erhält eine JSON-Struktur und optional Satzdateien.
Die Dokumentation des JSON-Objekts ist mit Swagger verfügbar unter Host:Port/swagger-ui/#/design-order-public-controller/designOrderDto4RestImportDocumentationUsingPOST
Beispiel siehe: Swagger zur Model-Dokumentation
Es steht auch eine REST-Schnittstelle zum Ermitteln der gültigen Designstudio-Namen zur Verfügung.
Beispiel siehe: Swagger zur Ermittlung der Designstudio-Namen
Name | Datentyp | Pflicht | Beschreibung |
---|---|---|---|
customerNo | String | nein | Kundennummer; max. 64 Zeichen; Freitext |
customerName | String | ja | Kundenname; max. 256 Zeichen; Freitext |
customerAddress | String | nein | Kundenadresse; max. 512 Zeichen; Freitext |
contactPersonOfCustomer | String | nein | Kontaktperson des Kunden; max. 256 Zeichen; Freitext |
customerTelNo | String | nein | Telefonnummer(n) des Kunden; max. 64 Zeichen |
customerEmail | String | nein | Emailadresse(n) des Kunden; max. 256 Zeichen |
postalAddress | String | nein | Formatierte Postadresse; Freitext; Mehrzeiligkeit durch \n |
height | Integer | ja | Höhe des Motivs in Mikrometer; größer 0 |
width | Integer | ja | Breite des Motivs in Mikrometer; größer 0 |
columns | Integer | nein | Spaltigkeit |
cmyk | Boolean | nein | CMYK-Motiv; false/true; default = true |
blackwhite | Boolean | nein | Graustufen-Motiv; false/true; default = false Zwischen cmyk und blackwhite existiert keine entweder/oder-Abhängigkeit. Bei cmyk UND blackwhite = false resultiert SW, sind beide = true resultiert 4C. |
spotColors | Array | nein | Spotfarbnamen; keine leeren Listeneintraege |
designOrderNote | String | nein | Gestaltungshinweis; max. 512 Zeichen |
correctionNote | String | nein | Korrekturhinweis; max. 512 Zeichen |
designStudio | String | ja | Studioname; max. 256 Zeichen |
orderNo | String | ja | Auftragsnummer bzw. Motivnummer; max. 32 Zeichen |
orderPosition | Integer | ja | Auftragsposition; größer 0 |
motifNumber | String | nein | Motivnummer, max. 256 Zeichen Ein Motiv kann immer nur an einem Auftrag hängen, kann aber ggfs. auch an einen Anderen Auftrag "übernommen" werden. Dh. Der erste Auftrag, der mit einer Motivnummer M0001 kommt, legt dieses Motiv an, der nächste Auftrag, der M0001 verwendet, übernimmt dieses Motiv von seinem Vorgänger (inkl. Satzdaten usw.) |
priority | Integer | nein | Priorität; 1-N (1 = hoch) |
plainText | String | nein | Anzeigenrohtext (Zeilenwechsel durch \n) |
finishingDate | Date | ja | Fertigstellungsdatum zu dem die Gestaltung beendet sein muss (z.B. Rubrikenschluss, Satzschlusszeit) |
publicationDate | Date | nein | Erscheindatum |
edition | String | nein | Ausgabe; max. 256 Zeichen; Freitext |
editionDates | Array | nein | Array vom EditionDate (Tupel aus edition und publicationDate) (wird verwendet, wenn für einen Auftrag mehrere Ausgabe-Erscheintermin-Kombinationen übertragen werden sollen) |
rubric | String | nein | Rubrik(en) (z.B. R1 > R2 > ... RN); max. 256 Zeichen; Freitext |
contactPersonOfPublisher | String | nein | Kontaktperson des Verlags (Name, Email, Telnr.); max. 256 Zeichen |
orderGroup | String | nein | Auftragsgruppe; max. 32 Zeichen |
externalMotifName | String | ja | Motiv-Dateiname für den Export; max. 256 Zeichen |
user | String | nein | Benutzer (des Anzeigensystems) |
acceptanceText | String | nein | Abnahmetext (für Korrekturworkflow); max. 512 Zeichen |
resubmission | Boolean | nein | Wiedervorlagekennzeichen; false/true; default = false |
reactionDeadline | Date | ja | Späteste Reaktionszeit (für Kundenkorrektur), erforderlich wenn resubmission |
emails | Array | nein | Emailadressen für den Korrektur-Workflow (TO/CC/BCC); max. 256 Zeichen je Adresse |
ccEmails | Array | nein | |
bccEamils | Array | nein | |
faxNumbers | Array | nein | Faxnummern für den Korrektur-Workflow; max. 32 Zeichen je Nummer |
tags | Array | nein | Stichworte; max. 255 Zeichen je Stichwort (Leerzeichen erlaubt) |
Das zu übergebende JSON Objekt muss die folgende Struktur aufweisen:
Webservice Konfiguration (Storno)
Die REST-Schnittstelle ist unter Hostname:Port/service/public/designorder/cancel-order verfügbar.
Parameter | Datentyp | Pflicht | Beschreibung |
---|---|---|---|
orderno | String | ja | Auftragsnummer bzw. Motivname (vgl. Importschnittstelle) |
orderpos | Integer | ja | Auftragsposition |
motifno | String | nein | Motivnummer |
reason | String | nein | Stornogrund |
Webservice Konfiguration (Auftragsstatus)
Die REST-Schnittstelle ist unter Hostname:Port/service/public/designorder/order-state verfügbar.
Parameter | Datentyp | Pflicht | Beschreibung |
---|---|---|---|
orderno | String | ja | Auftragsnummer bzw. Motivname (vgl. Importschnittstelle) |
orderpos | Integer | ja | Auftragsposition |
motifno | String | nein | Motivnummer |
Als Ergebnis kommt ein JSON mit Status-Key, Status-Text und (optional) Fehlertext.