Datenbanken

In den Anfangsjahren des "IBM-kompatiblen" PCs hieß die Tabellenkalkulation Multiplan und die Datenbank DBase.
Damals lernte ich schon, dass eine Datenbank gestützte Abteilungsinventur wesentlich einfacher, schneller und fehlerfreier abläuft als die bis dahin übliche Zettelwirtschaft. Das Interesse war geweckt, die Entwicklung schritt über Works zu Office voran und immer gab es eine Menge Aufgaben, die damit gelöst werden wollten.
Später erweiterte die Progammiersprache VBA als Makrosprache die Palette der Möglichkeiten zu einem oben offenen System. Die Verbindung der verschiedenen Office-Programme via VBA kombiniert Datenbankinhalte mit Massen-Formelrechnungen und automatisierter Textverarbeitung um die Ergebnisse professionell zu präsentieren.
In meiner Zeit in der Logistik- Softwareentwicklung konzipierte ich eine Customizing-Bedienoberfläche (natürlich in VB) die die Parameter des Systems intelligent einstellte. Dabei war es z.B. dank ODBC egal ob die unterlegte Datenbank Informix, Oracle, SQL-Server oder Access war.


MS - Access

Die Datenbank MS-Access ist nicht nur ein durchaus brauchbares Datenhaltungs-System, sondern auch eine programmierbare Oberfläche für andere Datenbanken (SQL-Server, Oracle etc.) Programmierbar nicht nur auf Tabellen- und Abfrageebene, sondern auch für intelligente Formulare, selbstheilende Schnittstellen zuu anderen Systemen (z.B. SAP) und Datenbanken. Web-Forms und Integration in Sharepoint runden die Access-Welt modern ab. Sogar im Privatleben hat bei mir MS-Access Einzug gehalten. Sei es zur Gefriertruhen-Logistik mit Einkaufszettel auf der Smartphone APP oder das intelligent auf meine Interessen gefilterte Fernsehprogramm: MS-Access und VBA sind aus meinem Leben nicht mehr wegzudenken.


VBA Visual Basic for Applications

Mit einem Schmunzeln muss man die VBA Geschichte verfolgen.
BASIC war schon auf dem ersten IBM-PC vorhanden. Man sprang zu Zeilennummern und wild durch die alphanumeriche Landschaft.
Mit Windows V3 wurde Visual Basic eingeführt. Man definiert die Oberfläche, jedes Element hat Eigenschaften, Funktionen und Ereignisse.
Damit lassen sich vollwertige Programme erstellen. Meine erste Anwendung mit VB1.0 konnte z.B. ein Logo von einer Visitenkate per Hndscanner einlesen und daraus vollautomatisch ein skalierbares Programm für einen Fräs-Automaten generieren um das kleine Logo auf eine große Werbetafel einzufräsen.
Andere Programmiersprachen wurden erfunden und wieder verworfen Hochakademische Ansätze sollten schnelle Baukastensysteme und per definition fehlervermeidende Software erstellen. Programmierer von C++ und C# belächeln VB Programmierung nach wie vor, weil es immer noch ein "GOTO" gibt, die Sprache also nicht strukturierbar ist. Dass in VB auch hochstrukturiert und objektorientiert gearbeitet werden kann, wird geflissentlich ignoriert. Der erhoffte Geschwindigkeits und Debugging Vorteil von "modernen" Sprachen ist, wenn überhaupt messbar höchst marginal. Lassen wir sie lächeln, wir schmunzeln.

Datenanalyse

Komplexe Datenlandschaften neigen dazu, durch historisch gewachsene Rucksäcke und Workarounds immer komplizierter zu werden. Auch Kombinationen von vielen, vielen lokalen Excel-Tabellen erschwert eine konsiste, zentrale Datenhaltung ofz bis zur Unmöglichkeit.
Nun gilt es, die eigentliche Datenstruktur zu erkennen, Duplikate, redundante Daten und inzwischen unbenutzte Datenfelder zu eliminieren und sehr of, eine zentrale Bedien- oder Veröffentlichungs-Oberfläche zu schaffen. Grundsatz: Nur wirklich benötigte Daten werden minimalistisch gespeichert, die bequemen Anzeigen werden in Abfragen und Rechnungen generiert.

Restrukturierungen

Wenn die
Datenanalyse eines Systems die Sinnhaftigkeit einer Restukturierung zeigt, kann meist die Zielstruktur bereits definiert werden.
Es muss entwickelt werden, wie die alte in die neue Struktur überführt werden kann. Natürlich ohne Datenverlust und mit Rückfall-Strategie.
Die Transferprozedur sollte wiederholbar sein und möglichst ohne Handeingriffe arbeiten können. Auch die Qualitätstests sollten automatisiert die Korrektheit des Transfers nachweisen. Manchmal erinnert die Aufgabe daran, wie man aus einem wirren Topf Spaghetti einen hübschen Pullover strickt.

Migrationen
Migrationen sind meistens auch Restrukturierungen. Wird dabei auch das Datenbanksystem ausgetauscht, müssen zusätzliche Faktoren untersucht werden. Z.B. Unterschiede, wie Auto-Numbers, Triggers, Stored Procedures o.Ä.