Erweiterte Programmierung


In den vorangegangenen Kapiteln haben Sie gelernt wie man Klassen auf der Grundlage des iPlus-Frameworks entwickelt, eigene Assemblies und Datenbankmodelle erstellt und die Oberfläche gestaltet. Diese Änderungen wurden jedoch nur auf der eigenen Entwicklungsdatenbank durchgeführt - nur wie werden diese Änderungen zum Kunden ausgerollt oder anderen Entwicklern bereitgestellt?


Assemblies ausrollen und registrieren (Schritt 2)

Im Abschnitt Komposition haben Sie erfahren wie neue Klassen für die iPlus-Runtime registriert werden. Das bedeutet in Ihrem Fall, wenn Sie Ihre neue bzw. geänderte Assembly ausliefern und bereitstellen sind die neuesten Funktionalitäten, die hartkodiert sind, verfügbar.


Datenbankmodell aktualisieren (Schritt 1)

Zuvor muss jedoch Ihr Datenbankmodell oder auch das iPlus-Datenbankmodell auf den neuesten Stand gebracht werden. Dazu werden die SQL-Skripte aus dem DBScripts-Verzeichnis ausgeführt (Login mit Strg-Taste).


Datenbankänderungen übertragen (Schritt 3)

Designs, Texte, Meldungen, Methoden (Skripte), Anwendungsbäume und Anwendungsdefinitionen, Konfigurationen, Anwendungsdaten sind in der Datenbank abgelegt. Der größte Teil Ihrer Arbeit liegt daher in der SQL-Datenbank vor und weniger hartkodiert in den Assemblies. Ohne diese Daten ist zudem Ihr Projekt überhaupt nicht lauffähig. Die Änderungen aus Ihrer Entwicklungsdatenbank müssen daher auch an andere Zielsysteme übertragen werden. Entweder anderen Entwicklern bereitgestellt oder auf ein Produktivsystem bei Ihrem Kunden transportiert werden.

Große System wie z.B. SAP sprechen von einem sogenannten "Change-Request-Management" und Transport-Requests

Einen ähnlichen Transportmechanismus bietet Ihnen auch iPlus:

 

Die Übertragung von Datenbankänderungen kann auf zwei unterschiedlichen Wegen erfolgen:

  1. Aktiv: Daten werden von einer Datenbank zu einer anderen Datenbank übertragen durch den Anwender selbst. Die Übertragung kann entweder direkt über zwei Datenbankverbindungen erfolgen oder indirekt über das Schreiben und anschließende Lesen von XML-Dateien (Shared Folder-Prinzip).
  2. Passiv: Die Daten werden als ZIP-Archive exportiert und in das Visual-Studio-Projekt der entsprechenden Assemblies eingebunden. Beim Ausrollen der Assemblies auf dem Zielsystem, werden diese ZIP-Archive beim Registriervorgang automatisch extrahiert und in die Zieldatenbank importiert.

Lesen Sie zunächst folgendes Kapitel durch wie sie aktiv die Änderungen übertragen und ZIP-Archive für die passive Variante erstellen können:

 


ZIP-Archive, die Sie mit dem Exportprogramm erstellt haben, legen Sie im Unterordner "VBControlScripts" Ihres Visual-Studio-Projektes ab. (Dieser Ordner darf nur so benannt werden!):

 

  1. Fügen Sie das ZIP-Archiv im Projektbaum hinzu.
  2. Im Eigenschaftsfenster setzen Sie die Einstellung  "In Ausgabeverzeichnis kopieren" auf "Immer kopieren".

Beim Kompiliervorgang werden dann aus allen Assemblies, die ZIP-Archive in das Zielverzeichnis "bin\Release\VBControlScripts" zusammen abgelegt (kopiert). Vergessen Sie bei der Bereitstellung auf dem Zielsystem nicht das VBControlScripts-Verzeichnis mitzukopieren!

 

Wichtiger Hinweis:

Ihre ZIP-Archive sollten nur diese Daten enthalten, die auch zu der entsprechenden Assembly und den darin enthaltenen Klassen passen. Erstellen Sie daher keine Archive, die z.B. Designs enthalten, die Klassen aus anderen Assemblies angehören!