Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

Eine Datenbank mit Access 2013 richtig entwickeln

Nachrichten automatisch und individuell anzeigen

Testen Sie unsere 2021 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Die benutzerspezifischen Nachrichten sieht dieser automatich sofort beim Öffnen der Datenbank oder kann das Formular auch nachträglich aus dem Menü auswählen.

Transkript

Die Tabelle für die Nachrichten ist fertig, aber die dürfen natürlich nicht unsortiert oder ungefiltert angezeigt werden. Das bedeutet, ich brauche eine Abfrage, die auf "tblNachrichten" basiert und grundsätzlich erstmal alle Inhalte anzeigt. Also das Sternchen doppelklicken, das ist erstmal so, dass Sie an alle Felder herankommen. Außerdem möchte ich dafür sorgen, dass die User-ID-Referenz nicht noch ein zweites Mal angezeigt wird, aber prüft, ob die entweder "ist null", leer ist, oder meiner User-ID entspricht. Das "ID" muss ich da natürlich noch haben. Also, wer diese Nachrichten sieht, ist entweder der mit der richtigen User-ID oder die ist "null", dann ist es eine öffentliche Nachricht. Und das "DatumErstellt" will ich auch nicht ein zweites Mal sehen, aber fallend, absteigend sortieren. Und wenn ich jetzt einen Benutzer angemeldet habe, vielleicht sollte ich das vorher erstmal speichern, "qryNachrichtenKomplettSortiert" schreibe ich mal dazu, und sehe jetzt deswegen nur die Nachrichten, die für den Admin, mich nämlich, oder allgemein sind. Die für Willi Wichtig, die Nachricht ist schon wegsortiert. Und auf dieser Grundlage kann ich jetzt mal eben auf die Schnelle ein Formular erstellen. Also, die "qryNachrichtenKomplettSortiert" ist Grundlage für ein weiteres Formular mit mehreren Elementen. Und das muss ich jetzt nur so ein kleines bisschen an unsere Vorgaben anpassen, dass also erstens genug Platz ist, man kann im Grunde die ID auch weglassen, hier darf es ein bisschen kürzer werden, und das kann insgesamt alles hübscher werden. Darum geht es ja eigentlich gar nicht. Lesen sollte man es allerdings schon komplett können. Es gibt kein Recht für neue Eintragungen. Das darf man dann nur lesen. Und die Kopfzeile stimmt ja noch nicht, Also im Entwurf, den können wir erstmal klein machen, das geht raus, und dann muss ich am besten aus einem anderen Formular den Kopfbereich holen. Also sagen wir für die Unternehmen in der Entwurfsansicht, dieses Element herausholen, strg+C, und hier mit strg+V wieder einfügen. Das ein bisschen wieder anpassen. Das ist jetzt eine reine Fleißarbeit. Per Doppelklick hier sehe ich die Eigenschaften, die nämlich "Endlosformular" noch korrekt drinstehen haben. Und hier "Anfügen zulassen", das ist ein bisschen weiter unten, "Anfügen zulassen" auf "Nein" stellen. Dann kann man nämlich an der Stelle auch nichts Neues eintragen. Und dann braucht es noch die eine Zeile Programmierung, also im Ereignis laden, kommt wie immer die Zeile "SetzeFormularKopf". Und ich übergebe "me.sfmKopf.Form" und den Text "Nachrichten für", und da können wir ruhig erwähnen, wie der Mensch heißt, der hier sitzt, der hat nämlich einen User-Name. Und damit ist das auch schon personalisiert. Das Formular heißt natürlich "frmNachrichten". Und damit können wir es direkt testen. Ich habe im Menü einen eigenen Eintrag dafür vorgesehen. Also mit alt+F11 wieder in den Code. Im DynamicMenue gibt es einen Eintrag für die Nachrichten. Hier, der steht allerdings auf "FehltNoch". Wenn ich das ergänzen will, kann ich hier direkt einen neuen Eintrag machen. Der heißt "aktNachrichten". Das wird im Menü entsprechend korrigiert, "aktNachrichten". Und jetzt muss ich nur unten, wo das auf den Klick reagiert, beschreiben, was dann passieren soll. Also, ich mache das einfach mal dahinter. Im "Case aktNachrichten" möchte ich ein "docmd.OpenForm" für "frmNachrichten" machen. Das war schon alles. Dann haben Sie auch einmal gesehen, was passiert, wenn jetzt ein neues Formular kommt, wie wenig Mühe es macht, das Formular zu erstellen und in das Menü einzuhängen sozusagen. Jetzt sollten wir das auch nochmal testen. Also, ich bin ohne Rechte, weil ich eben abgebrochen habe, und deswegen keine ID habe. Ich darf meine Nachrichten nicht sehen. Ich muss mir also schnell Rechte verschaffen. Das geht im einfachsten Fall mit dem Komprimieren. Und jetzt habe ich hier Rechte und kann mir die Nachrichten anzeigen, und da steht das komplett für mich. Hier ist die Breite der Kopfzeile noch nicht richtig. Deswegen stimmt das da nicht mit dem rechten Rand. Das können wir auch noch schnell korrigieren. Da geht es um diese Differenz, also den heranziehen und den entsprechend bis nach hinten ziehen. Damit ist das Nachrichtensystem sozusagen perfekt. Nur, man muss es wissen und ausdrücklich aufrufen hier. Deswegen möchte ich es noch um einen weiteren Schritt ergänzen, der nämlich sagt, beim Start, wir haben eine Funktion "StarteDB". Wenn ich den User erkannt habe, dann prüfe ich schnell, ob "UserID" denn bitteschön größer null ist, und in dem Fall kann ich auch direkt ein "docmd.OpenForm" die Nachrichten öffnen, und dann sieht jeder neue Benutzer sofort, dass möglicherweise für ihn Nachrichten da sind. Dazu muss ich einmal komprimieren. Dabei wird die Datenbank geschlossen, geöffnet. Und Sie sehen: Jetzt sehe ich sofort meine Nachrichten, beim Öffnen der Datenbank.

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!