Leistungen

Tätigkeit – Referenzen

Erstellen und Begleiten von Datenbankanwendungen, meist mit eingehender Analyse betrieblicher Anforderungen. Z.B.:

  • Erstellen eines Verwaltungssystems für Buchtitel und Ausgaben für einen Verlag
  • Erstellen von Ablagesystemen für Dateien, zugeordnet zu Adressdatensätzen (Kunden), für papierloses Arbeiten (papierloses Büro), sowie für eine effektive Datensicherung
  • Erstellen von Warenverwaltungssystemen mit Angebot und Rechnungen, incl. der Verwaltung verschiedener Absender/Rechnungssteller
  • Textverarbeitung und Textsuche, u.a. mit Hilfe von Regex-Funktionalität, sowie programmgesteuerte Textdarstellung (Formatierungen wie farbiger Text, Fett/Normal, Absätze etc.) , sowie Konzepte für Textumformung
  • Entwicklung von Brief/Mail-Systemen innerhalb von Access, incl. der Verwaltung verschiedener Briefpapiere, zur Erzielung eines vereinfachten Systems für die tägliche Post und Serienbriefe – mit Bezug zur vorhandenen Adressdatenbank
  • Entwicklung automatischer Emailsysteme mit Anbindung an MS-Outlook oder andere Mailprogramme
  • Entwicklung einer Bemusterungs-DB-Anwendung für einen renommierten Bauträger mit Standorten in vielen deutschen Städten
  • Entwicklung von SEO/SEM-Tools zur übersichtlichen Ausführung wichtiger SEO-Arbeiten, unter anderem Eintraglisten für Publikationsplattformen, Permutationen von Keywordketten. Entwicklung eines Moduls für das Verarbeiten von Spintext-Syntax
  • Anbindung / Übertragung großer Datenmengen auf Sql-Server.
  • Erstellen eines effektiven Immobilienverwaltungs- und Angebotssystems für Immobilienmakler, incl. automatisierter Versendung von Exposes, Emails; Wiedervorlage für Akquisitionsanrufe.
  • Pflege der Personendatenbank mit Sendungs/Mustertextfunktion für eine Berliner Universität
  • Erstellen eines Seiten/Artikelverwaltungssystems für WordPress, zur Verwaltung und automatischer Steuerung und Weiterverwertung von Webinhalten.
  • Hochlade- und Registrierungssystem für Webbilder. Access-gesteuertes Zuschneiden und Mit-Text-Versehen (Wasserzeichen) von Digitalbildern mit Hilfe eines aus Access gesteuerten Java-Programmteiles.
  • Erstellen von Mitarbeiter-Datenbanken mit eingegrenzter Mitarbeiter-Funktionalität (User-Rechteverwaltung), Eingrenzung von Datenzugriffsrechten, formularbezogene Dropdownmenüs)
  • Anbindung an vorhandene Web-Applikationen durch programmierte Schnittstellen (APIs), z.B. nach dem SOAP oder REST Standard
  • Entwicklung eines dynamischen Formularsystems für statistische Datenerhebung mittels Fragebogen, inclusive der Berechnung und Darstellung des Ergebnisses

Datenbankentwurf, Anwendungsentwicklung .. wie ist das Szenario? 

Ein Betrieb hat typischerweise eine Datenbank, seit Urzeiten selbst aufgesetzt und weiterentwickelt, oft mit Excel. Man pflegt sie, programmiert sie, und steckt auf diese Art viel Zeit und Geld hinein. Doch wie macht man das Beste aus den vorhandenen Daten? Viele Ressourcen werden vertan, wenn die Arbeit nicht richtig „programmiert“ ist – im wahrsten Sinn des Wortes.

Eine Datenbank speichert nicht einfach nur die anfallenden Daten, sondern beim Design einer Datenbank kommt es oft zu Lösungen, oder zu neuen Möglichkeiten, die die Arbeit beschleunigen und innovativ strukturieren. Überflüssige Handlungsweisen werden erkannt, das Wesentliche rückt in den Fokus. (Sich auf das Wesentliche zu konzentrieren ist ja überhaupt die beste und natürlichste Strategie für jeden Betrieb, der wachsen will).

Was ist die Fragestellung für Unternehmen?

  • Wie bekomme wir die Struktur unseres Unternehmens in eine Datenbank, die durch ihre Programmierung hilft, die wiederkehrenden Arbeiten effektiv zu lösen?
  • Benötigt wird z.B. eine Datenbank, die beispielsweise Angebote und Rechnungen erstellt und für die Kunden ein visuell attraktives und von den Daten her sachlich richtiges, Angebot fertigt …, deren Daten dann aber auch verwendet werden können für wiederholte Kundenkontakte, zum Abrechnen der Leistungen freier Mitarbeiter, dem Führen der Inventarlisten, oder ….
  • Benötigt wird eine Datenbank, die auf den Geschäftszweck minutiös zugeschnitten ist, die genau die gebrauchten Daten erhebt, und die diese Daten in effektivster Weise verarbeitet und darstellt …
  • Wie kann man durch eine Datenbank auf Dauer Zeit und damit Geld sparen, die Fehlerhäufigkeit reduzieren?
  • Wie kann man qualitativ hochwertige, vor allem gleichbleibende, jederzeit reproduzierbare Unterlagen erstellen?
  • Wie befruchtet eine Datenbank die Effektivität im Unternehmen, indem sie die wichtigsten Unternehmenskennzahlen vor Augen führt, die effektivsten Arbeitsschritte aufzeigt, die redundanten Zeitfresser eliminiert?
  • wie liest man große Datenmengen ein aus anderen Datenquellen ein, die aus historischen Gründen nun einmal zur Verfügung stehen?
  • Wie bekommt man die Daten ins Internet, oder von der Cloud auf den heimischen PC – wie verbindet man die Server-Datenbank mit der lokalen Datenbank?
  • Wie wertet man Texte aus?
  • Wie erhebt man statistische Daten?
  • Was ist der Vorteil einer Datenbank gegenüber Excel? 

Datenbanklösungen in Berlin

Beratung auch vor Ort im Großraum Berlin

Preise

günstige Preise, gemäß Vereinbarung auch Festpreise.

Kostenlose telefonische Beratung nach Vereinbarung. Gern auch Rückruf, wenn Sie uns eine Mail senden.

 

VBA Access Programmierung, Sql, Datentransfer, Anpassung

Datenbanken – Analyse,  Auswertungen, Berechnungen, Änderungen, Ergänzungen

Upload großer Datenmengen

Formate … xml, json, csv (Comma-separated)

WordPressanpassungen

Anpassungen oder Setup von SQL-Datenbanken, auch im Zusammenhang mit WordPress

Java-Script-Inserts in WordPress

Beratung und Setup von Twitter Bots

praktische Problemlösungen

Serienbriefe

„Reports“ (Berichte), z.b. als Rechnung oder als Lieferschein oder als wissenschaftliche/geschäftliche Dokumentation

Social Media

angepasste Software für Ihren Bedarf

  •  

 

Warum MS Access?

Was ist Access? MS Access verbindet ein Relationales Datenbankbetriebssystem (Datajet-Engine) mit einer grafischen Benutzeroberfläche für Datenmanipulation. Außerdem ist eine hochspezialisierte Integrierte Software-Entwicklungsumgebung (IDE) Teil von Access. Die Fülle der Möglichkeiten reicht bei Access von sehr leicht gestaltbaren Dateneingabeformularen, grafisch oder mit SQL darstellbaren Abfragen, hin zu mächtigen Reports (Berichten), die die verarbeiteten Daten zur Ausgabe von Druck, pdf etc. übersichtlich darstellen. Schließlich und endlich aber wird jede noch verbliebene Lücke durch VBA Access (Visual Basic for Applications, in diesem Fall spezialisiert auf Access) gefüllt.

Access macht erst Spaß, wenn man es sachgerecht programmieren kann; das ist bei Access noch viel mehr so, als bei anderen Office-Produkten, wie Excel oder Word, welche ja auch über ein spezifisches VBA verfügen. Daher ist die Access-spezifische IDE sehr wichtig, wenn es darum geht, die Vorteile von Access darzulegen. Erst durch sie hat man mit Access ein wirklich umfassendes Tool für Dateneingabe und -Manipulation. Access kann zudem an verschiedenste RDBM-Systeme angeschlossen werden, also an Datenbanken von MySQL, Oracle ..

Andere Datenbankbetriebssysteme haben keine solche spezifische IDE. Sie können natürlich mit verschiedensten Programmiersprachen programmiert werden, das ist jedoch ist deutlich aufwendiger, als die Verwendung von VBA bei Access. Nebenbei gesagt: Theoretisch könnte natürlich auch die Datenbank-Engine von Access mit verschiedensten Programmiertools programmiert werden – im Fall von Access erschiene das aber tatsächlich absurd, es sei denn man habe bereits eine andere Anwendung, die auf eine Access-Datenbank zugreifen soll. Das für Access optimierte Tool „VBA Access“ ist tatsächlich das Mittel der Wahl.

Weil Access sofort, sozusagen „out-of-the-Box“, eine vollständiges und mächtiges Datenbanktool zur Verfügung stellt, haben viele kleine und mittlere Betriebe Access verwendet, um ihre unmittelbaren Bedarfe damit abzubilden, in etwa so, wie man auch Excel-Tabellen verwenden würde. Stellenweise gelingen recht brauchbare Zwischenlösungen. Access erfordert einige Spezialkenntnis, eben WEIL es ein eigentlich mächtiges Tool ist – das Selbsterstellen einer kleinen Datenbank jedoch lässt es für den Nichtfachmann manchmal so erscheinen, als sei Access ein kleines simples Tool für Laien.

Doch das ist nicht so. Mit professionellen Programmieransätzen für Datenbanken kann Access unglaublich viel, es ist gleichzeitig sehr günstig und universell; es ermöglicht auf den Punkt zugeschnittene individuelle Lösungen, gerade für Mittelständler. Zusammen mit MS Office Professional bietet es viele Lösungen für Datenvernetzung.

Sharepoint und Access

Neben den diversen Möglichkeiten, Serverdatenbanken zu betreiben (MySQL, MS SQL, Oracle etc.) und dafür Code zu schreiben, Formulare zu entwickeln etc., hat Microsoft seit einigen Jahren „Sharepoint“ als umfassendes Konzept hervorgebracht. Sharepoint ist eine Entwicklungsumgebung für Web-Zusammenarbeit (vor allem in Betrieben), die nun schon auf einige Schritte der Weiterentwicklung und Verbesserung zurückblickt, und die in Konzept und Umsetzung als überaus innovativ und leistungsstark gilt.

Das Konzept ist, dass die Aktivitäten eines Betriebes, also dessen Personen und Gruppen, von vorn herein webbasiert betrieben und abgebildet werden. Dokumente werden auf Cloudservern abgelegt, Ablageorte werden Gruppen zugeordnet, so dass neue Dokumente oder neue Versionen von Dokumenten sofort einer ganzen Gruppe zur Verfügung stehen. So wird ein betrieblicher Workflow ermöglicht, der bereits im ersten Ausgangspunkt webbasiert ist. Da nun alle Dokumente und Tabellen webbasiert sind, und somit über Internetbrowser wie Edge oder Chrome oder Firefox erreichbar sind, ist es nur ein kleiner Schritt, Dokumente nicht nur einer Arbeitsgruppe eines Betriebes verfügbar zu machen, sondern sie öffentlich „zu stellen“. Denn der Dreh-und Angelpunkt aller betrieblichen Aktivitäten ist ja, zumindest auch, die Interaktion mit dem Kunden. In Sharepoint können Tabellen, und überhaupt Dokumente, sehr leicht auf die öffentliche Internetseite des Betriebes gestellt werden („im Web“ sind sie ja bereits), beispielsweise zur minutenaktuellen Information für alle Besucher der Website. Tabellen können auch als Eingabetabellen für Kunden bearbeitbar sein, und somit sofort strukturierte Daten zur Weiterverarbeitung zur Verfügung stellen.

Dokumente verschiedenster Anwendungen können zudem in Sharepoint durch ein makroartiges Werkzeug namens „Flow“ miteinander verbunden werden, und eventgesteuert Kaskaden anderer Programmabläufe auslösen. Z.B. kann ein „Event“ wie ein händischer Eintrag in eine Tabelle, durch „Flow“ weitere, nunmehr automatische, Events auslösen – beispielsweise das Senden einer vorstrukturierten Email, vielleicht eines Angebotes, etc..

Zum umfassend webbasierten Konzept gehört auch, dass die von Microsoft bestens bekannten Anwendungen wie Word, Excel, Powerpoint etc. nun Webanwendungen sind. D.h., man kann diese Anwendungen über den Browser betreiben. Neben vielen Vorteilen bedeutet dies zum Beispiel auch, dass mächtige Tools wie Word etc. nicht auf einem kleinen Webbook installiert werden müssen (was oft genug aus Hardwaregründen unmöglich ist), um ein Word-Dokument zu bearbeiten. Man muss auch nicht an USB-Speichersticks und Ähnliches denken, wenn man sicher sein will, die wichtigen Dokumente an jedem Ort zur Verfügung zu haben, gleich gemeinsam mit dem Tool für ihre Bearbeitung.

Die IDEs, also die Möglichkeiten diese Anwendungen mit den angepassten Versionen von Visual Basic (Visual Basic for Applications = VBA) zu programmieren, stehen online verständlicherweise nicht zur Verfügung. Warum „verständlicherweise“? Weil Microsoft auf den eigenen Servern keine beliebig gestrickte Software laufen lassen kann – dies wäre lokalen Anwendungen vorbehalten (wie eben Access). Dafür hat Microsoft proprietäre Hilfs-Tools wie „Flow“ entwickelt.

Access wurde in Sharepoint nicht als Webanwendung programmiert, sicherlich weil Microsoft als Serverdatenbank bereits MS-SQL bereithält und sich nicht selbst „kannibalisieren“ möchte. Außerdem ist die eigentliche Stärke der Access-Datenbank, eine Kombination aus Programmierumgebung (IDE) und „Out-Of-The-Box“ Datenbankanwendung zu sein – ohne die Programmierbarkeit mit VBA Access wäre das Programm mehr oder weniger das, was eine Sharepoint-Liste ja bereits ist, oder auch das, was ein Excel-Spreadsheet bereits ist. Und darüber, dass Microsoft auf den eigenen Servern keine Fremdsoftware laufen lassen kann/möchte haben wir bereits gesprochen.

Daher: Ohne die eigentliche Access-Stärke der Programmierbarkeit und gegen die bereits in Sharepoint vorhandenen Tabellen machte es wohl wenig Sinn, ein Online-Access bereitzustellen … es wäre ein zweites Excel. Zumal es wie gesagt die ausdrückliche Strategie von Microsoft ist, USER-Programm-Erweiterungen nicht auf den eigenen Servern laufen zu lassen, sondern Client-basiert, oder auf den eigenen Serverrechnern von Kunden.

Und, es gibt ja großartige Möglichkeiten, Access Frontends mit allen möglichen Webserverdatenbanken zu verbinden, aber besonders gute und stabile Möglichkeiten der Verbindung gibt es mit den „Sharepoint-Listen“ genannten Tabellen! Übrigens ist Sharepoint als Entwicklungsumgebung, wie der Name schon sagt, für das Teilen und Bearbeiten webbasierter Daten gedacht und ausgelegt, und so können innerhalb von Sharepoint auch Microsoft-fremde Datenbanken wie MySQL oder Oracle als Datenquellen in den Workflow eingebunden werden.

Die Möglichkeiten von Access-Anwendungen im Zusammenhang mit Sharepoint sind jedenfalls riesig, denn die Access Tabellen können wie gesagt mit Sharepoint-Tabellen verknüpft werden. Auf diese Art und Weise werden Anwendereingaben in eine Sharepoint-Liste einer Firmenwebseite zu Tabelleneinträgen einer Access-Anwendung lokal. Kommen neue Einträge hinzu (tragen sich neue Kunden auf der Website ein), können, beispielsweise durch zeitgesteuerte Skripts, lokale Access-Programmteile ausgelöst werden … wie zum Bericht erstellen, automatische Email senden, etc. etc.. Die Möglichkeiten der Access – Datenbank gehen dabei natürlich sofort über die Möglichkeiten des makroartigen „Flow“ hinaus. Auf diese Weise verliert das lokale Büro nie den Kontakt zur Interaktion mit den Internetvorgängen, es stehen aber alle Möglichkeiten des realen Büros zur Verfügung, und nicht nur die des virtuellen.

Erwähnt werden sollte, dass mit einiger Kenntnis von Sharepoint dieses durch zahlreiche Programmierbausteine erweiterbar ist, beispielsweise können, wie Windows üblich, C# – Programmteile eingebunden werden, Visual Basic, oder auch Javascript. Dies ist wie gesagt limitiert durch die eingeschränkte Serververfügbarkeit für Fremdcode … die einfachste und beste lokale Programmier-Lösung ist hier jeweils Access. Darüber hinaus gibt es noch einen „App-Markt“, der Zahlreiche Funktionserweiterungen, eben „Apps“ (fertige Teilanwendungen) bereit hält.

Sharepoint ist Teil des Office 365 Professional Paketes (um die 12 € im Monat).

Proprietäre Webanwendung, lokale Bearbeitung mit Access

Oft kommt es vor, dass Betriebe My-SQL Serverdatenbanken mieten, um damit beispielsweise ein Shop-System zu betreiben.

Solche Shopsysteme können heutzutage sehr günstig erstellt werden, beispielsweise mit kostenlosen CMS (Content Management System) wie WordPress und anderen.

Daher sind die dem System zugrunde liegenden Tabellen sozusagen „proprietär“, d.h., sie können auf dem Server direkt eingesehen werden, ihre Struktur liegt offen zutage, und alle Daten stehen vollständig, auch ggf. für Änderungen, zur Verfügung.

Wie immer benötigt der konkrete betriebliche Fall bestimmte Anpassungen, oder es sind Auswertungen nötig, die die kostenlose Software nicht beinhaltet. Oder es müssen Provisionen gezahlt werden in Abhängigkeit von den im CMS erfassten Verkäufen, oder es sollen Briefaktionen für die im CMS erfassten Kunden gemacht werden.

In diesem Fall ist es möglich, die in der Serverdatenbank vorhandenen Daten direkt als als lokale Tabelle in der Access-Anwendung zur Verfügung zu stellen, und zwar über in Access vorhandene „ODBC-Treiber“, die die „fremde“ Datenbanksprache in die lokale
Datenbanksprache übersetzen – und somit eine Schnittstelle darstellen.

Auf diese Art und Weise können lokal Tabellen bearbeitet werden, ausgewertet werden, genutzt werden.

In dieser Variante der Webanbindung ist es aber wichtig, die Struktur der Webanwendung zu kennen, sie zu beachten, und diese Struktur nicht zu verändern, denn die Logik der Tabellen zueinander sind das Fundament des Funktionierens des CMS. Eine Kenntnis / Analyse der CMS-Logik ist daher oft erforderlich, um wirksam lokal Daten in das System einzugeben, die dann online auch abrufbar sind.

Nicht-proprietäre Internetanwendung, Auswertung lokal mit Access

Ein häufig anzutreffendes Szenario ist eine Internet-Anwendung, die für einen bestimmten Zweck programmiert, und von einer Firma gemietet/gekauft wird, und lokal ausgewertet werden soll – und zwar mit Access.

Da die der Web-Anwendung zugrunde liegende Datenbank zwar durch die mietende Firma gepflegt wird, aber nicht im „Besitz“ dieser Firma ist, ist meist eine API (öffentliche Programmierschnittstelle) nötig, über die strukturierte Daten aus dieser Datenbank abgerufen werden können, bzw. auch Daten in die Datenbank eingepflegt werden können.

Im Bild ist die API-Schnittstelle als Schlüsselloch dargestellt, denn eine API verfügt nur über die vom Herausgeber eingestellten, begrenzten, Möglichkeiten der Datenmanipulation. Einsicht in die Tabellenstruktur, Ansicht aller Daten, ist nicht möglich. Eingriffe in die Tabellenstruktur, Hinzufügen oder Entfernen von Tabellen etc., sind nicht möglich.

Die Qualität einer API hängt zudem sehr von ihrer Dokumentation ab.

Die für die lokale Access-Anwendung notwendigen Daten können über Requests (Anfragen) an den Server Augenblicks-aktuell geladen werden – oft viele hundert Datensätze.

Sinnvoll ist das dadurch, dass die Arbeit mit der Internet-Anwendung ungestört weiterlaufen kann, und man die Vorteile des Systems nutzt. Daten werden einmal in das System eingegeben, nicht mehrmals und somit nicht redundant. Andererseits sind solche Kaufsysteme natürlich nicht perfekt für einen konkreten Anwendungs-Fall programmiert, und viele Besonderheiten des konkreten Betriebes wären wünschenswert umzusetzen, müssten aber hinzuprogrammiert werden. Das jedoch ist in der Regel für den Hersteller der Webanwendung nicht machbar, bzw. ist für den Anwender nicht bezahlbar.

Hier ist es geraten mit einer leicht gestaltbaren Access-Variante zu agieren. Die Verbindung der flexiblen, lokalen Access-Anwendung mit der „systemfremden“ Internetanwendung (die auf verschiedensten Software-Systemen basieren kann), wird über http-Requests hergestellt.

IOT – Internet der Dinge

Das Internet der Dinge – was ist das?

IOT, das heißt „Internet Of Things“, also Internet der Dinge. Was ist das eigentlich?

Zunehmend wird unser Alltag bestimmt von vielen kleinen technischen Geräten, die oft auf der Basis integrierter Schaltkreise entwickelt werden (also kleinen Computern ähnlich sind). Beispielsweise können Fenster-Rollläden heute elektrisch, mit einem kleinen Motor, aufgezogen oder geschlossen werden. Da das Aufziehen und das Schließen regelmäßige tägliche Vorgänge sind, werden diese Klein-Motoren zunehmend nicht mehr von Hand an- und abgeschaltet, sondern von kleinen Prozessoren gesteuert, die dann selbständig morgens vielleicht um 7.00 Uhr die Läden aufziehen, und sie abends um 20.00 Uhr wieder schließen.

Der eigentlich logische nächste Schritt ist, dass diese Prozessoren internetfähig gemacht werden, also beispielsweise in das oft ohnehin vorhandene W-Lan-Netz (WiFi) eingebunden werden. Auf diese Weise können diese Prozessoren von überall her wo Internetzugang besteht, abgefragt und gesteuert werden.

Dass man nun von Hawaii aus die Fensterläden eines Hauses in Deutschland schließen kann, sofern man vergessen hat, dies vor der Abreise in den Urlaub zu tun, ist eine Sache. Noch offensichtlicher aber ist der Vorteil, dass man alle möglichen kleinen und nützlichen Geräte eines Hauses über eine zentrale Software steuern kann. Der Nutzen entfaltet sich sozusagen bereits, wenn man im Wohnzimmer sitzt, und von dort aus die vielleicht 15 Fenster eines Hauses ganz schnell überprüfen bzw. steuern kann.

Das also nun ist das Internet der Dinge: Dinge (Geräte), die mit einfachen Mitteln an das Internet angeschlossen sind, und über das Internet überwacht / gesteuert / programmiert werden können.

Dass hierfür die Netzadressen der „Dinge des Internet“ dramatisch ausgeweitet werden müssen, weil nicht mehr nur jeder Mensch, bzw. dessen Computer, eine eigene Internetadresse (IP) haben kann, sondern jedes Ding, das versteht sich von selbst. Das ist aber eigentlich ein kleineres administratives Problem. Letztlich ist die Anzahl der „Dinge des Internet“ weiterhin sehr endlich. Und ob es nun eine 12-stellige IP gibt, oder eine vielleicht 24-stellige, das ist den Maschinen egal, ebenso wie den Menschen.

Der Nutzen des IOT jedoch entfaltet sich nicht nur für den Normalbürger in dessen Haus, sondern ist als gesellschaftlicher Produktivfaktor überhaupt nicht zu überschätzen, man denke an die Überwachung von Geräten im Einzelhandel (Kassen), im Sicherheitsbereich (Überwachungskameras), in Fabriken (Produktionsroboter), im militärischen Bereich …

Entscheidend für den Erfolg des Internets der Dinge ist letztlich die Einfachheit der Handhabung für den User und der Preis … wie viel kostet es etwa, ein Fenster eines Hauses IOT-fähig zu machen?

Dass das Internet der Dinge kommt, ist aber ganz sicher – die Vorteile sind gar zu offensichtlich.

Ein Beispiel

zur Veranschaulichung ein kleines Beispiel.

Temperatur – und Luftfeuchtesensor. Das Internet der Dinge … das sind kleine Boards wie dieses ….

Der obige kleine Sensor misst Temperatur und Luftfeuchtigkeit in einem Raum. Er kostet nur wenige Euro und ist an das W-Lan anschließbar, er hat also Internetverbindung. Er verbraucht wenig Strom, denn der Sensor verfügt über eine „Schlaffunktion“ – er „wacht“ also immer auf, wenn er benötigt wird; in der übrigen Zeit hingegen „schläft“ er, und verbraucht dann nur sehr wenig Strom im Mikroampere-Bereich, bei einer Betriebsspannung von 5 V. Auf diese Weise ist der Sensor gut mit einer billigen Batterie ein Jahr lang zu betreiben – er benötigt etwa keinen 250 V Stromanschluss mit aufwändigem Netzteil.

Dieser Sensor ist so programmiert, dass er jede halbe Stunde eine Messung vornimmt, und die Ergebnisse in eine Remote-Datenbank (remote = entfernt) einträgt, also eine Datenbank, die auf einem (gemieteten) Server läuft, welcher ständig in Betrieb ist.

Ein solcher Server ist in diesem Fall jener, auf der die Webseite läuft, die Sie gerade lesen. Die Datenbank, auf die die Webseite zugreift, ist eine MySQL-Datenbank. In diese Datenbank wurde eine Tabelle aufgenommen, in die die Messdaten des Temperatur-und-Feuchte-Sensors eingetragen werden; immer dann, wenn dessen Sendesignal eintrifft. Die Datenbank ergänzt selbst die Spalte „Zeit“ mit der Systemzeit des Servers, während in die Spalte „Eintrag1“ die gesendeten Daten des Sensors aufgenommen werden.

MySQL-Datenbank mit eine extra Tabelle für die Messergebnissse des Sensors.
Das Internet der Dinge … das ist Software, die die Hardware ausliest, steuert ….

Die lokale MS-Access-Anwendung ist wiederum mit diesem Server verbunden, und zwar über einen Internettreiber, der die MySQL-Datenbank mit MS-Access kompatibel macht. Das macht es bequem, die Server-Daten direkt am Arbeitsplatz zu sichten, zu filtern, zu manipulieren, ohne sich in den spartanischen Internetaccount einzuloggen – Access ist eben ein überaus praktisches und letztlich mächtiges Tool.

Eine MySQL-Tabelle, die als verbundene Tabelle in MS-Access sichtbar und bearbeitbar ist.
Das Internet der Dinge … das ist Vernetzung

Hier lassen sich Sensor-Daten, die in die Tabelle geschrieben wurden, sehr einfach auswerten, umformen, in andere Tabellen schreiben, etc.. So wie oben gezeigt.

Weil die Daten des Sensors im XML-Format gesendet wurden und in eine nicht weiter spezifiziertes Feld (namens „Eintrag1“) eingetragen wurde, kann die Tabelle Einträge verschiedenster Sensoren aufnehmen – das macht das Setup für die Sensoren einfacher. Unterscheidbar sind die Sensoren durch den Tag „<Device>“ (Gerät).

Daten zu erheben und zu speichern, jederzeit darauf zugreifen zu können, sie zeitaktuell kontrollieren zu können, ist die Voraussetzung dafür, proaktive Maßnahmen zu ergreifen, Geräte zu steuern, Überwachungsdaten auszuwerten, etc. – also ein Baustein des Internets der Dinge.

Datenbanken für Rechnung, Fakturierung, Warenwirtschaft

Sehr oft werden Datenbanken für die Fakturierung verwendet, also um Rechnungen zu schreiben, zu versenden und ggf. auch Mahnungen zu erstellen.

Wie bereits öfters erwähnt, steht die Erfassung und Verwaltung von Rechnungen in engen Zusammenhang mit anderen Bereichen …

Klar ist: Die Erfassung von Adressen als Rechnungs-Empfänger gehört dazu. Aber ggf. auch: ein Warenwirtschaftssystem, welches die Artikel enthält, die man anbietet und die gekauft werden … und welche dann natürlich auch in die Rechnung eingetragen werden; eine Verkaufswebsite; eine System für das Versenden von Briefen (denn eine Rechnung ist ja gewissermaßen auch ein Brief); möglicherweise ein Lagerhaltungssystem u.v.m..

Der Vorteil des Erstellens von Rechnungen mit Hilfe einer Datenbank leuchtet unmittelbar ein:

  • die Wiedervorlage von nicht bezahlten Rechnungen ist sehr einfach
  • Rechenfehler sind ausgeschlossen
  • alle Daten befinden sich in der Datenbank – das Druckenlassen von Geschäftsbögen für Rechnungen, die, sobald sich eine Telefonnummer ändert, veraltet sind, entfällt. Die Rechnungsbögen sind stets „up to date“.
  • die Rechnungen sind in beliebigem Umfang individualisierbar, sowohl in Hinsicht auf den Betrieb, wie auch auf den Kunden
  • es stehen sofort umfangreiche Auswertungsmöglichkeiten zur Verfügung – welches Produkt erzielt den höchsten Umsatz, welches Produkt erzielt den höchsten Gewinn, welches Produkt verkauft sich meist im Zusammenhang mit einem anderen Produkt, u.v.m..
  • mit Hilfe von Textbausteinen werden Schreibfehler eliminiert

Warum sollte man aber in Access „neu abbilden“, was vielleicht andere Anwendungen ohnehin bieten?

Die Antwort ist die infinitesimale Gestaltbarkeit der Access-Berichte oder den beliebigen Anschluss weiterer Programmteile, ganz nach Erfordernis des jeweiligen Betriebes; so z.B. Druckfunktionen im Netzwerk, Ablagefunktionen (papierloses Büro), Auswertungen wissenschaftlicher oder wirtschaftlicher Art, Versendeautomatismen, etc. etc.. Dies ist mit einer vorgefertigten Software nie gegeben – mit Access lässt es sich leicht umsetzen.

Datenbank für Personal, Mitarbeiter, Adressen, Kunden

Eine sehr häufige Anwendung ist das Erfassen von Adressen, beispielsweise für das Betriebs-Personal, oder als Kundenadressen. Meist gruppieren sich um das Erfassen von Adressdaten noch eine ganze Reihe anderer Funktionen, die mit dem Geschäftszweck in Verbindung stehen – wie etwa das Erfassen und Versenden von Briefen respektive Emails, das Erstellen und Versenden von Rechnungen (hiermit im Zusammenhang steht beispielsweise das Mahnwesen), oder aber das Speichern adressrelevanter Unterlagen im papierlosen Büro.

Die Nützlichkeit der Datenbank ergibt sich nicht nur aus der Möglichkeit der effizienten Erstellung von Unterlagen, zum Beispiel von Briefen. Hier kann ja, das ist sofort offensichtlich, ein erstellter Brieftext mit einer bereits hinterlegten Adresse verbunden werden, es können programmierte Satzbausteine erstellt werden, wie beispielsweise „Sehr geehrter Herr Müller,“ oder „Sehr geehrte Frau Müller,“ (anstelle des früher üblichen
„Sehr geehrte(r) Kund(e/in),“), sondern es ergeben sich viele weitere Möglichkeiten, an die man vielleicht zuerst gar nicht dachte.

Beispielsweise können nun bereits geschriebene Briefe wie Textbausteine oder Mustertexte für andere Kunden verwendet werden, oder aber man überprüft sehr leicht, welche Kunden zuletzt einen Brief erhielten, oder welchen Inhalt der letzte Brief hatte (der textliche Inhalt liegt ja auf Knopfdruck vor). Briefe, die verloren gingen, können sofort nochmals gesendet werden; Briefe können sofort in Form einer email mit PDF-Anhang versendet werden, etc..

Nun können automatiesierte Briefaktionen stattfinden, es kann ausgewertet werden, welche Bestellhäufigkeit es nach Briefaktionen gibt, u.v.m..

Auf diese Art und Weise helfen Datenbanken dabei, Geschäftsabläufe
durchschaubarer zu machen – nun ist es leicht möglich, sich auf das gewinnbringende Geschäft zu konzentrieren, es auszubauen und auf nahe liegende Geschäftsfelder auszuweiten, während man weniger attraktive Geschäftszweige gewissermaßen „veröden“ lässt.

Referenzen

  • Referenzen (Auszug)

    • Erstellen eines Verwaltungssystems für Buchtitel und Ausgaben für einen Verlag
    • Erstellen von Ablagesystemen für Dateien, zugeordnet zu Adressdatensätzen (Kunden), für papierloses Arbeiten (papierloses Büro), sowie für eine effektive Datensicherung
    • Erstellen von Warenverwaltungssystemen mit Angebot und Rechnungen, incl. der Verwaltung verschiedener Absender/Rechnungssteller
    • Textverarbeitung und Textsuche, u.a. mit Hilfe von Regex-Funktionalität, sowie programmgesteuerte Textdarstellung (Formatierungen wie farbiger Text, Fett/Normal, Absätze etc.) , sowie Konzepte für Textumformung
    • Entwicklung von Brief/Mail-Systemen innerhalb von Access, incl. der Verwaltung verschiedener Briefpapiere, zur Erzielung eines vereinfachten Systems für die tägliche Post und Serienbriefe – mit Bezug zur vorhandenen Adressdatenbank
    • Entwicklung automatischer Emailsysteme mit Anbindung an MS-Outlook oder andere Mailprogramme
    • Entwicklung einer Bemusterungs-DB-Anwendung für einen renommierten Bauträger mit Standorten in vielen deutschen Städten
    • Entwicklung von SEO/SEM-Tools zur übersichtlichen Ausführung wichtiger SEO-Arbeiten, unter anderem Eintraglisten für Publikationsplattformen, Permutationen von Keywordketten. Entwicklung eines Moduls für das Verarbeiten von Spintext-Syntax
    • Anbindung / Übertragung großer Datenmengen auf Sql-Server.
    • Erstellen eines effektiven Immobilienverwaltungs- und Angebotssystems für Immobilienmakler, incl. automatisierter Versendung von Exposes, Emails; Wiedervorlage für Akquisitionsanrufe.
    • Pflege der Personendatenbank mit Sendungs/Mustertextfunktion für eine Berliner Universität
    • Erstellen eines Seiten/Artikelverwaltungssystems für WordPress, zur Verwaltung und automatischer Steuerung und Weiterverwertung von Webinhalten.
    • Hochlade- und Registrierungssystem für Webbilder. Access-gesteuertes Zuschneiden und Mit-Text-Versehen (Wasserzeichen) von Digitalbildern mit Hilfe eines aus Access gesteuerten Java-Programmteiles.
    • Erstellen von Mitarbeiter-Datenbanken mit eingegrenzter Mitarbeiter-Funktionalität (User-Rechteverwaltung), Eingrenzung von Datenzugriffsrechten, formularbezogene Dropdownmenüs)
    • Anbindung an vorhandene Web-Applikationen durch programmierte Schnittstellen (APIs), z.B. nach dem SOAP oder REST Standard
    • Entwicklung eines dynamischen Formularsystems für statistische Datenerhebung mittels Fragebogen, inclusive der Berechnung und Darstellung des Ergebnisses

Wie wichtig sind Datenbanken?

Datenbanken umgeben uns, Datenbanken stecken hinter allem, was wir in der Gegenwart sehen, und was irgendwie mit Computern und oder Internet zu tun hat.

Man stelle sich beispielsweise Facebook als eine riesige Datenbank vor, die Namen, Bilder und Redebeiträge speichert und mit Hilfe von Algorithmen miteinander verknüpft. Die „Algorithmen“ sind dabei das Gerüst, die Interaktion des Users hingegen sozusagen das Benzin, das die wechselnden Kontakte und Redebeiträge in den Fokus des Nutzers schiebt.

Oder man stelle sich Amazon als riesige Datenbank vor, die neben den Produkten, deren Preisen und Bildern, auch dynamisch die Interaktion der User speichert, deren Kaufverhalten und Bewertungen nutzt, um selbst als Produkt attraktiver zu werden.

Datenbanken sind sozusagen das Gedächtnis einer immer intelligenter werdenden Computerwelt. Man überlege, wie wichtig das Gedächtnis für das eigene Denken ist, und man wird verstehen, dass es nicht den kleinsten Gedanken geben kann, ohne ein Gedächtnis. Denn jede Vorstellung, jeder Gedanke, ist immer auch der Bezug auf etwas Bekanntes – auf eine „gespeicherte“ Information.

Datenbanken sind im Computerzeitalter zu einer unabdingbaren Selbstverständlichkeit geworden. Sie sind ein vereinfachtes Abbild der Realität, künstlich geschaffen, um einige Aspekte einer unendlichen Komplexität wiederzugeben.

Komplexität

Im Umgang mit Datenbanken lernen und verstehen wir manches über uns selbst. So, wie wir mit Hilfe sozialer Netzwerke wie z.B. Facebook einiges über die menschliche Kommunikation lernen und erfahren können.

Wir verstehen zum Beispiel, wie einfach erscheinende Sachverhalte aus einer Vielzahl von Beziehungen entstehen, und wie schwierig es manchmal erscheint, das, was man im täglichen Leben ganz normal zu tun gewohnt ist, in die eindeutige Sprache des Computers zu übersetzen.

Eine Datenbank in der einfachsten Form ist eine Tabelle. Als relationale Datenbank muss man sich aber eigentlich eine Tabellensammlung denken, deren einzelne Tabellen über eindeutig zuordenbare Identifikationszeichen miteinander verbunden sind. So, wie wir zu den Personen die wir kennen gleichzeitig deren Namen erinnern („abspeichern“), wodurch uns Kommunikation überhaupt erst möglich wird.

Allgegenwart

So, wie die heute wertvollsten und wichtigsten Firmen wie Google, Facebook, SAP, Amazon und viele mehr, ohne Datenbanken nicht vorstellbar sind, sind generell alle Leistungen der modernen Service-Gesellschaft kaum denkbar ohne den Einsatz von Datenbanken.

Beispielsweise wird ein Essen in einem Restaurant begleitet von Eingaben in eine Datenbank, d.h., es wird gespeichert, wer was an welchem Tisch bestellt. Die Küche arbeitet anhand dieser vom Service gelieferten Daten, und die Rechnung wird schließlich anhand dieser Daten erstellt. Diese Daten liefern aber auch Informationen über die nötigen Nachbestellungen an Lebensmitteln, Daten für die Steuerabrechnung des Betriebes, Daten über den Erfolg bestimmter Gerichte, Daten über den Fleiß von Kellnern u.v.m..

Oder man stelle sich einen Hausbau vor – hier wird der Architektenentwurf mit Hilfe von Software gemacht, die aus den Eingaben in eine Datenbank (das Zeichnen der Entwurfsplanung am Computer) in Sekundenschnelle eine Massen- und Mengenberechnung erstellt, so dass man zu jedem Zeitpunkt weiß, wie viel Beton in die Wände eingeht, wie viele Fenster und Türen vorhanden sind, wie groß die Dachfläche ist, etc.. Und, weil in der Datenbank auch Preise für Material und Gewerke hinterlegt sind, kann in Sekundenschnelle eine Kostenschätzung abgegeben werden. Für den eigentlichen Bau ist nunmehr die Ablaufplanung und Bestellplanung wichtig, die wiederum mit Hilfe der Datenbank erzeugt wird. Jede Anfrage bei einem Gewerk, beispielsweise den Dachdeckern oder Klempnern, erfordert eine Ausgabe (Kostenanfrage), der die Daten aus der Datenbank zugrunde liegen. Je detailgenauer die Datenbank programmiert ist, desto größer der Nutzen, desto größer die Zeitersparnis und damit Ersparnis menschlicher Arbeitskraft.  Desto geringer mithin übrigens auch die ansonsten kaum vermeidbaren Irrtümer und Fehler. Denn die menschliche Erfahrung fließt in das Datenbankdesign ein, ein nunmehr festes Gerüst aus Beziehungen und Berechnungsmethoden, auf das unendlich oft zurückgegriffen werden kann.

Oder man stelle sich den Einkauf bei einem Diskounter wie eine Datenbank vor, die im Hintergrund stets „mitrattert“, wenn ein Produkt über den Scanner gezogen wird, wenn die Überwachungskameras in Betrieb sind, wenn der Kunde bezahlt (die Kasse als Datenbank). Das Bestellsystem des Discounters bei den eigenen Lieferanten besteht aus hochkomplexen Datenbanken – hier liegt das wertvolle Software-Know-How, ohne das heute kein moderner Betrieb auskommt.