Frage

ich einige Komponentenartikel in tridion haben, die für ein bestimmtes Schema eingerichtet sind. Ich möchte in der Lage sein, das Schema für diese Elemente auf ein neueres Schema zu ändern. Das neue Schema behält alle vorhandenen Eigenschaften, dass die alte hatte, so gäbe es keinen Datenverlust sein. In dieser Situation ist es nicht möglich, einfach das vorhandene Schema zu ändern.

Wer weiß, ob es möglich ist, dies zu tun?

War es hilfreich?

Lösung 5

Ich war in der Lage, dies zu tun, indem sie einige Abfragen Schreiben der Schemanamen und Verweise direkt innerhalb der tridion-Datenbank zu ersetzen. Es funktionierte gut, aber ich würde dies nur empfehlen, wenn das Ausgang Schema genau wie das Ende Schema ist. Sonst werden sie die Komponenten brechen.

Andere Tipps

Sie können das Schema einer einfach Komponente ändern, indem Sie einen neuen Wert in der Schema-Eigenschaft der Komponente zuweisen und sie zu speichern. dass die Komponente validates gegen das neue Schema Natürlich erfordert die Komponente speichern.

Der triviale Fall für das ist, wenn Sie gerade das Schema kopieren kleistert und daher beide Schemata sind identisch. In der Praxis haben Sie in der Regel einen Grund für das Schema zu ändern, in dem Fall, dass Sie wahrscheinlich wollen GetXml () und UpdateXML () auf der Komponente verwenden und haben eine XSLT die XML etwas kompatibel mit dem neuen Schema zu transformieren. In diesem Szenario können Sie einfach das Schema Verweis in der XSLT aktualisieren.

Wie Jonathon sagt, Sie eine benutzerdefinierte Seite für diese verwenden können, aber bedenken Sie, dass im Allgemeinen ist dies eine einmalige Aktion, die gestaltet werden soll / ausgeführt von Programmierern und Administratoren, so dass, wenn Sie eine benutzerdefinierte Seite verwenden, werden Sie wahrscheinlich will es danach entfernen.

Es gibt einen Grund, warum die Tridion GUI nicht zulässt, dass das Schema auf einer Komponente zu ändern: Es ist sehr wahrscheinlich, dass Ihre Komponente sein Inhalt nach einer solchen Änderung verlieren, auch wenn die beiden Schemata einige Felder gemeinsam haben. Um dies zu vermeiden, stellen Sie sicher, dass die Schemata den gleichen Ziel-Namensraum haben. In diesem Fall, wenn ein Feld in beiden Schemata definiert ist, wird die Komponente ihre Werte beibehalten, selbst nachdem das Schema geändert wurde.

Das Tridion Content-Porter kann Sie Inhalt und Schemata von einem CMS in einem anderen exportieren. Es kann auch Elemente verwendet werden, bewegen zwischen Publikationen. Dies ist eine Option „Duplikat“ ein Schema und dessen Inhalt für Wiederverwendung (sowie die Sicherung der Arbeiten vor Live-Daten zu ändern!).

Seien Sie vorsichtig, nicht den Namespace zu verändern oder XML-Felder, die Sie mögen halten (Beschreibungen und Schemanamen sind in Ordnung obwohl). Um sicher zu gehen, vor allem mit Live-Daten, macht einen sauberen Export nur für den Fall, bevor eine dieser Antworten verwendet wird.

Es ist nicht möglich, das Schema einer Tridion Komponente durch die Content-Manager zu ändern. Dies kann jedoch eine ‚Benutzerdefinierte Seite‘ erreicht werden, wobei als das API, um die Änderung einer Komponente des Schemas durch Code ermöglicht.

Genommen von der SDL Tridion 2009 Dokumentation (Templating Implementation Manual (TOM.NET) 2009):

  • Klasse: Tridion.ContentManager.ContentManagement.Component
  • Property: public Schema Schema {get; einstellen; }
  • Beschreibung:. Und festlegen das Schema für die Komponente der Inhalte und Metadaten

Es ist ein Element (einschließlich einer Codebeispiel) auf den Tridion Entwicklerforen (topic_id = 2899) darüber. Da dies jedoch ist ein geschlossenes Forum Ich bin nicht sicher über die Gesetzmäßigkeiten von hier den Code zu reproduzieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top