Altova MapForce 2025 Enterprise Edition

Nachdem Sie eine Datenbankkomponente zum Mapping-Bereich hinzugefügt haben, können Sie über das Dialogfeld Komponenteneinstellungen (Abbildung unten) verschiedene Datenbankeinstellungen konfigurieren. Sie können das Dialogfeld Komponenteneinstellungen auf eine der folgenden Arten öffnen:

 

Doppelklicken Sie auf den Komponententitel.

Klicken Sie mit der rechten Maustaste auf die Komponente und wählen Sie den Befehl Eigenschaften.

Wählen Sie die Komponente im Mapping aus. Klicken Sie anschließend auf das Menü Komponente und wählen Sie im Kontextmenü den Befehl Eigenschaften.

mf_db_component_settings

Es stehen die folgenden Einstellungen zur Verfügung.

 

Datenbank

In dieser Gruppe werden die Datenbankverbindungsinformationen angezeigt. Klicken Sie auf Ändern, um eine andere Datenbank auszuwählen oder die Datenbankobjekte in der bestehenden Datenbankkomponente neu zu definieren. Verbindungen zu Tabellen mit demselben Namen werden beibehalten. Sie können die Tabellen in der Komponente auch durch Rechtsklick auf eine Datenbankkomponente und Auswahl von Datenbankobjekte hinzufügen/entfernen/bearbeiten ändern.

 

 

Login-Einstellungen

Die Login-Einstellungen werden für alle Codegenerierungsziele und den Built-in-Ausführungsprozessor verwendet.

 

 

JDBC-spezifische Einstellungen

Die JDBC-spezifischen Einstellungen sind relevant, wenn das Mapping eine JDBC-Verbindung enthält und von generiertem Java-Code oder MapForce Server ausgeführt wird.

 

Anmerkung:ADO-, ADO.NET- und ODBC-Verbindungen werden in JDBC konvertiert (und es werden die unten stehenden JDBC-Einstellungen angewendet), wenn das Mapping auf einem Linux- oder macOS-Rechner ausgeführt wird. Nähere Informationen dazu finden Sie unter Datenbankmappings in verschiedenen Ausführungsumgebungen.

 

 

ADO/OLEDB-spezifische Einstellungen

Die ADO/OLEDB-Einstellungen sind relevant, wenn das Mapping eine ADO-Verbindung enthält und vom generierten C#-Code, C++-Code oder MapForce Server (unter Windows) ausgeführt wird. Nähere Informationen dazu finden Sie unter Datenbankmappings in verschiedenen Ausführungsumgebungen. Die Einstellungen Datenquelle und Katalog werden nicht vom Built-in-Ausführungsprozessor verwendet.

 

 

Generierungseinstellungen

Die Generierungseinstellungen gelten für alle Codegenerierungsziele sowie für den Built-In-Ausführungsprozessor. Mit der Option Schemanamen aus Tabellennamen entfernen können Sie Datenbankschemanamen aus dem generierten Code entfernen und nur die Tabellennamen beibehalten. Beachten Sie, dass diese Option nur bei SQL SELECT-Anweisungen, die von MapForce generiert wurden, funktioniert. Benutzerdefinierte SQL-Anweisungen werden nicht geändert.

 

Die Option Generierungseinstellungen wird nur aus Gründen der Rückwärtskompatibilität unterstützt und nicht empfohlen. Um Datenbankobjektnamen relativ zum Standardschema zu machen, verwenden Sie die unter Objektnamen relativ zum Standardschema verwenden beschriebene Methode.

 

Timeout für die Ausführung der Anweisung

Bei Verwendung einer Datenbank als Zielkomponente kann es je nach Server-Verfügbarkeit, Datenverkehr, längerer Ausführung usw. zu Zeitüberschreitungen kommen.

 

 

Anmerkung:Bei SQLite-Datenbanken kann kein Timeout für die Ausführung von Anweisungen definiert werden.

 

Datenbanktransaktionsbehandlung

Bei der Ausführung eines Mappings, das eine Datenbankkomponente hat, können im Zusammenhang mit der Datenbank verschiedene Fehler auftreten (z.B. doppelte Indexschlüssel, NULL-Werte, die in Nicht-NULL-Spalten eingefügt wurden, usw.) Um bei Ihren Datenbankdaten im Fall eines Fehlers ein Rollback durchführen zu können, müssen Sie die Datenbanktransaktionsbehandlung aktivieren. Ein Transaktions-Rollback kann auf Ebene der Datenbankkomponente (aktuelle Einstellung), auf Ebene von Tabellenaktionen und auf der Ebene von gespeicherten Prozeduren durchgeführt werden. Nähere Informationen zu einigen möglichen Transaktionsbehandlungsszenarien finden Sie unter Transaktions-Rollback: Szenarien.

 

Einige Mappings können mehrere Datenbankkomponenten enthalten, die dieselben oder andere Datenbankverbindungen aufweisen. Das Resultat eines solchen Mappings hängt im Fall eines Fehlers im Zusammenhang mit einer Datenbank vom Ausführungsprozessor ab:

 

Wenn das Mapping mit MapForce ausgeführt wird, kann während der Ausführung des Mappings nur eine Zielkomponente ausgeführt werden. Dies ist die Komponente, für die die Schaltfläche btn_component_preview_pressed aktiv ist. Wenn in dieser Komponente ein Datenbankfehler auftritt und das Kontrollkästchen Transaktionen verwenden aktiviert ist, werden alle durch die Komponente durchgeführten Änderungen mit einem Rollback rückgängig gemacht.

Wenn das Mapping mit MapForce Server oder einem MapForce-generierten Programm ausgeführt wird, werden alle Zielkomponenten der Reihe nach ausgeführt. Wenn in diesem Fall ein Datenbankfehler auftritt, wird das Rollback für die Datenbankkomponente, in der der Fehler aufgetreten ist, durchgeführt. Je nachdem, welcher Wert in der Dropdown-Liste Bei Auftreten eines Fehlers (siehe unten) ausgewählt ist, wird das Mapping abgebrochen oder mit der nächsten Zielkomponente fortgesetzt.

 

 

Ablaufverfolgungen

Wenn bei einem Mapping Daten in eine Datenbank geschrieben werden, haben Sie die Möglichkeit, die Datenbankablaufverfolgung und Fehlerprotokollierung zu aktivieren. Die Ablaufverfolgung ist nützlich, wenn Sie aufzeichnen möchten, welche Änderungen während der Ausführung des Mappings an der Datenbank vorgenommen wurden. Die an der Datenbank vorgenommenen Änderungen werden in einem Ablaufverfolgungsbericht protokolliert. Etwaige während der Ausführung aufgetretene Fehler werden ebenfalls protokolliert. Die Ablaufverfolgung ist nur mit der Built-In-Transformationssprache kompatibel.

 

Die Ablaufverfolgung kann auf verschiedenen Ebenen aktiviert werden:

 

Auf Ebene der Datenbankkomponente: Eine Ablaufverfolgung auf dieser Ebene eignet sich für Mappings mit mehreren Zielkomponenten, bei denen die Ablaufverfolgung nur für einige davon benötigt wird. Wenn Sie die Ablaufverfolgung auf Ebene der Datenbankkomponente aktivieren, wird sie automatisch für alle Tabellen oder gespeicherten Prozeduren in dieser Komponente aktiviert. Damit der Ablauf verfolgt werden kann, müssen die entsprechenden Tabellen und gespeicherten Prozeduren mit Quell-Nodes verbunden sein.

Auf Ebene von Tabellen oder gespeicherten Prozeduren: Sie können festlegen, ob die Ablaufverfolgung für eine bestimmte Tabelle oder gespeicherte Prozedur aktiviert werden soll. Auf Tabellenebene enthält die Ablaufverfolgung Ereignisse im Zusammenhang mit Tabellenaktionen (z.B. Alles einfügen). Im Fall von gespeicherten Prozeduren werden Ereignisse im Zusammenhang mit dem Aufruf der gespeicherten Prozedur aufgezeichnet.

Auf Ebene von Datenbankfeldern: Standardmäßig ist die Ablaufverfolgung für alle Felder aktiviert, Sie können jedoch bestimmte Felder von der Ablaufverfolgung ausnehmen oder Sie können festlegen, dass bestimmte Felder nur im Fall eines Fehlers in die Ablaufverfolgung inkludiert werden.

 

Beachten Sie, dass die drei obengenannten Ebenen hierarchisch sind. Um daher die Ablaufverfolgung auf einer niedrigeren Ebene zu definieren, müssen Sie die Ablaufverfolgung zuerst auf der übergeordneten Ebene aktivieren. Wenn Sie z.B. eine Ablaufverfolgung auf Tabellenebene definieren möchten, müssen Sie zuerst die Ablaufverfolgung auf Ebene der Datenbankkomponente aktivieren. Dasselbe gilt, wenn Sie die Ebene der Ablaufverfolgung einschränken. Wenn Sie die Ablaufverfolgung z.B. auf Ebene der Datenbankkomponente auf Fehler eingeschränkt haben, können Sie keine uneingeschränkte Ablaufverfolgung auf Ebene von Tabellen oder gespeicherten Prozeduren durchführen.

 

Sie können in MapForce die folgenden Ablaufverfolgungsoptionen definieren:

 

 

Alle Dateipfade relativ zur MFD-Datei speichern

Wenn diese Option aktiviert ist, speichert MapForce die im Dialogfeld Komponenteneinstellungen angezeigten Dateipfade relativ zum Ordner, in dem sich die MapForce Design (.mfd)-Datei befindet. Verwenden Sie relative Pfade, wenn Sie vorhaben, das Mapping mit MapForce Server auf einem anderen Betriebssystem auszuführen. Siehe auch Relative und absolute Pfade.

 

Zur Laufzeit gemeinsame Datenbankverbindung verwenden

Mit Hilfe dieser Option können Sie festlegen, ob für mehrere Datenbankverbindungen, für die im selben Mapping dieselbe Datenquelle und dieselben Funktionalitäten verwendet werden, dieselbe Datenbankverbindung verwendet werden soll. Standardmäßig ist diese Option deaktiviert, da sich dadurch das Verhalten des Mappings ändern kann, vor allem, wenn dieselbe Verbindung von einer oder mehreren Quellkomponenten und einer Zielkomponente verwendet wird.

 

Durch die Verwendung einer gemeinsamen Datenbankverbindung werden einige Probleme vermieden, z.B. die Sperre von Tabellen/Zeilen, eine Transaktionsisolation und Probleme mit der Anzahl der Server-Verbindungen (siehe unten).

 

Wenn eine Zeile aus einer Tabelle ausgelesen wird und Sie versuchen, dieselbe Zeile zu aktualisieren, kann es (je nach Anbieter) vorkommen, dass ein Fehler aufgrund einer gesperrten Tabelle/Zeile ausgegeben wird. Bei einer gemeinsamen Datenbankverbindung tritt dieser Fehler nicht auf.

Wenn die gemeinsame Verwendung einer Datenbankverbindung aktiviert ist, können bereits geänderte in eine Transaktion verpackte Zeilen gelesen werden. Bei separaten Verbindungen sind nur Änderungen, die bereits in die Datenbank übernommen wurden, sichtbar.

Außerdem wird bei Verwendung einer gemeinsamen Verbindung die Anzahl der Datenbank-Logins reduziert, wodurch sich die Gesamtverarbeitungszeit bei Mappings mit vielen Datenbankkomponenten, für die dieselbe Datenquelle verwendet wird, verringert. Der Datenbank-Anmeldevorgang kann vor allem bei Cloud Server-Instanzen in einem langsamen Netzwerk oder wenn der Datenbank-Server ausgelastet ist, langsam sein.

 

© 2018-2024 Altova GmbH