Helpdesk: WAWITranslator - DeepL Integration für JTL-Wawi

Konfiguration | WAWITranslator

Funktionen

Der WAWI Translator kann folgende Texte automatisch (mit Hilfe der DeepL-API), in die von DeepL unterstützte Sprache, übersetzen:
  1. Artikel
    1. Name, Kurzbeschreibung, Beschreibung, Titel-Tag, Meta-Keywords, Meta-Description
  2. Kategorien
    1. Name, Beschreibung, Titel-Tag, Meta-Keywords, Meta-Description
  3. Artikel
    1. URL
  4. Kategorien
    1. URL
  5. Attributwerte (Artikel)
    1. Nur Textwerte
  6. Attribute
    1. Attributname und Werteliste
  7. Attributwerte (Kategorie)
    1. Nur Textwerte
  8. Variationen
    1. Variationsname
  9. Variationswerte
    1. Wertname
  10. Merkmale
    1. Merkmalname
  11. Merkmalwerte
    1. Name, Beschreibung, Titel-Tag, Meta-Keywords, Meta-Description
  12. Mediendateien
    1. Name, Beschreibung
  13. Konfigurationsgruppen
    1. Name, Beschreibung
  14. Cross-Selling-Gruppen
    1. Name, Beschreibung
  15. Hersteller
    1. Beschreibung, Titel-Tag, Meta-Keywords, Meta-Description
Sie müssen bei DeepL eine API-Subskription haben:
Die Subskriptionsmöglichkeiten finden Sie unter https://www.deepl.com/de/pro#developer
Zur Verfügung stehen DeepL API Free oder eine DeepL API Pro Subskription.
Wir empfehlen die DeepL API Pro Subskription.
Hinweis: aktuell ist es vor der Version 1.0.8 noch nicht möglich, selbständig zwischen der DeepL API Free und DeepL API Pro zu wechseln.
Falls Sie doch wechseln müssen, kontaktieren Sie bitte den Support unter https://support.falkcons.de.
Ab Version 1.0.8 kann der geänderte API-Key in der Datei .\utils\conf.ps1 in der Variable $API_Key hinterlegt werden.

Funktionsmodi

      Im Menu wählen Sie einfach die Zielsprache in die Sie übersetzen wollen und danach, was übersetzt werden soll.
Achtung: Die Zielsprache muss vorher in der Wawi aktiviert sein!

      Es werden standardmäßig immer nur 30 Datensätze übersetzt. Die Anzahl der zu übersetzenden Datensätze können Sie im Feld 'Anzahl' beliebig anpassen.
      Wenn Sie alle Datensätze übersetzen möchten, markieren Sie die Checkbox 'Alles übersetzen'. Der WAWITranslator übersetzt dann so lange, bis keine Datensätze mehr in der Zielsprache leer sind.
      
Sollten Sie den Übersetzungsprozess doch noch stoppen wollen, so können Sie dies über den Taskmanager machen, indem Sie den Prozess "WAWITranslator.exe" beenden.

Wichtig: Wenn die zu übersetzenden Texte HTML Code enthalten, dann ist es wichtig, dass dieser HTML-Code nicht Fehler enthält (das könnte z.B. vorkommen, wenn der Text aus Wort direkt kopiert und eingefügt wurde).
Bei nicht validem HTML-Code könnte es zu Formatierungsproblemen in den übersetzten Texten kommen; in einzelnen Fällen sogar dazu führen, dass der Text nicht übersetzt wird, obwohl DeepL Credits verbraucht werden.
Deshalb empfehlen die Option [Alles übersetzen] nur dann zu nutzen, wenn Sie bereits einige Datensätze getestet haben und mit dem Resultat zufrieden sind.

      

  1. Einzelne Artikel per Workflow

      Es können einzelne oder mehrere Artikel über einen WF übersetzt werden.
      Siehe „Workflow anlegen für die Übersetzung spezifischer Artikel“
  1. Kommandozeile

      In diesem Modus werden die zu übersetzenden Texte mit PowerShell (ggf. über eine Windows-Aufgabe ausgeführt).
      Diesen Modus sollten nur fortgeschrittene Benutzer verwenden. Bei Fragen wenden Sie sich bitte an unseren Support unter https://support.falkcons.de.




Funktionen im Detail (nur für Fortgeschrittene)

Parameter

Der WAWITranslator erwartet folgende Parameter
  1. Der erste Parameter definiert, was übersetzt werden soll:
    Folgende Parameterwerte sind möglich:
    Siehe Tabelle „Übersetzungstypen“
    * Attributwerte und Merkmalwerte sind nicht artikelspezifisch – können aber ausgehend vom Artikel übersetzt werden. In diesem Fall werden nur die Merkmale übersetzt, die am Artikel zugewiesen sind. Alle anderen Artikel, die dieselben Merkmale haben, haben dann auch die übersetzten Texte.
  2. Der zweite Parameter ist der interne Schlüssel (Siehe Tabelle Übersetzungstypen)
    Z.B.: Bei Artikel, Attributen, Merkmale und Merkmalwerte kann hier der interne Schlüssel (dbo.tArtikel.kArtikel bzw. {{ InterneArtikelnummer }}) mitgegeben werden. Für die Stapelverarbeitung setzen wir diesen Parameter auf 0. Bei Kategorien kann hier der interne Schlüssel der Kategorie (dbo.tKategorie.kKategorie) mitgegeben werden. Für die Stapelverarbeitung setzen wir diesen Parameter auf 0.
  3. Der dritte Parameter ist die Ausgangssprache, von der übersetzt werden soll. Dies kann eine beliebige Sprache sein, die in der Wawi aktiviert ist und von DeepL unterstützt wird. Die Sprache wird im Format ISO2 angegeben, z.B. EN für Englisch oder FR für Französisch. Optional kann hier auch z.B. EN-GB für Englisch in Großbritannien (oder EN-US) gewählt werden. Wichtig ist dabei, dass der Bindestrich enthalten ist.
  4. Der vierte Parameter ist die Zielsprache, in die übersetzt werden soll. Es gelten dieselben Bedingungen wie bei Parameter 3 (Ausgangssprache).
  5. Der fünfte Parameter definiert, ob vorhandene Texte in der Zielsprache überschrieben werden sollen oder nicht. 1 steht für ‚überschreiben‘ und 0 bedeutet ‚nicht überschreiben‘.
    Wichtig: um bei DeepL nicht unnötig Zeichen zu verbrauchen, sollte dieser Parameter möglichst immer auf 0 stehen.
  6. Der sechste Parameter definiert die Anzahl der Zeilen, die in einem Batch bearbeitet werden. Standard ist 30.

Tabelle Übersetzungstypen


1. Parameter


2. Parameter


Was wird übersetzt?


Übersetzung von ….


Typ


Key


Übersetzte Texte

Artikel

1

dbo.tArtikel.kArtikel




Name

Kurzbeschreibung
Beschreibung
Titel-Tag
Meta-Keywords
Meta-Description

Kategorien2dbo.tKategorie.kKategorie

Name

Beschreibung
Titel-Tag
Meta-Keywords
Meta-Description

Artikel
(Spezialfall: Vater-Kind-Artikel)

3

dbo.tArtikel.kArtikel



Name

Kurzbeschreibung (wird vom Vaterartikel kopiert)
Beschreibung (wird vom Vaterartikel kopiert)
Titel-Tag
Meta-Keywords
Meta-Description

Artikel-URL
5
dbo.tArtikel.kArtikel
URL-Pfad
Kategorie-URL
6
dbo.tKategorie.kKategorie
URL-Pfad
Attribute
10
dbo.tAttributSprache.kAttribut
Attributname
Werteliste

Attributwerte (des Artikels)

11

dbo.tArtikel.kArtikel

(Nur Textwerte)

Attributwerte (der Kategorie)
12
dbo.tKategorie.kKategorie
(Nur Textwerte)
Variationen
20
dbo.tEigenschaftSprache
Name
Variationswerte
21
dbo.tEigenschaftWertSprache
Name

Merkmale

30

dbo.tMerkmal.kMerkmal

Merkmalname

Merkmalwerte (des Artikels)

31

dbo.tArtikel.kArtikel



Name

Beschreibung
Titel-Tag
Meta-Keywords
Meta-Description

Mediendateien
35
dbo.tMediendateiSprache.kMedienDatei
Name
Beschreibung

Konfigurationsgruppen

40

dbo.tkonfiggruppe.kKonfiggruppe

Name

Beschreibung

Cross-Selling-Gruppen

45

dbo.tXSellGruppe.kXSellGruppe

Name

Beschreibung

Hersteller

50

dbo.tHersteller.kHersteller



Beschreibung

Titel-Tag
Meta-Keywords
Meta-Description


Workflow anlegen für die Übersetzung spezifischer Artikel

In der WF-Verwaltung unter ‚Artikel -> Artikel – Manuell‘ legen wir einen neuen WF an und nennen diesen ‚Übersetzen‘

(1) Unter ‚Übersetzen‘ legen wir ein Ereignis an. Der Name kann hier frei gewählt werden, es empfiehlt sich aber, das Kürzel der Sprache zu hinterlegen.

(2) Damit dieser WF nur in der Wawi erscheint, empfiehlt es sich, diesen auf die Wawi zu begrenzen.

(3) Ausführungsplan (Sofort): wenn diese Option gewählt ist, muss der Benutzer, der den WF ausführt, zwingend mit der Wawi auf dem Server angemeldet sein, auf dem auch der WAWITranslator installiert ist. Alternativ kann hier ‚Zeitversetzt‘ gewählt werden damit der Worker den WF im Server ausführt.

(4) Im Abschnitt Aktionen wählen wir ‚Ausführen‘ und bei ‚Programm/Skript‘ fügen wir folgenden Wert ein: „start WTS.exe“ (ohne Anführungszeichen) ein.

Als Parameter setzen wir hier
1 {{ Vorgang.Allgemein.Stammdaten.InterneArtikelnummer }} DE EN-GB 0 30
(ohne Anführungszeichen)

Die 1 steht für ‚Artikel übersetzen‘ (siehe Tabelle Übersetzungstypen).

Der zweite Parameter definiert, was übersetzt werden soll, und hat drei Funktionen:

-          Wenn dieser Parameter größer als 0 ist, dann wird der Datensatz übersetzt dessen ID gleich dem Parameterwert entspricht.
Z.B., wenn der Artikel mit der internen Artikelnummer „1“ übersetzt werden soll, dann muss hier eine „1“ stehen.
Wenn die Kategorie mit der internen ID „50“ übersetzt werden soll, dann muss dieser Wert „50“ sein.
Je nach Übersetzungstyp wird hier die entsprechende ID benötigt. Siehe „Tabelle Übersetzungstypen > Key“: dort finden Sie die Datenbanktabelle/-Spalte, die hier verwendet werden kann.

-          Wenn dieser Parameter 0 ist, dann werden alle Artikel übersetzt, solange die Anzahl der zu bearbeitenden Artikel nicht größer als der Batch (siehe Parameter sechs) ist.

-          (!) Wenn dieser Parameter -1 (minus eins) ist, dann werden alle Texte übersetzt, die noch keine Übersetzung für die Zielsprache haben.
Wenn dieser Parameter den Wert -1 enthält, dann wird der fünfte Parameter ‚Überschreiben‘ ignoriert bzw. immer als ‚0 = nicht überschreiben‘ verarbeitet.
Auch hier ist die Batchgröße relevant, d.h. es werden immer die Anzahl der Zeilen, die im sechsten Parameter definiert sind, übersetzt und dann die nächsten x Zeilen, solange bis alles komplett übersetzt ist.

Der dritte Parameter DE ist die Ausgangssprache (hier kann eine beliebige Ausgangssprache gewählt werden – sie muss nur in der WAWI existieren).

Der vierte Parameter EN-GB ist die Sprache, in die übersetzt werden soll. Im Normallfall reicht es hier, wenn man die ISO2 Abkürzung angibt (z.B. nur EN); es gibt aber auch die Möglichkeit z.B. für EN auch EN-US oder EN-GB zu konfigurieren.

Der fünfte Parameter 0 steht für Überschreiben (0=Nein, 1=Ja, 2=Nur dann, wenn die Ausgangssprache sich seid der letzten Übersetzung nicht geändert hat).
      Wenn dieser Parameter = 0 ist, dann werden bestehende Texte nicht nochmal übersetzt.
      Wenn dieser Parameter = 1 ist, dann wird immer erneut übersetzt, auch wenn der Text in der Zielsprache schon vorhanden ist.
      Wenn dieser Parameter = 2 ist, dann prüft der WAWITranslator, ob die Ausgangssprache sich seid der letzten Übersetzung geändert hat, und wenn das der Fall ist, wird der Text erneut übersetzt. Achtung: der Wert 2 kann nur bei Artikel- oder Kategorie-Übersetzung (Übersetzungstyp 1, 2, 3, 5 und 6) genutzt werden. 
      Dieser Parameter wird immer als 0 betrachtet, wenn der zweite Parameter -1 ist.

Der sechste Parameter 30 ist die Anzahl der Zeilen, die in einem Batch verarbeitet werden. Standard = 30 Zeilen. Für die manuellen Workflows ist dieser Wert hier irrelevant und kann ignoriert werden.

WICHTIG: zwischen jedem dieser Parameter muss zwingend ein Leerzeichen enthalten sein.

Bei ‚Kommandozeile benutzen‘ markieren wir die Checkbox.

Ausführungsverzeichnis ist der Installationspfad. Standard = „C:\WAWITranslator\“ (ohne Anführungszeichen)

WICHTIG: in dieser Konfiguration kann der WAWITranslator nur auf dem Server ausgeführt werden. Falls die Übersetzung auch im Netzwerk zur Verfügung stehen soll, muss der Workflow zeitversetzt (siehe 3: Ausführungsplan) vom Worker ausgeführt werden.

JTl-Wawi Workflow Konfiguration für WAWITranslator


Batchverarbeitung / Kommandozeile

ACTHUNG: nur für Fortgeschrittene

Im Batch-Modus kann der WAWITranslator Übersetzungen im Hintergrund machen, ohne dass diese über einen Workflow ausgelöst werden müssen.


Dazu öffnen wir PowerShell und gehen zum Installationsordner
cd C:\WAWITranslator\

Um zu übersetzen, führen wir WTS.exe mit den entsprechenden Parametern aus.

Hier einige Beispiele:

Mit folgendem Kommando werden die ersten sechzig Artikel übersetzt:
.\WTS.exe 1 0 DE EN 0 60


Alle Artikel von Deutsch auf Englisch übersetzen, bis es keinen Artikel mehr gibt der nicht in Englisch übersetzt wurde. Bestehende Übersetzungen werden nicht überschrieben.
.\WTS.exe 1 -1 DE EN

Die Kategorie mit der ID = 210 von Deutsch nach Französisch übersetzen, auch wenn die Übersetzung schon existiert (bestehende Übersetzungen überschreiben).
.\WTS.exe 2 210 DE FR 1

Alle existierenden Variationen übersetzen, die noch keine Übersetzung in Englisch haben. Achtung: es werden nur die Variationsnamen übersetzt; schon existierende Kindartikel werden hier nicht modifiziert.
.\WTS.exe 20 -1 DE EN

Alle existierenden Variationswerte übersetzen, die noch keine Übersetzung in Englisch haben. Achtung: es werden nur die Variationswerte übersetzt; schon existierende Kindartikel werden hier nicht modifiziert.
.\WTS.exe 21 -1 DE EN

Alle existierenden Merkmalwerte übersetzen, die noch keine Übersetzung in Englisch haben
.\WTS.exe 31 -1 DE EN

Alle Merkmalwerte des Artikels mit der internen Artikelnummer 125 nach Französisch übersetzen, auch wenn schon eine Übersetzung existiert. Maximal werden 100 Merkmalwerte verarbeitet.
.\WTS.exe 31 125 DE FR 1 100

Alle Konfigurationsgruppen übersetzen, die noch keine Übersetzung in Italienisch haben. Bestehende Übersetzungen werden nicht überschrieben.
.\WTS.exe 40 -1 DE IT

Alle Crosssellinggruppen übersetzen, die noch keine Übersetzung in Englisch haben. Bestehende Übersetzungen werden nicht überschrieben.
.\WTS.exe 40 -1 DE EN

Alle Hersteller übersetzen, die noch keine Übersetzung in Englisch haben.
.\WTS.exe 50 -1 DE EN


Um einen laufenden Prozess des WAWITranslator’s zu beenden, öffnen Sie den Taskmanager, suchen den WTS und klicken auf ‚Task beenden‘.


Es ist möglich mehrere Instanzen gleichzeitig zu starten; allerdings sollte es sich dann immer um unterschiedliche Sprachen oder Übersetzungstypen handeln. Wird derselbe Übersetzungstyp und dieselbe Sprache doppelt gestartet, würde das zu doppelten Übersetzungen führen und somit das Kontingent bei DeepL unnötig verbrauchen.

In folgendem Beispiel werden in beiden Fällen Kategorien übersetzt. Einmal von DE nach FR und einmal von DE nach IT. Dies führt zu keiner Überlappung.



Eine Instanz benötigt ca. 83 MB Arbeitsspeicher:




Logs 

Im Unterordner \translations werden alle zu übersetzenden und alle übersetzten Texte geloggt und anschließend komprimiert.

Jede dieser Dateien können Sie mit einem Texteditor öffnen.

Die Dateien der zu übersetzenden Texte haben folgende Namen:

source_1-10874-DE-EN-GB-16-02-2023-01-37-14-232
Die 1 steht für ‚Artikel‘ (je nachdem, was übersetzt wurde, ändert sich diese Zahl) und die letzten Zahlen sind das Datum + Uhrzeit.

Die Dateien der übersetzten Texte haben folgende Namen:

translated_1-10874-DE-EN-GB.json 

Die Sprachen, die zuletzt übersetzt wurden, sind in dieser Datei gespeichert:

lang_DE-EN.json

Wenn Sie wissen möchten, wieviel Zeichen Sie von ihrem DeepL-Kontingent schon genutzt haben, dann öffnen Sie diese Datei:

usage.txt





    • Related Articles

    • WAWITranslator Versionen

      DEMO LITE PRO Lizenz-Gültigkeit: 3 Tage Lizenz-Gültigkeit: 1 Jahr Lizenz-Gültigkeit: 1 Jahr Übersetzung von Artikeln, URLs, Kategorien, Attributen, Merkmalen und Merkmalwerten, Konfigurationsgruppen, Crosssellinggruppen und Hersteller Übersetzung von ...
    • Installation

      Schritte für die Installation und Konfiguration von WAWITranslator a) Erstellen Sie ein Konto bei DeepL Entweder ein Gratis-Konto oder eine Pro-Subscription: dazu gehen Sie auf https://www.deepl.com/de/pro#developer und registrieren Ihr Konto Sie ...
    • Lizenz erneuern / Upgrade

      Lizenz erneuern Die Lizenz des WAWITranslators wird automatisch online validiert. Dafür ist es jedoch notwendig, dass Sie die neuste Version des WAWITranslators installiert haben. Mindestens die Version 1.1.01 ist dafür notwendig. Lizenz upgraden ...