ich bin gerade am Switchen von google translate zu deepL und dabei auf folgendes Problem gestoßen.
Vielen Dank im voraus für eure Tipps, Ideen und Hinweise.
Ich möchte dem Flow eine Variable mit ‚DE,EN,DA,…‘ anlegen und diese soll dann alle Spreadsheets einzelnd in alle angegebenen Sprachen übersetzen.
Vorher wurde dies mit ColumnSplitToRows und anschließend SpreadsheetUrlDownload bewerstelligt.
Wobei hier eine URL mit Parametern per Step ‚HTTP‘ genutzt wurde.
Mit dem Step ‚DeepLTranslate‘ ist es nicht mehr möglich, da ich das Feld target_lang nicht dynamisch mit einem Wert füllen kann.
Alternative:
Und eine DeepL API Verbindung über den API oder HTTP Step hat nicht geklappt, da immer ein Forbidden 403 zurück kam. Eventuell habe ich hier den Key falsch übergeben. Sollte es da auch Trick bei DeepL geben? Ein Beispiel Verbindung wäre auch prima.
wir haben den DeepL Step erweitert, sodass die source_lang und target_lang jetzt auch pro Zeile über das inputSpreadsheet übergeben werden können. Wenn die Spalten gefüllt sind werden die Werte aus dem Spreadsheet verwendet. Falls die Spalte leer oder nicht vorhanden ist, wird wie bisher die ausgewählte Sprache der Step Option (source_lang bzw. target_lang) verwendet.
Vorweg ich komm jetzt klar, aber ich frag dennoch mal nach.
Wenn ich jetzt mehrere Column übersetzen möchte und diese danach wieder zuordnen möchte - Wie kriege ich diese Übersichtlich und korrekt in das ‚input_text‘ Feld rein?
Aktuell setze ich dies so um, dass ich beide Werte (in dem Fall hab ich nur 2) in das Feld ‚input_text‘ mit einem eindeutigen Trenner (###) zu einem string zusammenbaue - übersetzen lassen - dann wieder an Hand des Trenners splite.
Gitb es da eine elegantere Lösung?
DeepL sagt ja in Ihrer Doku, dass auch ein Array per API übergeben werden kann. Würde das mit dem Step auch gehen oder mit einem JSON ?
sorry - Jetzt will ich es aber genau wissen.
Aber wie gesagt, ich komme auch so klar.
Viele Grüße
Henry
PS:
Aktuell kommen dann aber unterschiedliche Übersetzungen zurück.
und die Step Option tag_handling = XML zu setzen. Dann sollte die XML im Output erhalten bleiben und du kannst mit der parseXml template Funktion auf die einzelnen Übersetzungen zugreifen:
Ob das eleganter ist als mit ### und split weiß ich nicht Du kannst aber in die XML tags auch noch weiter Daten packen, z.B.
<texts variantId="123" itemId="321">
die dann nicht übersetzt werden (deine 2. Frage).
Der Step reicht nur die id Spalte als identifier in den Output durch. Weitere Spalten können nicht durchgereicht werden. Wenn du mehrere Werte durchreichen willst, dann müsstest du alles in die id Spalte packen oder den XML Ansatz von oben verwenden.