MSSQL Server
Der Microsoft SQL-Server muss ab lizenzierten Microsoft Media gemäss Anleitung installiert werden.
Voraussetzungen
Der zu verwendende SQL-Server muss dabei folgenden Voraussetzungen erfüllen:
-
SQL-Server Version ab 2008R2
-
Kompabilitätsmodus >=10.0
SQL-Wizard
Nachdem starten von SQL-Wizard werden die Datenbanken geprüft. Um eine Datenbank generieren oder migrieren zu können, müssen folgende Voraussetzungen erfüllt sein.
Voraussetzungen
Ab dieser Sage 200 Version werden nur noch SQL-Server 2008R2 und SQL Server 2012 unterstützt. Dies heisst auch, dass eine Datenbank nicht in einem kleineren Kompabilitätsmodus gefahren werden kann als gefordert. Zusätzlich muss das Kapitel Collation erfüllt sein.
Laden der Sage 200-Datenbank und Installation der SQL-Scripts
Das Laden der Sage 200-Datenbank und die Installation der SQL-Scripts sollte nur durch Datenbank-Administratoren ausgeführt werden!
Das Laden der Sage 200-Datenbank sowie die Installation der SQL-Scripts kann interaktiv oder automatisch ausgeführt werden.
Die interaktive Installation wird im direkten Dialog mit dem Benutzer ausgeführt.
Die automatische Installation eignet sich für SMS (System Management Server) oder Batch-Installation.
Interaktive Installation
Wichtig:
Eine den Anforderungen entsprechende Datenbank für Sage 200 muss vor der dem Laden resp. Installation existieren. Sie muss, wenn nicht bereits vorhanden, mit den entsprechenden DBMS-Tools erstellt werden (z.B. SQL Server Management Studio). Die empfohlene Grösse ist z.Zt. mindestens 200MB. Die Datenbankoption Wiederherstellungsmodell muss unbedingt auf Vollständigkeit eingestellt sein!
Stellen Sie sicher, dass der betreffende SQL-Server gestartet ist und die Services laufen.
Starten Sie das Programm SQL-Wizard aus der Programmgruppe Sage 200\Servicetools. Die Begrüssungsmaske wird angezeigt.
Bestätigen mit Next
Selektieren Sie in der Loginmaske die gewünschte Datenbank-Verbindung, und geben Sie den SQL-Server Administrator Namen und das zugehörige Passwort ein.
Bestätigen mit Next
Sind die Services nicht gestartet, wird folgende Meldung ausgegeben:
Mit Refresh werden die Datenbank-Verbindungen aktualisiert.
Um eine neue Verbindung zu definieren, muss der Eintrag New database connection ausgewählt werden.
Folgende Funktionalitäten werden angeboten:
-
New, erstellt eine neue Verbindung.
-
Delete, löscht eine bestehende Verbindung.
-
Save, speichert die Verbindung.
-
Test, prüft ob die Verbindung erfolgreich hergestellt werden kann.
Wählen Sie in der Datenbank Auswahlmaske die entsprechende Datenbank, auf welcher die Installation resp. Upgrade ausgeführt werden soll.
Grundsätzlich werden maximal drei Varianten zur Installation angeboten:
-
New Database (db will be created if needed), d.h. eine leere Datenbank wird geladen. Bei Bestätigung durch Next folgt die Script-Auswahlmaske.
-
Sage200 (up to date), d.h. eine bestehende Datenbank ist auf dem aktuellen Stand (gleiche Version) und muss nicht migriert werden. Bei Bestätigung durch Next folgt die Script-Auswahlmaske.
-
Sage200 (upgrade needed), d.h. eine bestehende Datenbank ist nicht auf dem aktuellsten Stand und muss migriert werden. Bei Bestätigung durch Next wird die Migration automatisch ohne Script-Auswahlmaske gestartet.
Die Beschreibung aller Datebank-Status können im Kapitel Datenbank-Status nachgelesen werden.
Die Scripts werden für die Installation vorbereitet.
Wählen Sie die zu ladenden Scripts in der Script Auswahlmaske.
Bestätigen mit Next.
Wurde unter Punkt 5. Variante a) gewählt (New Database), erscheint die Datenbank Auswahlmaske. Hier ist die Bezeichnung einer neuen (leeren) Datenbank einzugeben.
Bestätigen mit Next.
Existiert die angegebene Datenbank nicht, wird folgende Meldung ausgegeben:
Existiert die Datenbank, werden einige Tests durchgeführt. Siehe dazu das Kapitel Voraussetzungen.
Wurde zuvor die Selektion (new database) gewählt, wird überprüft, ob es sich auch um eine leere Datenbank handelt, d.h. Sage 200 darf auf dieser Datenbank nicht existieren.
Während des Datenbank Ladevorgangs wird die Uploading Script Maske mit prozentualem Ladefortschritt angezeigt. Diese Daten und weitere werden in das Logfile des SQLWizards geschrieben. (Siehe Logfile).
Der erfolgreiche Ablauf des SQL-Wizard wird durch folgende Maske angezeigt.
Bestätigen Sie mit Exit.
Tritt aus unterschiedlichsten Gründen ein Fehler auf (z.B. Unknown Database, Abbruch durch Benutzer etc.), wird der nicht erfolgreiche Ablauf des SQL-Wizard durch folgende Maske beendet.
Bestätigen mit Exit.
Automatische Installation
Die automatische Installation kann anhand der Formulierung einer entsprechenden Befehlszeile gestartet werden.
Befehlszeilen - Syntax:
Sqlwiz /<switch>
Es darf nur einer der folgend aufgeführten Switches gesetzt sein:
Switch /R
Format: /R:<filename>
SQL Wizard läuft im Aufzeichnungsmodus. Alle Masken mit allen Feldern werden angezeigt, wie in einem interaktiven Durchlauf. Gegenüber einem normalen interaktiven Durchlauf wird hier weder ein SQL-Befehl ausgeführt noch die Datenbankexistenz geprüft. Die eingegebenen Antworten werden erfasst und in die Datei <filename> gespeichert. Es wird empfohlen den kompletten Pfad inklusive Laufwerk anzugeben. Ansonsten wird die Datei in ein Systemverzeichnis geschrieben, und zwar auf dasjenige Laufwerk, auf welchem sich das TEMP-Verzeichnis befindet.
Switch /G
Format: /G:<filename>
SQL Wizard läuft im Abspielmodus (Play). Die Datei <filename> beinhaltet SQL Wizard Anweisungen für das Generieren einer bereits physisch existierenden Datenbank. Diese Datenbank ist entweder leer oder Sage 200 ist bereits installiert. Die Datei <filename> kann mit Hilfe des Switch /R in einem Extralauf des SQL Wizards erstellt werden (siehe oben).
Das Format der Datei ist mit dem Windows INI-File Format konform. Die Datei besteht aus zwei Sektionen, in welche unterschiedliche Einträge gemacht werden können. Es hängt davon ab, ob es sich um eine Sage 200 Neuinstallation oder einen Sage 200 Update handelt.
Switch /F
Format: /F:<filename>
SQL-Wizard lädt die angegebene SQL-Datei auf die Datenbank.
Switch /AutoLogin
SQL-Wizard meldet sich automatisch mit den angegebenen Daten an.
Switch /IgnoreLoggedOnUsers
Der SQL-Wizard prüft nicht, ob sich angemeldete Benutzer auf der zu migrierenden Datenbank befinden.
Switch /AutoClose
SQL-Wizard schliesst sich am Ende automatisch.
Switch /AutoGenerateDatabase
Sollte die angegebene Datenbank nicht existieren, wird sie generiert.
INI-File Format:
Sektion [Answers]
Hier sind die Server- und Datenbank- Eingaben im folgenden Format einzutragen:
<Tag>=<Wert>
wobei:
<Tag>: DBALOG, DBAPWD, SQLSERVER, DATABASE
<Wert>: Zeichenkette
Sektion [FieldToInstall]
Hier sind Einträge zu den auszuführenden SQL-Skripts im folgenden Format einzutragen:
<Nr>=<X>, <Titel>, <Skriptname>;
wobei
<Nr>: Reihenfolgenummer (beginnend bei 0)
<X>: Y oder N (grossgeschrieben)
<Titel>: Titel des Skripts (im SQL-Skript, Inhalt des ersten TITLE-Befehls)
<Skriptname>: Dateiname des SQL-Skripts
Bemerkung:
Beim Laden einer neuen Sage 200-Datenbank entsprechen die Einträge der [FieldToInstall] Sektion den Einträgen, welche im SQL-Dialogfenster bei der Aufzeichnung aktiviert resp. deaktiviert worden sind.
Beim Update einer Sage 200-Datenbank beinhalten die Einträge der [FieldToInstall] Sektion Aufrufe der Updates-Skripts und der Generatorskripts.
Beispiele:
Generieren einer neuen Datenbank
Es wird eine neue Datenbank generiert und am Ende der SQL-Wizard offengelassen. So kann man am Ende prüfen, ob die Datenbank erfolgreich generiert werden kann.
SQL-Wizard Aufruf:
sage200.sqlwizard.exe /G:NewDatabase.ini /AutoLogin /AutoGenerateDatabase
NewDatabase.ini:
[Answers]
DATABASE=[Sage200]
DBALOG=sa
DBAPWD=sa
SQLSERVER=.\SQL2014
[FieldToInstall]
Migrieren einer bestehenden Datenbank
Es wird eine bestehende Datenbank auf die aktuellste Version migriert. Wir befinden uns in einer Testumgebung und ignorieren daher bewusst noch angemeldete Benutzer. Am Ende schliesst sich der SQL-Wizard. Für Infos über den Ablauf kann das Protokoll im Support-Verzeichnis unter %ProgramData%\ Sage\Sage200\Support\SQLWizard genutzt werden.
SQL-Wizard Aufruf:
sage200.sqlwizard.exe /G:MigrateDatabase.ini /AutoLogin /AutoClose /IgnoreLoggedOnUsers
MigrateDatabase.ini:
[Answers]
DATABASE=[Sage200]
DBALOG=sa
DBAPWD=sa
SQLSERVER=.\SQL2014
[FieldToInstall]
Migrieren einer bestehenden Datenbank innerhalb des gleichen Majors
Möchte man eine Datenbank innerhalb deren Majors migrieren, geht das auch über die im Patch enthaltene s200.sql Datei.
SQL-Wizard Aufruf:
sage200.sqlwizard.exe /G:MigrateDatabase.ini /AutoLogin /AutoClose /IgnoreLoggedOnUsers /f:s200.sql
MigrateDatabase.ini:
[Answers]
DATABASE=[Sage200]
DBALOG=sa
DBAPWD=sa
SQLSERVER=.\SQL2014
[FieldToInstall]
Datenbank-Status
Im Folgenden werden alle möglichen Datenbank-Status angegeben:
-
New Database (db will be created if needed), d.h. eine leere Datenbank wird geladen. Bei Bestätigung durch Next folgt die Script-Auswahlmaske.
-
(up to date), d.h. eine bestehende Datenbank ist auf dem aktuellen Stand (gleiche Version) und muss nicht migriert werden. Bei Bestätigung durch Next folgt die Script-Auswahlmaske.
-
(upgrade needed), d.h. eine bestehende Datenbank ist nicht auf dem aktuellsten Stand und muss migriert werden. Bei Bestätigung durch Next wird die Migration automatisch ohne Script-Auswahlmaske gestartet.
-
(sql-server not supported)
SQL Wizard unterstützt nur noch SQL-Server ab Version 2005 mit SP2. Eine Neuinstallation oder Update ist nicht möglich. -
(compatibility mode not supported)
Da SQL-Wizard nur noch SQL-Server ab Version 2005 mit SP 2 unterstützt, darf sich auch die Datenbank nicht in einem Kompabilitätsmodus kleiner 90 befinden. Ist dies trotzdem der Fall, wird beim Betätigen des Next Buttons eine Warnung ausgegeben. Wird der Button OK betätigt wird der Kompabilitätsmodus der Datenbank auf die des SQL-Servers gesetzt.
Bevor der Button OK betätigt wird, muss überprüft werden, ob andere Programme, welche auch auf diese Datenbank zugreifen den Original Kompabilitätsmodus des SQL-Servers unterstützen. -
(database restore needed)
Eine vorherige Migration wurde abgebrochen. Um dies zu beheben, muss die Datenbank zurückgelesen werden. -
(contains newer scripts!)
Eine alte Version des SQL-Wizards wurde gestartet, so kann es vorkommen, dass der Status der Datenbank neuer ist. -
(upgrade impossible)
Ein unvorhergesehener Fehler ist aufgetreten. -
(not an official database)
Es wird mit einer nicht ofiziellen Datenbank gearbeitet.
Logfile
Der SQL Wizard schreibt Informationen in die Datei SQLWizard.Log. Diese Datei ist im ProgramData-Verzeichnis zu finden z.B.:
Beispiel:
SQL Wizard V-2013 Date: 2013.06.18 Time: 10.08.42 Connection-ID: Sage200_SQL2008R2 Servername: CHWKSP-L0130\SQL2008R2 Admin-Name: sa Database: New database (database will be created if needed) Selected Script: Basis: Tabellengenerator Selected Script: Basis: Triggergenerator ... ... ... ... Running Script: cm_liz.sql 10.19.50 drop table verwaltung: done... 10.19.50 create table verwaltung: done... 10.19.50 tp_addverwalt: generated 10.19.50 tp_addverwalt: executed for demolicense 00:01 Minutes ... ... ... ...