Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Margareta Raiser Geändert vor über 11 Jahren
1
Uwe Habermann Uwe@VandU.eu Datenbanksynchronisation Venelina Jordanova Venelina@VandU.eu
2
Synchronisierung * Wofür brauche ich das? * Datenabgleich mit Filialen * Datenabgleich mit Vertretern * Datenabgleich mit Außenstellen * Wenn Online-Verbindung nicht (immer) möglich ist
3
Synchronisierung * Features * Mehrere Datenbanken in einem Ordner oder in verschiedenen Ordnern * Freie Tabellen * Berücksichtigung von Berechtigungen durch eigenen Code möglich * Unterstützung von Löschungen
4
Wie geht das? * FTP Protokoll * 1 Server – viele Clients * Austausch von Ini Dateien * Austausch von Zip Dateien mit Daten * Parallelbetrieb von Server und Client
5
Voraussetzungen beim Server * Ab Windows 2000 * IIS und FTP Server * Benutzerkonto mit FTP Zugriffsrechten * Die Zungangsdaten sind den Clients bekannt * Ordner mit FTP Zugriffsrechten * Dienst installieren * Dll registrieren
6
Installation des Servers * Benutzerkonto mit FTP Zugriffsrechten anlegen * Ordner mit FTP Zugriffsrechten anlegen * Dienst installieren * Dll registrieren * Server.ini Datei anlegen
7
Server.ini [FOLDERS] CLIENTINIFOLDER=C:\Inetpub\ftproot\FTPSync\CLIENTINI SERVERINIFOLDER=C:\Inetpub\ftproot\FTPSync\SERVERINI CLIENTDATAFOLDER=C:\Inetpub\ftproot\FTPSync\CLIENTDATA SERVERDATAFOLDER=C:\Inetpub\ftproot\FTPSync\SERVERDATA CLIENTCONFIRMATIONFOLDER=C:\Inetpub\ftproot\FTPSync\CLIENTCONFIRMATION SERVERCONFIRMATIONFOLDER=C:\Inetpub\ftproot\FTPSync\SERVERCONFIRMATION CREATEDATABASEPRGFOLDER=DATABASES [\FOLDERS] [DATABASES] [C:\FTPSYNC\DATA\vfp],[vfp] [\DATABASES] [TIMER] SYNCHRONIZATIONEXE=C:\FTPSync\FTPSyncServer.exe *!* Timeouts and delay are in seconds INITIMEOUT=60 DATATIMEOUT=60 CONFIRMATIONTIMEOUT=60 DELAY=0.5 *!* In log files it will be written if only the file exist SERVICELOGFILE=C:\TEMP\SYNCSERVICE.LOG SERVERLOGFILE=C:\TEMP\SYNCSERVER.LOG [\TIMER]
8
Voraussetzungen beim Client * Internetverbindung * FTP muss möglich sein (frei in Firewall) * Port konfigurierbar, Standard 21 * Normale VFP 9 Anwendung muss laufen * Ini Datei mit Pfadeinstellungen * Protokollierung in Log Datei möglich
9
Voraussetzungen beim Client * Die Synchronisierung von gelöschten Datensätzen funktioniert nur, wenn mit Cursoradaptern gearbeitet wird
10
Server Komponenten * Windows Dienst * Exe Datei? * DLL auf dem Server
11
Client Komponenten * Klassenbibliotheken * VfxFtpSync.vcx * VfxFtpSyncClient.vcx * VfxFtpSyncClientBase.vcx
12
Integration in VFPizza * Vorbereitetes Projekt verwenden!
13
Anforderungen an die Datenbank * Wir empfehlen GUIDs zu verwenden * Feldtyp C(36) * Von der Datenbank vergebene Primärschlüssel werden nicht unterstützt!
14
Anforderungen an die Datenbank * Es müssen folgende Felder in allen zu synchronisierenden vorhanden sein: * Edt_Date T * Edt_Usr C(36) * Ins_Date T * Ins_Usr C(36) * Del_Flag N(1) * Sync_Date T
15
Appl.vcx - cFoxAppl *.cDel_Fld = Del_Flag *.lFillEditDateForNewRecords =.T. *.lUseGUIDsKeys =.T. *.lUseUTCTime =.T.
16
VFXSDef.dbf * Ein Datensatz enthält alle für FTP erforderlichen Einstellungen
17
VFXSDef.dbf * FtpUrl = www.outsourcingitservices.net * FtpPort = 21 * FtpUpIni = FTPSync/CLIENTINI * FtpDwnIni = FTPSync/SERVERINI * FtpUpData = FTPSync/CLIENTDATA * FtpDwnData = FTPSync/SERVERDATA
18
VFXSDef.dbf * FtpUpConf = FTPSync/CLIENTCONFIRMATION * Ftpdwnconf = FTPSync/SERVERCONFIRMATION * Ftpuser = * Ftppass =
19
Start der Synchronisierung * Neues Formular basierend auf cForm * Per Drag&Drop cFtpsyncclient aus VfxFtpSyncClient auf das Formular fallenlassen * Commandbutton auf das Formular ziehen
20
Start der Synchronisierung * Im Click Ereignis schreiben: llRes = ThisForm.oFtpSyncClient.Execute() Wait Window llRes
21
Vfxfopen.dbf * Eintrag für das neue Formular hinzufügen
22
Client.ini [DATABASES] [DATA\vfp],[vfp] [\DATABASES] [TIMER] INITIMEOUT=30 DATATIMEOUT=30 CONFIRMATIONTIMEOUT=30 DELAY=0.5 CLIENTLOGFILE=SYNCCLIENT.LOG [\TIMER]
23
Jetzt kann getestet werden!
24
Und jetzt auch noch Code… * VfxFtpSyncClient.vcx * cFtpSyncClient * Kann bei Bedarf angepasst werden * Insbesondere SELECT
25
Ablauf der Synchronisierung * Ini Upload * Datenaufbereitung beim Server * Datenaufbereitung beim Client * Upload einer Zip Datei * Download einer Zip Datei * Auspacken des Archivs * Integration der Daten in die Datenbank
26
Das Mittagessen wartet… Um 14.00 Uhr geht es weiter
Ähnliche Präsentationen
© 2025 SlidePlayer.org Inc.
All rights reserved.