Import
Importe sind der zweite Schritt des Staging-Verfahrens, mit dem Daten zwischen zwei ConSol CM-Systemen übertragen werden können. Die Daten werden mithilfe einer Szenariodatei aus dem Ursprungssystem exportiert und in das Zielsystem importiert.
Auf der Seite Import können Sie Szenariodateien importieren, die auf der Seite Staging-Export oder Benutzerdefinierter Export erzeugt wurden. Abhängig von den Exporteinstellungen können die Dateien verschiedene Arten Konfigurations- und Laufzeitdaten enthalten.
Alle Export- und Importaktionen werden in der Datei transfer.log
protokolliert.
Verfügbare Einstellungen für Importe
Der Verhalten des Imports kann im Bereich Erweiterte Importeinstellungen konfiguriert werden.
Normalerweise müssen diese Einstellungen nicht geändert werden.
Es sind folgende Einstellungen verfügbar:
-
Modus: Legt das Verhalten bei Fehlern während des Imports fest.
-
Bei Fehlern abbrechen: Der Import wird abgebrochen, wenn ein Fehler auftritt. Dies ist das Standardverhalten, das bei der regulären Arbeit mit dem System verwendet werden sollte, z. B. zur Übertragung von Daten von einem Entwicklungssystem auf ein Produktivsystem.
-
Fehler ignorieren: Fehlerhafte Daten werden beim Import ignoriert. Mit dieser Option kann der Import auch dann fortgesetzt werden, wenn es Probleme mit den Daten gibt, z. B. weil ein referenziertes Objekt nicht auf dem Zielsystem gefunden wurde. Diese Option kann für Importe in Testsysteme nützlich sein. Wenn Sie sie auf Produktivsystemen nutzen, müssen Sie die erkannten Probleme nach dem Import lösen.
-
Import erzwingen: Fehlerhafte Daten werden ins Zielsystem importiert. Diese Option sollte nur auf Entwicklungssystemen oder vom Supportteam verwendet werden, um Fehler nachzustellen.
-
Alle vorhandenen Daten löschen: Löscht alle vorhandenen Laufzeit- und Konfigurationsdaten aus der Datenbank. Diese Option sollte nur verwendet werden, um ein ganz neues System mit dem Szenario zu erzeugen.
infoWenn der Systemtyp prod ist (siehe System-Property system.flavour) schlägt der Import fehl, wenn diese Option ausgewählt ist.
-
Annotationen, die nicht in der Importdatei vorhanden sind, löschen: Entfernt Feldeinstellungen, die nicht im Quellsystem vorhanden sind, aber im Zielsystem existieren, z. B. weil sie im Entwicklungssystem entfernt wurden und diese Änderung auf das Produktivsystem übertragen werden soll.
infoNach dem Import können Sie im Abschnitt Importergebnisse und der Datei
server.log
prüfen, welche Einstellungen entfernt wurden.
Prinzipien des Imports von Konfigurationsdaten
Wenn die Option zum Löschen aller vorhandenen Daten nicht ausgewählt ist, wird der Datenimport entsprechend den folgenden Prinzipien durchgeführt:
-
Daten werden nur hinzugefügt und nicht gelöscht.
-
Wenn das importierte Szenario das gleiche Feld / den gleichen Parameter enthält wie das Zielsystem, überschreibt der Wert aus dem Szenario den Wert auf dem Zielsystem.
Beispiel: Das Feld priority hat im importierten Szenario die Position 0;2. Das Zielsystem hat für dieses Feld die Position 2;2. Nach dem Import hat das Feld im Zielsystem die Position 0;2.
-
Wenn das importierte Szenario mehr Parameter enthält als das Zielsystem, werden die Parameter auf dem Zielsystem hinzugefügt.
Beispiel: Im importierten Szenario hat das Feld priority die Einstellung Sichtbarkeit mit dem Wert Nie. Im Zielsystem existiert das Feld priority, aber es hat diese Einstellung nicht. Nach dem Import hat das Feld priority auf dem Zielsystem die Einstellung Sichtbarkeit mit dem Wert Nie.
-
Wenn das importierte Szenario weniger Daten / Parameter hat als das Zielsystem, bleiben die Daten auf dem Zielsystem erhalten. Es wird nichts gelöscht.
Beispiel: Das importierte Szenario enthält keine Feldgruppe sales, aber diese ist im Zielsystem vorhanden. Nach dem Import ist die Feldgruppe auf dem Zielsystem noch vorhanden.
-
Bei Skripten und Templates wird die letzte Version entsprechend des Zeitstempels verwendet. Das kann die Version des importierten Szenarios oder des Zielsystems sein.
-
Objekte werden über interne Übertragungsschlüssel identifiziert. Wenn ein importiertes Szenario ein Objekt mit dem gleichen Namen aber einem anderen Übertragungsschlüssel enthält, sind dies zwei verschiedene Objekte und das neue Objekt wird im Zielsystem angelegt.
Beispiel: Sowohl im importierten Szenario als auch auf dem Zielsystem existiert ein Benutzer admin. Wenn die Übertragungsschlüssel unterschiedlich sind, gibt es nach dem Import auf dem Zielsystem einen Benutzer admin und einen Benutzer admin (1). Wenn so eine Situation auftritt und Sie diese für zukünftige Importe vermeiden möchten, müssen Sie den ursprünglichen Benutzer admin auf dem Zielsystem löschen und den importierten Benutzer admin (1) in admin umbenennen. Das Problem tritt dann im nächsten Import nicht mehr auf.
-
System-Properties, deren Modulname mit custom- beginnt, werden beim Import im Zielsystem angelegt, wenn sie noch nicht vorhanden waren. Wenn eine solche Property bereits auf dem Zielsystem vorhanden ist, wird ihr Wert mit dem Wert aus dem importierten Szenario aktualisiert. Andere System-Properties werden durch Imports nie verändert, siehe Importieren und Exportieren von System-Properties.
Das ConSol CM-Datenverzeichnis (Exportoption Skindateien und Webressourcen) wird nur auf dem Node aktualisiert, auf dem Sie den Import durchführen. Die Ordner design
und resources
des Datenverzeichnisses werden nicht zwischen den verschiedenen Nodes synchronisiert.
Prinzipien des Imports von Laufzeitdaten
Die Funktion zum Import von Laufzeitdaten ist lediglich für die Verwendung auf Test- und Entwicklungssystemen vorgesehen. Große Mengen an Laufzeitdaten, z. B. aus Produktivsystemen, müssen mit ETL-Tools exportiert und importiert werden.
Wenn die Option zum Löschen aller vorhandenen Daten nicht ausgewählt ist, wird der Datenimport entsprechend den folgenden Prinzipien durchgeführt:
- Wenn ein durch den Übertragungsschlüssel identifiziertes Objekt im Zielsystem bereits existiert, wird das Objekt durch den Import nicht modifiziert. Es werden keine Felder hinzugefügt oder gelöscht und vorhandene Felder werden nicht geändert. Auf diese Weise sind vorhandene Objekte (Vorgänge, Kontakte, Ressourcen) vor versehentlicher Änderung durch Testdaten geschützt.
Datenbanktransaktionen
Der Import von Konfigurationsdaten aus einem Szenario wird auf mehrere Datenbanktransaktionen verteilt. Damit wird die Speichernutzung auf dem Datenbankserver begrenzt. Bei schwerwiegenden Fehlern während des Imports kann dies allerdings zu einem inkonsistenten Systemzustand führen.
Mit der System-Property cmas-core-server
, config.import.global.transaction.enabled
kann das System so konfiguriert werden, dass alle Konfigurationselemente eines Szenarios in einer einzigen großen Datenbanktransaktion gekapselt werden. Wenn diese Option aktiviert ist, kann ein schwerwiegender Fehler beim Import das System nicht in einem inkonsistenten Zustand zurücklassen. Stattdessen wird die gesamte gekapselte Transaktion zurückgerollt, sodass das System aus Konfigurationssicht wieder auf den Zustand vor dem Import zurückgesetzt wird. Die Transaktionskapselung gilt nicht für Lokalisierungen oder Laufzeitdaten, die unabhängig von dieser Einstellung behandelt werden.
Die Aktivierung der Transaktionskapselung kann dazu führen, dass die Importverarbeitung länger dauert und mehr Speicherplatz auf dem Datenbankserver benötigt wird.
Aufgaben
Importieren eines Szenarios
Gehen Sie folgendermaßen vor, um ein Szenario zu importieren:
- Klicken Sie auf der Seite Import auf den Button Datei auswählen, und wählen Sie die Szenariodatei aus.
- Falls erforderlich, wählen Sie die gewünschten Einstellungen im Bereich Erweiterte Importeinstellungen, siehe Verfügbare Einstellungen für Importe.
- Klicken Sie auf den Button Importieren. Es wird ein Modalfenster geöffnet, in dem Sie den Importfortschritt und die zugehörigen Log-Meldungen sehen. Sobald der Import abgeschlossen ist, sehen Sie die Ergebnisse im Bereich Ergebnisse des Imports.
Wenn der Import eine Vorgangsübertragung nach sich zieht, können Sie den Status dieser auf der Seite Workflows überprüfen.
Übertragen von Vorgängen
Wenn bei der Workflow-Installation ein Fehler auftritt, können Sie die Vorgänge, die nicht in den neuen Workflow übertragen werden konnten, über die Funktion zur Vorgangsübertagung auf der Seite Import übertragen.
- Klicken Sie auf den Button Vorgänge übertragen. Es wird ein Modalfenster mit den Übertragungseinstellungen geöffnet.
- Wählen Sie die Queues, für die die Vorgänge übertragen werden sollen.
- Wählen Sie den Übertragungsmodus. Es gibt zwei Optionen:
- Position im Prozess behalten: Die Vorgänge versuchen, ihre aktuelle Position im Prozess beizubehalten:
- Wenn sich die Aktivität und der Bereich nicht geändert haben, verbleibt der Vorgang an seiner Position.
- Wenn die Aktivität nicht mehr vorhanden ist, kehrt der Vorgang an die letzte konsistente Position im Prozess zurück.
- Prozess neu starten: Alle Vorgänge kehren an den Startknoten des Workflows zurück, d. h. sie beginnen den Prozess von vorne.
- Position im Prozess behalten: Die Vorgänge versuchen, ihre aktuelle Position im Prozess beizubehalten:
- Klicken Sie auf Vorgänge übertragen. Die Ergebnisse der Übertragung werden nach Abschluss in einem Modalfenster angezeigt.