Synchronisierung

Aus Marburger Medien

Wechseln zu: Navigation, Suche
(aktueller Stand)
 
Zeile 1: Zeile 1:
-
Zurück zu [[Internetseiten Programmierung]]
+
zurück zu [[IT-Systeme Online]]
 +
==Grundlagen==
-
== Technische Aspekte ==
+
Die Daten der Stiftung liegen im wesentlichen in zwei Sytemen:
 +
* SAP-Warenwirtschaft im Hause der Stiftung
 +
* Intrazone Datenbank auf dem Webserver beim Provider Grove
 +
Diese beiden Datenbestände müssen regelmäßig abgeglichen werden. Dies ist das Ziel der Synchronisation.
-
Daten werden in Bereiche unterteilt. Diese Bereiche werden immer nur in eine Richtung synchronisiert.
+
== Technische Umsetzung ==
-
Beispiele:
+
Der Abgleich zwischen den beiden Parteien Web und SAP wird über XML Dateien geregelt. Diese Dateinen werden in das Verzeichnis
-
*Newsletter: Anmeldung erfolgt auf der Intranetseite. Synchronisations Bereich: Intranet -> SAP
+
  /sap-sync
-
*Personendaten: werden auf der Intranetseite gepflegt.  Synchronisations Bereich: Intranet -> SAP
+
-
*Produktportfolio: werden in der SAP gepflegt. Synchronisations Bereich: SAP -> Intranet
+
 +
auf dem Webserver der Intrazone abgelegt.
-
=== Synchronisation von Datenbankdaten ===
+
Es werden Bereiche festgelegt (z.B. Bereich Bestellungen). Jeder Bereich besitzt einen eigenen Ordner:
-
Datenbankdaten sind Daten welche in Tabellen einer Datenbank abgelegt sind. Dazu gehören z.B. die User-Tabelle.
+
/sap-sync/order
 +
/sap-sync/product
 +
/sap-sync/user
-
Da die Datenbanktabellen des Intranetsystems bedingt durch Updates und Änderungen in den verwendeten Modulen
+
Zusätzlich existieren die Sonderordner:
-
strukturellen Änderungen unterworfen sein werden, ist für die Syncronisation eine stabile Schnittstelle erforderlich.
+
-
Diese Schnittstelle definiert eine Datenstruktur für die Übergabe.
+
-
Für die Synchronisation verbindet sich die SAP mit der Datenbank.
+
/sap-sync/commited  #als Archiv für Übertragungsdateinen
 +
/sap-sync/images  #zum übertragen von Bildern
 +
/sap-sync/log  #für Logfiles
-
Für die Synchronisation '''Bereich: Intranet -> SAP'''
+
Für jeden Bereich ist immer eine Partei Master und eine Partei Slave. Der Master schreibt XML-Dateien in den Ordner. Der Slave liest XML-Dateien aus dem Ordner und verschiebt diese abschließend in den Sonderordner commited.
-
werden die geforderten Daten aus der Schnittstelle ausgelesen. (Wie diese Daten in die SAP eingetragen werden ist nicht Bestandteil dieses Betrachtung).
+
-
Für die Synchronisation '''Bereich: SAP -> Intranet'''
+
Binärdaten wie z.B. Bilder werden vom Master in den Sonderordner /sap-sync/images abgelegt und sind vom Slave zu entfernen.
-
werden die geforderten Daten in die Schnittstelle eingetragen. (Wie diese Daten aus der SAP ausgelesen werden ist nicht Bestandteil dieses Betrachtung).
+
-
====Bereich "Intranet -> SAP"====
+
==Bereiche==
-
Für diesen Bereich werden auf der Datenbank Views mit einer festgelegten Datenstruktur angelegt. In diesen Views werden
 
-
dann die geforderten Inhalte abgebildet. Die Datenstruktur der Views '''IST''' die gefordete Schnittstelle. Bei Änderungen in
 
-
der Datenstruktur des Intranetsystems müssen damit nur die Views angepasst werden. Dies eigentliche Synchronisation bleibt
 
-
davon unberührt. Bei einer Änderung von Inhalten in der Intranetdatenbank werden diese neuen Inhalte automatisch in den Views
 
-
abgebildet.
 
-
====Bereich "SAP -> Intranet"====
+
zurück zu [[IT-Systeme Online]]
-
 
+
-
Für diesen Bereich werden auf der Datenbank Tabellen mit einer festgelegten Datenstruktur angelegt. Aus diesen Tabellen werden
+
-
die Inhalte über Views im Intranetsystem abgebildet. Die Datenstruktur der Tabellen '''IST''' die gefordete Schnittstelle. Bei Änderungen in
+
-
der Datenstruktur des Intranetsystems müssen damit nur die Views angepasst werden. Dies eigentliche Syncronisation bleibt
+
-
davon unberührt. Bei einer Änderung von Inhalten in der Schnittstelle werden diese neuen Inhalte automatisch in den Views und damit im Intranet
+
-
abgebildet.
+
-
 
+
-
=== Syncronisation von Dateien ===
+
-
 
+
-
Dies Syncronisation von Dateien wird über die gängigen Mechanismen zur Filesyncronisation geregelt. Diese sind z.B.
+
-
 
+
-
* [http://de.wikipedia.org/wiki/Unison_%28Programm%29 Unison] (bevorzugt einzusetzen)
+
-
* [http://de.wikipedia.org/wiki/Rsync Rsync] (sehr gut, aber immer nur in eine Richtung)
+
-
* mirror über FTP (Notlösung, funktioniert aber)
+
-
 
+
-
==aktueller Stand==
+
-
 
+
-
aktuell stehen auf einem Server zum testen bereit:
+
-
* jomsocial: View Multiplikatoren
+
-
* jomsocial: View Struktur
+
-
* jomsocial: View StrukturMultiplikator
+
-
 
+
-
Zugang mit fester IP oder mit dyndns
+
-
 
+
-
 
+
-
Zugangsdaten Jomsocial
+
-
 
+
-
--begin-crypt--
+
-
amNPNTdnRFpTNG9SNUYzOVlNeVNadGlEUS9hcEFONkFSMWJmNnMyRzMvR0p5
+
-
eUhsa0poVDdCZm90bVNBY01pK1I1NTdvcUl3NjhIZ1gxeDhxOTJDM1hFZVBB
+
-
OEpqOFdQaU45Q1pCdjI2QzZoSDR0NHduRytGeEJNazkySE9qTG5jcGFwbmkr
+
-
VHpLOWhBdDBEZHVIZzNudkFRTWtoRWFoQm5LQ3g4UnBrKytnU2Irc0xhdkVB
+
-
ZVBLNVc5YTEyeG9ieHVYeg==
+
-
--end-crypt--
+
-
 
+
-
==Inhalte ==
+
-
 
+
-
=== Müssen über die MySQL mit der SAP Synchronisiert werden ===
+
-
 
+
-
==== Transaktionen ====
+
-
 
+
-
– Aufträge (Bestellungen)
+
-
 
+
-
– Spenden
+
-
 
+
-
==== Stammdaten ====
+
-
 
+
-
– Strukturdaten
+
-
 
+
-
– Personen-Daten (Adresse, E-Mail Adresse etc)
+
-
 
+
-
==== Newsletter Anmeldungen ====
+
-
 
+
-
Synchronisiert werden müssen die E-Mail Adressen der Newsletteranmeldungen mit den E-Mail Adressen in den Stammdaten. Es ist nicht vorgesehen, dass eine Person (= Geschäftspartner GP) mehrere E-Mail Adressen hat. Eine neue E-Mailadresse überschreibt also die gespeicherte E-mail-Adresse.
+
-
 
+
-
Zur Aufgabe Newsletter siehe Beitrag [[Newsletter]]
+
-
 
+
-
=== Müssen nicht synchronisiert werden ===
+
-
 
+
-
Die folgenden Daten müssen nicht in der SAP verwaltet und damit auch nicht über die MySQL synchronisiert werden. Es reicht, wenn sie im Joomla vorgehalten werden und über das Admin von Joomla administriert werden.
+
-
 
+
-
– News
+
-
 
+
-
– Informationen
+
-
 
+
-
– Kommunikation zwischen Teilnehmern auf der Intrazone
+
-
 
+
-
– Aufgaben (bei uns auch Aktionen genannt) (Beispiel: Eigene Aufgabe / Aufgabe an einen anderen)
+
-
 
+
-
=== Zu klären ===
+
-
 
+
-
*Veranstaltungs-Termine
+
-
*Veranstaltungs-Anmeldungen
+
-
 
+
-
Die Stiftung hat eine Reihe von Veranstaltungen, bei denen sich Personen anmelden müssen. Von daher reicht hier ein reiner Veranstaltungskalender nicht aus. Ein reiner Veranstaltungskalender könnte auf der Joomla Ebene isoliert bleiben. So bald es in den Bereich Anmeldung / Ticketing kommt, müssen wir mit den Stammdaten eine Beziehung herstellen und am besten auch die Chronologie erfassen (wer war auf welcher Veranstaltung). Das ist aber eine Aufgabenstellung für später.
+
-
 
+
-
  Anmerkung ([[Benutzer:heesemann | ahn]]): Jomsocial bietet die Möglichkeit Events anzulegen und dazu einzuladen. Der Event kann auch auf eine Anzahl von Teilnehmenden befrenzt werden (Tickets)
+
-
 
+
-
=== Müssen mit dem File-System des SMM Servers synchronisiert werden ===
+
-
 
+
-
– Dokumente
+
-
 
+
-
Dokumente sind nicht in der SAP-Datenbank, müssen aber mit dem jeweiligen Datei-Ordner in dem SMM-Server synchronisiert werden.
+
-
 
+
-
 
+
-
 
+
-
 
+
-
Zurück zu [[Internetseiten Programmierung]]
+
[[Kategorie:Programmierung]]
[[Kategorie:Programmierung]]
 +
[[Kategorie:IT]]

Aktuelle Version vom 11:29, 29. Apr. 2012

Persönliche Werkzeuge