Color scheme: Dark
You are here: start » de » Dokumentation » Werkzeuge für Microsoft Access » WKL Forms Object Library » how-to » Verbindungen einer ausgelieferten Anwendung durch den Betrieb umstellen lassen

Verbindungen einer ausgelieferten Anwendung durch den Betrieb umstellen lassen

Lassen Sie die Person, die eine ausgelieferte Anwendung betreibt, deren verknüpfte Tabellen auf einen anderen Server oder eine andere Datenbank umstellen – einen neuen SQL Server, eine Testdatenbank –, ohne Entwicklungszugang und ohne neue Version.

Voraussetzungen: WKL Forms Object Library 1.51 oder höher; die Tabellen werden über WklLinkManager verknüpft.

Lösungsüberblick

Das Anwendungsmodell gibt frei, was im Betrieb angepasst werden darf: Verbindungen umstellen (neu verknüpfen) und benannte Optionen. WklApplication.ShowSettings öffnet ein kleines Dialogfeld nur mit diesen Einstellungen – auch in einer ACCDE und in der Access Runtime, wo kein Designer verfügbar ist. OK schreibt die abweichenden Werte in die Einstellungsdatei des Benutzers außerhalb der Datenbank und verknüpft die Tabellen über WklLinkManager.EnsureLinks neu. Bei jedem späteren Start verwendet EnsureLinks dieselbe Datei, und eine neue Version der Anwendung behält sie bei.

Umsetzung

  1. Schalten Sie im Anwendungsdesigner auf der Seite Im Betrieb anpassbar die Option Verbindungen umstellen ein. Fügen Sie bei Bedarf Optionen hinzu (zum Beispiel Branch, Art Auswahl, Werte Wien;Graz), und füllen Sie Wer die Einstellungen öffnen darf aus, zum Beispiel mit einer Funktion IsAdministrator der Anwendung.
  2. Geben Sie dem Betreiber einen Weg, die Einstellungen zu öffnen, zum Beispiel eine Schaltfläche in der Shell:

    Private Sub cmdSettings_Click()
        On Error GoTo Failed
        If CreateObject("WklForms.Application").ShowSettings() Then
            Me.Requery
        End If
        Exit Sub
    Failed:
        MsgBox Err.Description, vbExclamation
        Resume Done
    Done:
    End Sub
  3. Verknüpfen Sie bei jedem Start neu, bevor das erste Formular Daten liest (im Startformular oder in einem AutoExec-Makro):

    CreateObject("WklForms.LinkManager").EnsureLinks
  4. Lesen Sie eine Option dort, wo die Anwendung sie braucht: CreateObject("WklForms.Application").OptionValue("Branch").

Hinweise

  • Wo die Werte liegen: je Benutzer in %LOCALAPPDATA%\WKL\<database>\settings.json, über der Datei des Rechners %ProgramData%\WKL\<database>\settings.json, die ein Administrator verteilen kann. Geschrieben werden nur Werte, die von der Datenbank abweichen; eine Verbindung wird über ihren Namen zugeordnet.
  • Eine beschädigte Datei meldet EnsureApplication und ignoriert sie: Die Anwendung startet mit den Verbindungen, die in der Datenbank gespeichert sind.
  • Abgelehnte Aufrufe lösen wkeNotAvailable ohne Dialogfeld aus: wenn das Modell nichts freigibt oder die Bedingung für diesen Benutzer nicht erfüllt ist.

Verwandte Themen

de/wiki/msaccess/comctl/how-to/let-operators-move-the-connections.txt · Last modified: by Wolfgang van der Stille