Hallo,
Ich bin gerade in einer DB in der ich eine Zeitabfrage benötige!
und zwar soll die ABfrage mich nach einer bestimmten Zeit benachrichten…
z. B. ich geb am heutigen Tag etwas ein und nach 30 Tagen erinnert mich die DB daran
so eine Art Kalender
Ich kenne mich in VB nicht wirklich aus und wäre über ein paar Hilfen sehr dankbar
Solange die DB nicht geöffnet ist, bekommt man auch keine Nachricht !!!
Nachdem Öffnen gibt es aus meiner Sicht 2 Ansätze:
1.) Ereignisgesteuert; d.h. über die Timerfunktion z.B.: alle Termine alle 60 Minuten überprüfen und die jenigen anzeigen, die dieses Kriterium erfüllen.
Nachteil: etwas Programmierarbeit
2.) Beim Öffnen der DB über das Makro „Autoexec“ eine Abfrage starten und dort eben genauso die Termine abprüfen.
Nachteil: Läuft automatisch nur einmalig beim Öffnen der DB an. Kann natürlich auch über eine Schaltfläche manuell gestartet werden.
Die zweite Vatioante mit „Autoexec“ klingt Interessant!
Es reicht vollkommen wenn die Abfrage beim Start ausgeführt wird.
Ich versuch es noch einmal etwas genauer zu beschreiben:
Es wird eine, ich sag mal „Mahnschreibenverwaltung“, in der automatisch Mahnungen erstellt werden sollen.
Man wählt in einem Formular den „Täter“ und den Verstoß aus.
Die DB soll hiernach automatisch eine Mahnung (Bericht) erstellen. (inklusive aktuelles Datum)
Nach 30 Tagen soll die DB den Benutzer an den Vofall erinnern, damit dieser den Vorfall als „erledigt“ oder „nicht erledigt“ markieren kann (Ja/Nein)
Sollte der Benutzer den Fall als „erledigt“ markieren, soll keine weitere Erinnerung stattfinden.
Das Makro „AutoEXEC“ hab ich hinbekommen!!
Allerdings fehlt mir noch die Abfrage, in der gefragt wird welcher Datensatz 30 Tage alt ist
Ich hab es mit der folgenden SQL-Abfrage versucht bin aber zu keinem Ergebnis gekommen…
SELECT Dokument.IDVeremieter, Dokument.IDVerstoß, Dokument.IDMahnung, Dokument.Datum, Dokument.Status
FROM Dokument
WHERE (NOT Dokument.Datum)
AND Date()-Dokument.Datum>30
ORDER BY Dokument.Datum;