Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Tag-Eigenschaft zum 'merken' nutzen?

Begonnen von ThomM, Juli 15, 2010, 11:04:13

⏪ vorheriges - nächstes ⏩

ThomM

Hallo mal wieder,
ein Problem gelöst und schon ein neues  ::)

Ich muss leider etwas ausholen...

Ich wollte 'mal eben' eine kleine 'Aktualitätsprüfung' in das Frontend meiner DB einbauen (also das lokale FE soll schauen, ob schon eine neuere Version auf dem Server liegt)

Ich stelle, wenn ich eine neue Version gebastelt habe, diese auf den Server, von wo aus die User sich dann ihr Update holen.

Im Backend trage ich die Versionsnummer in eine Tabelle ein.

Nun habe ich in meinem Startformular ein ungebundenes Textfeld (Namens 'tfVersion') eingefügt in dessen Tag-Eigenschaft ich die Versionsnummer eingetragen habe.

Als Steuerelement-Inhalt habe ich '=tfVersion.tag' angegeben.

Nun Vergleiche ich beim Aufruf des Formulars den Tag mit der im Backend hinterlegten Versionsnummer und gebe bei Abweichung eine Meldung aus.

Soweit so gut.

Nun habe ich mir ein kleines Stück Programm gebastelt, um in den Tag per Knopfdruck die aktuelle Version einzutragen:

Private Sub btn_Version_Click() ' Version Neu einstellen
On Error GoTo Err_btn_Version_Click
Dim strVersion As String

strVersion = DLookup("Version", "99_Tbl_VersionUndVariablen")

        Me!Version.Tag = strVersion
        Me!Version.Requery
   
Exit_btn_Version_Click:
    Exit Sub

Err_btn_Version_Click:
    MsgBox Err.Description
    Resume Exit_btn_Version_Click
   
End Sub


Auch das klappt, allerdings ist der Tag nach dem Schliessen und Öffnen des Forms leer, hier sollte aber (nach meinem Plan) die Versionsnummer erhalten bleiben.

Wo mache ich den Fehler, bzw hat jemand eine einfachere oder andere Idee, wie ich die Aktualität des FE prüfen kann ?

Grüsse, Thomas


DF6GL

Hallo,

die Tag-Eigenschaft kann nur dauerhaft gespeichert werden, wenn sie während des Entwurfsmodus des Forms eingestellt wird.


Andererseits versteh ich nicht, was Du mit mit Deinem Konzept bezweckst..  Wenn ein neues FE auf dem Server liegt (was zunächst gecheckt werden muß, kann man auch mit nicht-Access-Mitteln machen) , muss dieses erst mal auf den lokalen Rechner kopiert (und das alte überschrieben ) und anschließend gestartet werden.


Statt der Tag-Geschichte könnte sich eine benutzerdefinierte (Access-) Eigenschaft anbieten.


database

Hallo,

....oder du hinterlegst die Versionsnummer in einer lokalen Tabelle am FE.

Grüße

Peter

ThomM

ah, danke Franz.

Mit der Aktion wollte ich nur die User darauf hinweisen, dass sie ein Update benötigen.

Ich hatte mir schonmal eine Batch geschrieben, die schaut, ob die Serverversion jünger ist, als die Lokale.
Leider verändert sich das Dateidatum sobald die Datei  benutzt wird.

Oder ist das Datum der falsche Ansatz ?

@Peter: guter Plan, werd ich mal versuchen. Dank auch an dich

thoams


DF6GL

Hallo,

ja, das Datei-Datum ist wohl nicht so geschickt...


Möglicher Lösungsweg:


Per VB-Script(!,  also quasi "Batch-File") , das mittels eines Links gestartet wird, den Wert (z. B. "10.07.15") der  benutzerdefinierten Eigenschaft des FE (z. B. "FEVersion" ) der serverseitig liegenden Datei auslesen und mit dem Wert des lokalen FE vergleichen. Bei einem Unterschied die Server-Datei auf die lokale kopieren/überschreiben und erst dann das lokal FE starten.



Statt VB-Script kann natürlich auch das FE diese Prüfung übernehmen, es ist aber bei evtl. Kopieren, Überschreiben und Neustarten des FE mit Datei-Sperrproblemen zu rechnen.


ThomM

Gut, da hab ich was zum Probieren, mal schauen, ob ich die nötigen Rechte auf unserem System habe :)

Danke Euch

Thomas