Seite 1 von 1

Umstellung zu SQL-Server 2008

Verfasst: 5. Mai 2014, 17:14
von Herbert
Ich habe einen Kunden, der möchte alle Daten auf seinen MS 2008 SQL laufen haben.
Den Native Access für SQL wird benötigt. Ok.
Meine Frage zu euch, was muss ich aber im Programm beahen und umstellen? Wer hat Erfahrungen?

Re: Umstellung zu SQL-Server 2008

Verfasst: 7. Mai 2014, 23:13
von Lewi
In Zusammenhang mit den Funktionen
- HDescribeConnection
- HOpenConnection
- HChangeConnection
etablierst Du eine Verbindung zum SQL-Server. Es spielt keine Rolle, ob Deine Analysis auf HF/CS definiert wurde.

Hinsicht der Querry`s sollten die Einschränkungen für MS_SQL beachtet werden, wenn die Querrys mit dem WinDev-SQL-Editor erstellt wurden.

Viele Grüße
Olaf

Re: Umstellung zu SQL-Server 2008

Verfasst: 15. September 2014, 10:07
von Herbert
Kann ich hier noch ergänzend fragen?
- Muss ich die Strukturen im SQL manuell aufbauen?
- Gibt es eine einfache Möglichkeit, die Daten von den .FIC ins SQL zu kopieren?

Re: Umstellung zu SQL-Server 2008

Verfasst: 30. September 2014, 19:29
von Herbert
Also, habe die Antworten gefunden.
Habe die Daten auf SQL-Server 2012 übertragen.
Schlüssel dazu:
1) unter Analyse, Generation die Option "Generate the SQL-Script" starten.
Dadurch entsteht eine Datei, welche die Strukturen der gewünschten Tabellen als Query im Server Management Studio starten lässt.
Achtung: Die Date-Variablen werden alle als DATETIME beschrieben. Nach Bedarf anpassen.
2) Datenübertragung: habe ein eigenes kleines Programm erstellt, welches zu denselben Tabellen von lokal zu SQL einen Transfer auslöst. rrec ist eine Record-Variable. ZLHauss ist die Lokale. Folgendermassen als Idee pro Datei:

Code: Alles auswählen

	HReadFirst(ZLHAUSS)
	WHILE NOT HOut(ZLHAUSS)
		IF HReadSeekFirst(ZLHAUS,WDIDX_ZLHAUS_KUNRREV1,[ZLHAUSS.KUNR,ZLHAUSS.REV]) THEN
			rrec=ZLHAUSS
			ZLHAUS=rrec
			HModify(ZLHAUS)
			k++
		ELSE
			HCopyRecord(ZLHAUS,ZLHAUSS,hDefaultVal)
			HAdd(ZLHAUS)
			i++
		END
		HReadNext(ZLHAUSS)
		PROGBAR_Progress_bar++
		EDT_Value=PROGBAR_Progress_bar
	END
Im Programm können per Parameter die SQL-Eckdaten erfasst werden. Username, Passwort, Servername und Datenbankname.
Folgendermassen ansprechen:

Code: Alles auswählen

	IF HDescribeConnection("SQLZugr",NoSpace(Mandanten.SQLUSER),NoSpace(Mandanten.SQLPW),NoSpace(Mandanten.SQLSERVER),NoSpace(Mandanten.SQLDBNAME),hNativeAccessSQLServer,hOReadWrite) THEN
		IF HOpenConnection("SQLZugr") THEN
			HChangeConnection("ZLAD","SQLZugr")
Anschliessend kann das bestehende Programm ohne weitere Anpassungen gestartet werden!