PDA

Vollständige Version anzeigen : automatische Abfrage (zeitabhängig)


Claus33
24.10.2003, 10:36
Hallo,

gibt es eine Möglichkeit eine Aktualisierungsabfrage in Abhängigkeit des Datums automatisiert starten zu lassen.

Zum Beispiel am jeweil 1. des Monats beim Öffnen der DB.

Wenn die DB erst im Folgetag geöffnet wird, dann soll die Abfrage zu diesem Zeitpunkt gestartet werden.

Danke
Grüsse
Claus

Johnny Loser
24.10.2003, 11:02
Selbstverständlich ist das möglich.

Vorbereitung: Du erstellst z.B. eine Tabelle, in der Du das Datum der letzten Ausführung speicherst.

Du erstellst eine Funktion, in der Du zuerst prüfst, ob im aktuellen Monat die Aktualisierung durchgeführt wurde, falls ja: Abbruch, falls nein: Aktualisierung durchführen und Datum aktualisieren.

Über ein Autoexec-Makro rufst Du diese Funktion beim Programmstart auf.

Claus33
24.10.2003, 11:29
Hallo,

danke erstmal ich werde versuchen Deinen Vorschlag irgendwie in die Tat umzusetzen.

Da meine VBA- Kenntnisse sehr begrenzt sind , würde ich mich über einen BeispielCode sehr freuen

Claus

Johnny Loser
24.10.2003, 21:57
Versuchen wir's mal:

1. Tabelle erstellen, Name: LocPref

Feldname: LastUpdate
Feldtyp: Datum, kurz

Einen Datensatz einfügen mit einem beliebigen Datum des letzten Monats.

2. Modul erstellen, Name: CommonFunctions

Folgende Funktion erstellen

Public Function fncUpdateDb()
Dim datLastUpdate As Date
datLastUpdate = DLookup("LastUpdate", "LocPref")
If ((Year(Date()) * 100) + Month(Date())) > ((Year(datLastUpdate) * 100) + Month(datLastUpdate)) Then
'Hier Deine Aktualisierungsabfrage ausführen
CurrentDb.Execute("UPDATE LocPref SET LastUpdate = Date()")
End If
End Function
3. Makro erstellen, Name: AutoExec

1. Zeile: Ausführen Funktion
Funktionsname: fncUpdateDb()