dehaatbi
Returning Observer

Content Transport von Datensätzen löscht Übersetzung

Hallo,

wir verwenden den Content Transport an der ein oder anderen Stelle um Datensätze von einem Masterprojekt in Slave-Projekte zu übertragen. In den Slave-Projekten gibt es oft zusätzliche Sprachkanäle, die dann dort übersetzt werden.

Nun musste ich feststellen, dass bei einer erneuten Übertragung von einem Datensatz immer alle Sprachkanäle überschrieben werden. Auch die, die im Master gar nicht vorhanden sind. Das ist natürlich suboptimal.

Weiß jemand ob es eine Möglichkeit gibt hier nur bestimmte Sprachkanäle zu übertragen? Die einzige (unschöne) Möglichkeit die mir aktuell einfällt ist den Translation Import/Export dazu zu nutzen programatisch die gelöschten Sprachen wiederherzustellen. Das ist aber natürlich keine gute Lösung.

Viele Grüße

Tobi

0 Kudos
4 Replies
hoebbel
Crownpeak employee

Hallo Tobi,

welche FirstSpirit Version setzt Ihr denn ein?

Ab der FirstSpirit Version 2021-08 sollten Inhalte in zusätzlichen Zielsprachen erhalten bleiben. Zusätzlich kann in den Projekt-Eigenschaften (ServerManager->Projekt-Eigenschaften->Kompatibilität) aktiviert werden, dass bei Content Transport (und External Sync) der Mapping-basierte Schema Import genutzt werden soll. Letzteres bewirkt, dass entsprechende Spalten und Mappings für nur im Ziel vorhandene Sprachen im Schema angelegt werden. Das ist sehr sinnvoll, wenn auch das Schema transportiert wird, da ohne diese Einstellung das Schema unverändert aus der Quelle übernommen wird. Zusätzliche Sprachen werden also erst einmal gelöscht. 
Anmerkung: Standardmäßig ist diese Funktionalität deaktiviert, da sie problematisch sein kann, wenn es aktive Projektlösungen gibt, die die entsprechende Funktionalität implementiert haben.

Wenn Ihr eine neuere Version als 2021-08 einsetzt, dann erstelle bitte ein Bug Ticket beim Tech Support, da hier etwas schief zu gehen scheint. 
Hinweis: Das erhalten der Sprachen wird nur für Eingabekomponenten unterstützt, die auf oberer Ebene sprachabhängig sind. Nicht unterstützt wird eine sprachunabhängige FS_CATALOG Eingabekomponente, die sprachabhängige Eingabekomponenten in den inneren Absätze hat!

Wenn Ihr eine ältere Version als 2021-08 einsetzt, dann lautet die Antwort einfach "Update auf eine aktuelle FirstSpirit Version" 🙂

Viele Grüße
Holger

0 Kudos
dehaatbi
Returning Observer

Hallo Holger,

vielen Dank für die schnelle und ausführliche Antwort. Wir verwenden 2021-12, das sollte also passen. Leider geht es trotzdem nicht (weder mit noch ohne Kompatibilitätseinstellung).

Wir haben im schema.xml und in den mapping.xml jeweils alle Sprachen drin in allen Projekten, auch wenn diese im Masterprojekt gar nicht als Projektsprachen vorhanden sind. Ich vermute jetzt mal dass dadurch alle Sprachen ins Feature File kommen, auch die die immer leer sind, da sie gar nicht bearbeitet werden können im Master.

Vielleicht würde es klappen wenn wir die Sprachspalten und Mappings im Masterschema entfernen, aber dann können wir nicht mehr dieselbe Schemadefinition in allen Projekten verwenden, was natürlich andere Probleme mit sich bringt.

Gruß Tobi

0 Kudos
hoebbel
Crownpeak employee

Hallo Tobi,

genau für den Fall (im Master sind Spalten für die Sprachen, die nur in den Ziel-Projekten vorhanden sind, nicht enthalten) ist das neue Feature gedacht. Das legt dann im Ziel die neuen Spalten und Mappings an bzw. sorgt dafür, dass die vorhandenen erhalten bleiben.
Anmerkung: Das intelligente Mapping erhält grundsätzlich alle Spalten aus dem Quellprojekt, wenn das Schema transportiert wird. Die Spalten für die Sprachen, die in der Quelle, nicht aber im Zielprojekt vorhanden sind, bleiben also im Ziel erhalten. Das ist das erwartete (und so konzeptionierte) Verhalten.
Wenn das Konzept für Euch nicht ausreicht, dann beschreib bitte aus fachlicher Sicht, was fehlt (also den Anwendungsfall, der nicht abgedeckt ist). 

Die Vermutung, dass es daran liegt, dass die zusätzlichen Sprachspalten im Master vorhanden sind, klingt einleuchtend. Wenn beim Export die zusätzlichen Sprachen leer vorhanden sind, ist es korrekt, dass diese überschrieben werden. Das System kann ja nicht unterscheiden, ob ein Feld nicht gepflegt oder geleert wurde.
Es kann auch sein, dass beim Import erkannt wird, dass Informationen für alle Sprachen im Quell-Schema vorliegen und deshalb die Inhalte aus den zusätzlichen Sprachen nicht gemerged werden. 
Aber das sind technische Details, die keine Rolle spielen, da in beiden Fällen das Ergebnis das fachlich nicht gewünschte ist 😞

Testansatz, um eine Lösung zu finden: Quellprojekt und Zielprojekt kopieren. Wenn Eure Lizenz dazu nicht ausreicht, frag bitte im Tech Support eine temporäre Lizenz an, mit der das getestet werden kann. Wenn die Projekte zu groß sind, dann nur das Schema [mit oder ohne Datensätze] exportieren und in ein neues Projekt importieren. Da müssen dann entsprechende Datenquellen manuell angelegt werden.
Einmal einen [neuen] Datensatz transportieren (um den aktuellen Stand aus dem Produktiv System nachzubauen)
In der Quelle die zusätzlichen Sprachspalten entfernen und erneut transportieren.
Wenn das klappt, reicht es, dass Schema anzupassen.
Wenn nicht, versuch mal die Tabellenvorlage einmal zu bearbeiten, während das Mapping sichtbar ist und dann das bearbeiten zu beenden. (das führt dazu, dass die zusätzlichen Spalten auch in der Persistenz des Mappings gelöscht werden)
Dann erneut transportieren. Spätestens, wenn das auch nicht klappt, musst Du ein Ticket im Tech Support öffnen, damit analysiert werden kann, was das Problem ist.
Wenn einer der Wege klappt, wäre die Lösung, dass Schema des Quellprojektes entsprechend anzupassen.

Ich hoffe, dass Ihr mit den Informationen das Problem gelöst bekommt.
Holger

0 Kudos
dehaatbi
Returning Observer

Hallo Holger,

vielen Dank für die Erläuterung. Ich denke das Feature wäre grundsätzlich nützlich, aber ich sehe noch zwei Gründe wieso wir es aktuell so nicht nutzen können:

1. Die Schemadefinition ist bei uns in allen Projekten identisch und wird auch per Content Transport verteilt. Dadurch sind auch im Masterschema die ungenutzten Sprachen vorhanden, wodurch im Feature File leere Werte entstehen. Um die Spalten aus dem Master zu entfernen bräuchten wir ein grundlegend neues Konzept die Schemas zu verwalten.

2. Die Einschränkung, dass sprachunabhängige FS_CATALOGs nicht unterstützt werden ist doch erheblich, da diese doch sehr häufig zum Einsatz kommen.

Gruß Tobi

0 Kudos