Eine Datenbank mit Access 2013 richtig entwickeln

Globale Konstanten für Programm-Informationen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Um bei allen Meldungen immer erkennen zu können, dass sie nicht von Access selber ausgelöst wurden, vereinbaren Sie am besten globale Konstanten.

Transkript

Ich möchte an dieser Stelle noch eine kleine Verbesserung einfügen, die nicht zwingend hier vorhanden sein muss. Aber an der Stelle ergibt es sich gerade ganz gut. Und zwar hat das etwas mit der Meldung zu tun. Ich habe mir zwischenzeitlich das Darf-Neu-Recht entzogen. Das heißt, wenn ich jetzt "UserDarfNeu" abfrage und ohne Parameter, also auf "Wahr" "MitMeldung" auslöse, dann erhalte ich eine Meldung. Die sagt, wie vereinbart: "Sie haben leider keine Neu/Einfügen-Rechte." Aber sie hinterlässt den Eindruck, als sei sie von Access verursacht. Und das finde ich immer sehr unglücklich. Ein Benutzer würde jetzt zu einem Access-Experten hingehen und fragen: Woher kommt denn diese Meldung? Was muss ich tun? Und der sagt, klar: Kenne ich nicht. Deswegen, finde ich, gehört es sich, wenn Sie die Meldung verursachen mit Ihrem Programm, dass Sie auch als Urheber erkennbar sind, oben in der Caption, in der Beschriftung, im Titel. Und das möchte ich vernünftig vereinbaren. Das bedeutet, ich brauche erstmal ein paar Konstanten, nämlich hier in "modVarKonstDLL". Deswegen heißt das ja so. Ein paar Konstanten, die ich dazwischen mache, die diese Werte erstmal irgendwo hinterlegen. Also zum Beispiel eine "Public", und eine Konstante heißt bei mir "p_c", nämlich eine String- Konstante, die sagt, wie heißt denn diese Anwendung, diese Application. Die heißt ganz einfach "Rank&Schlank". Und damit ist schon die erste Konstante fertig. Allerdings muss es natürlich auch "Public Const" heißen, damit es wirklich eine Konstante wird. Nach diesem Muster mache ich verschiedene andere. Das ist eigentlich immer so ein Standardsatz von viereinhalb, sage ich mal, Konstanten, die ich immer brauche. Vier echte und eine zusammengesetzte. Also, "Const p_c" ist auch ein String, nämlich der "AppAutor". Da bin ich ja eitel und möchte meinen Namen auch gerne irgendwo mal lesen, allerdings ohne Ausrufezeichen. Soviel muss dann doch nicht sein. Und als drittes, und vielleicht durchaus wichtiger als der Autor, die Version. Da kann ich jetzt hinterlegen, das sei die Version "0.99x". Und die zähle ich jeweils weiter. Das muss ja nicht automatisch sein. Tatsächlich nummeriere ich immer weiter, wenn ich irgendetwas an den Kunden ausliefere. Meine Versionen, die ich im Büro entwickle, werden so lange nicht neu nummeriert, bis ich sie wieder nach draußen gebe. Oder, um genauer zu sein: Sie werden sofort neu nummeriert, sobald ich im Büro etwas daran tue, damit ich es nämlich nicht vergesse. Also, diese ist noch nicht ganz auslieferungsreif. Deswegen nenne ich sie "0.99x". Und deswegen ist es auch ein String. Sonst wäre das "x" gar nicht erlaubt, wohingegen "Public Const p_cdat" ein Datum wird, nämlich "AppStand". Da können Sie sich irgendwas Sinnvolles ausdenken, das Tagesdatum oder so. Ich denke mir jetzt mal gerade Weihnachten 2013 aus. Das schreibt sich, da muss man immer dran denken, also natürlich erst der Monat, dann der Tag und dann 2013, und das Ganze gekapselt in diesen Doppelkreuzen. Wenn das ein ungültiges Datum wäre, gäbe es jetzt schon einen Syntaxfehler. Das waren die vier, die ich immer einbaue. Ich kann also sagen, wie heißt das Programm, welchen Stand hat es, von welchem Datum nämlich, welche Version und, bei Bedarf, auch, wer hat es erfunden. Und jetzt kommt die zusammengesetzte. Die ist nämlich die, die ich eigentlich jetzt brauche. Das will ich nicht in jeder Meldung oben ausführlich hinterschreiben, "Rank&Schlank (Version 0.99x vom 81.12.2017)". Das ist mir viel zu kompliziert. Also bastle ich das einmal, und zwar mit einer zusammengesetzten. Die nenne ich jetzt einfach, "Titel" ist eigentlich nicht ganz korrekt, also "MsgboxTitel". Und dort kann ich dann sagen, ich hätte gern den "AppName", verkettet mit einer Zeichenkette, allerdings kommt da noch ein Inhalt hinein, nämlich "Version", und dann wiederum verkettet mit der Version, und dann am Ende wieder die Klammer zu. Das soll der Titel aller meiner MessageBoxen werden, damit ich, wenn mich jemand anruft, hier ist irgendeine Meldung gekommen, auch sofort sehen kann: Aha, und es ist die Version soundso, die ist ja vielleicht schon ganz veraltet, die soll der gar nicht benutzen. Und deswegen kommen wir jetzt wieder zurück zu diesen Funktionen, die hier einfach eine MessageBox mit Access-Titel herausgeben. Wenn ich dort noch ein Komma dahintersetze, sehen Sie das dritte, optionale Argument ist nämlich "Title". Dort werde ich jetzt "p_cstrMsgboxTitle" einbauen. Das können wir direkt kopieren, und im Grunde für alle MessageBoxen, da müsste ich jetzt den Code nochmal komplett durchsuchen, alle MessageBoxen, die von meinem Programm oder von meinem Code verursacht werden, die sollten oben vermerken, ich erzeuge das jetzt einfach nochmal, dass sie jetzt verursacht wurden nicht von Access allgemein, sondern konkret von diesem Programm in dieser Version. Und wo immer ich drauf hinweisen will, in welcher Version es nun gerade ist, das könnte man auch hier oben noch einbauen, habe ich jetzt direkt Konstanten zur Verfügung, inklusive dieser Sammelkonstante, der zusammengesetzten, die mir die Arbeit vereinfacht. Normalerweise dürfen Sie Konstanten natürlich nicht zusammensetzen, jedenfalls nicht mit Funktionen, die irgendwie dynamisch sein könnten. Aber hier ist alles statisch, also von daher ist das erlaubt. Sie würden auch sofort einen Laufzeitfehler kriegen. Damit haben wir jetzt auch für diese Art der Benutzerführung, der Benutzerbedienung gesorgt, der weiß, bei wem er sich beschweren oder bedanken muss, wenn irgendetwas an Meldungen kommt.

Eine Datenbank mit Access 2013 richtig entwickeln

Sehen Sie einem erfahrenen Datenbankentwickler über die Schulter und lernen Sie dabei, wie Sie in Access 2013 optimale und perfekt skalierbare Datenbank anlegen und pflegen.

5 Std. 18 min (53 Videos)
Derzeit sind keine Feedbacks vorhanden...

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!