Office: (Office 2016) Mehrbenutzerumgebung

Helfe beim Thema Mehrbenutzerumgebung in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo an alle, Da ich jetzt seit ca 3 Tagen Google mit sämtlichen Formen von Suchanfragen malträtiert habe, wende ich mich nun an euer kollektives... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von juschwe, 20. Juli 2020.

  1. Mehrbenutzerumgebung


    Hallo an alle,

    Da ich jetzt seit ca 3 Tagen Google mit sämtlichen Formen von Suchanfragen malträtiert habe, wende ich mich nun an euer kollektives Wissen.

    Ich habe im Auftrag eine einfache Datenbank (einfach insofern, dass sie eigentlich nur mit einer einzigen Tabelle arbeitet) erstellt, die eigentlich nur eine Art Terminmanagement können soll: Sprich eine tabellarische Auflistung aller Aufträge und die Möglichkeit diese zu bearbeiten.
    Soweit so gut. Bis auf kleinere "Buggs" funktioniert nahezu alles.

    Da es sich um eine Mehrnutzerumgebung handelt, habe ich mich für eine FE - BE Design entschieden. Und hier wird es plötzlich tricky:

    - Alles funktioniert, auch mit mehreren aktiven Usern, sofern sich diese nur auf der Hauptseite bewegen (dort werden keine Daten angezeigt). Bearbeitet ein User einen Datensatz wird dieser an alle übertragen.

    - Hat ein User die tabellarische Übersicht geöffnet und ein anderer bearbeitet diese, werden die Änderungen nur noch beim Bearbeiter angezeigt. Selbst ein erneutes Öffnen der DB bei den anderen löst das Problem nicht. Sogar die BE DB scheint plötzlich "doppelt" zu sein, im Sinne von sie wird je nach Computer mit anderen Werten angezeigt.

    Ich habe alles probiert, was mir bekannt ist:
    1) Ein Zeitgeber requery (15000) auf dem Tabellenformular.
    2) Eine Bearbeiter Sperre auf dem Bearbeitungsformular.

    Hab ich einen Knoten in meinem Kopf oder warum werden die Daten trotzdem unterschiedlich angezeigt und gehalten?

    Falls die Infos nicht reichen, kann ich gerne genauer werden.
    Danke schon mal jetzt. *Smilie

    Liebe Grüße aus dem Norden

    :)
     
    juschwe, 20. Juli 2020
    #1
  2. Aufbau DB:

    BE
    - Tabelle mit den Terminen
    - zwei Tabellen für Kombinationsfelder

    FE
    - Abfragen
    - Berichte
    - Formulare

    Der Einfachheit halber beschränke ich mich im Folgenden nur noch auf das Formular für alle Termine. Es gibt noch ein Formular für Details. Dieses unterscheidet sich in der Funktionsweise aber nicht erheblich vom Terminformular.

    Das Terminformular besteht aus einem Endlosformular, das die Werte aus der Abfrage optisch übersichtlich darstellt. Um Mehrbenutzerfehler zu vermeiden habe ich hier die Bearbeitung gesperrt.

    Jeder Termin verfügt über eine Bearbeiten-Funktion, bei welcher sich ein Eingabeformular öffnet. Dieses schreibt mit der Abfrage wiederum in die BE Datenbank. Beim Öffnen greift die Datensatzsperre.

    Diese Bearbeiten-Funktion kann ich auch aus dem Hauptformular / Hauptmenü öffnen.

    Das alles funktioniert soweit. Das BE befindet sich auf unserem Laufwerk, die FEs habe ich zu Probezwecken auf meinem Laptop und meinem PC. Befindet sich der PC im Hauptmenü kann ich am Laptop ganz normal arbeiten. Gehe ich dann am Laptop wieder ins Hauptmenü und dann am PC in die Tabelle wird alles richtig angezeigt. Befindet sich der PC in der Tabelle und ich bearbeite einen Datensatz am Laptop wird plötzlich alles "asynchron".

    Hoffe das hilft weiter.
     
    juschwe, 22. Juli 2020
    #2
  3. Auf Basis der Infos reine Spekulation aber:

    Hört sich für mich danach an, als ob statt ReadOnly auch bei der Ansicht gesperrt wird und im Fall der Datensatzsperrung Neuerstellung oder Mirror genutzt wird. Erhältst Du wenn es "asynchron" wird, denn zwei Datenbanken/Tabellen? Ich glaube Code-Beispiele könnten hilfreich sein. Wie sieht dein Recordset für die Änderung aus und wie reagierst Du bei einem gesperrten Datensatz?

    Gruß Christian
     
    Fulgorth, 22. Juli 2020
    #3
  4. Mehrbenutzerumgebung

    Hallo Christian,

    Danke für die Hilfe! :erleichtert:
    Ersteinmal die Codes:

    Auf der Eingabeseite:
    Code:
    Auf der Tabellenseite:

    Code:
    Der SQL der Abfrage:

    Code:
     
    juschwe, 22. Juli 2020
    #4
  5. Eigentlich war geplant, bei einem gesperrten Datensatz einen Warnhinweis auszugeben. Allerdings habe ich keine Kenntnis darüber wie das gehen sollte.

    Die Sperrung wurde vorgenommen durch:

    "Eingabe"-Formular
    -> Formular
    -> Daten
    -> Datensätze sperren
    -> Bearbeiteter Datensatz

    Von einer ReadOnly / Mirror Variante höre ich das erste Mal.
    Der Windows Explorer zeigt mir lediglich eine BE-DB an, wenn es zu so einer "Dopplung" kommt. Auf beiden Endgeräten sieht diese DB auch identisch aus, allerdings mit unterschiedlichen Datensätzen. *entsetzt
    Ich muss jedes Mal die Frontend Datei neu kopieren, um die Werte wieder synchron zu bekommen. :/
     
    juschwe, 22. Juli 2020
    #5
  6. Sind die Tabellen Verknüpfungen im FE vorhanden?
     
    sworks, 22. Juli 2020
    #6
  7. Die DB wurde mit dem DB Manager geteilt und neu verknüpft. Die Verknüpfungen funktionieren auch, sofern ich das beurteilen kann. Wenn nur ein FE geöffnet ist, funktioniert alles wie es soll.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    juschwe, 22. Juli 2020
    #7
  8. Mehrbenutzerumgebung

    Hallo,
    hat jeder User sein eigenes Frontend auf seinem PC ?
    Geht aus den bisherigen Beiträgen nicht eindeutig hervor.
     
    gpswanderer, 22. Juli 2020
    #8
  9. Ich habe auf dem Laufwerk das BE gespeichert und das FE zum kopieren bereitgestellt (aktuell nutzen noch keine anderen User das FE). Dieses FE habe ich auf meinen Computer und meinen Laptop lokal kopiert.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    juschwe, 22. Juli 2020
    #9
  10. \@juschwe:

    Wie ich verstehe, läuft das alles in einem LOKALEN NETZWERK, oder?
    JEDER Benutzer muss - wie bereits oben beschrieben - sein eigenes FE (Frontend) haben. Alle Tabellen müssen dort zum BE verknüpft sein!
    Wo befindet sich das BE (Backend)? Auf einem eigenen PC im LAN? Welches Betriebssystem ist dort installiert?

    Alternativ könnte man alles auf ein MySQL-System umstellen...
     
    fraeser, 22. Juli 2020
    #10
  11. \@fraeser:

    Das ganze läuft über unser lokales Firmen-Netzlaufwerk (Homeofficezugriff via VPN). Dort befindet sich das Backend. Eine Alternative ist aufgrund der strengen Sicherheitsrichtlinien von oben leider nicht denkbar. Faktisch sehe ich dieses Laufwerk einfach nur wie jedes andere Laufwerk auf meinem Rechner, daher gehe ich davon aus, dass es sich um ein Windows-Laufwerk handelt.
    Die Verknüpfungen sind in den FEs sichtbar, allerdings sehen sie im Laptop ganz anders aus (nicht gruppiert) als am PC, wo ich BE und FE geschrieben habe. Auch habe ich dort nur reduziert Auswahlmöglichkeiten.
     
    juschwe, 22. Juli 2020
    #11
  12. Hallo,
    um es noch mal deutlich zu sagen (mir ist es nämlich immer noch nicht klar), das Frontend darf nicht auf dem Netzlaufwerk liegen, das muss lokal auf jedem PC (also bei Dir auf dem PC und dem Laptop) vorhanden sein.
    Und jedes Frontend muss dann separat zum Backend verknüpft werden.
     
    gpswanderer, 22. Juli 2020
    #12
  13. Mehrbenutzerumgebung

    Vielleicht ist die Information wichtig, dass bei mir DAO/ADO nicht funktioniert. Ich kann nicht von jedem User verlangen, diese zu aktivieren und selbst wenn ich es bei mir ausprobiert habe, wurde trotz Aktivierung ein Fehler ausgegeben.

    Darum lädt die Tabellenansicht ihre Werte über die Abfrage T_Hauptaufträge, jeweils als Steuerelementinhalt. Dasselbe habe ich bei der Eingabeseite gemacht (dieselbe Abfrage aus T_Hauptaufträge), sodass mit DoCmd entsprechend in die Tabelle geschrieben werden kann.

    Liegt da evtl der Hund begraben?
     
    juschwe, 22. Juli 2020
    #13
  14. Also darf das FE auch nicht zur Verteilung auf dem Laufwerk liegen?

    Meine Idee war, gerade wegen der Demophase, das FE auf dem Laufwerk zu speichern, sodass es von dort auf jeden Rechner kopiert werden kann. Dieses FE hat auch die richtigen Verlinkungen.
    Dieses FE habe ich dann auf den PC und den Laptop kopiert, Links bestehen weiterhin. Im Laptop (nicht Autor-Gerät) kann ich die Tabellen auch gar nicht neu verknüpfen (siehe Screenshot).
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    juschwe, 22. Juli 2020
    #14
  15. Also manchmal ist das Problem echt leicht zu lösen. Danke an alle und vor allem an @Folgorth .
    Dein Kommentar zum Thema Read Only hat mich jetzt ne ganze Nacht lang wach liegen lassen und ich habe einiges recherchiert.
    Ursprünglich habe ich überlegt, das Recordset der Tabelle auf Snapshot zu legen. Sofern ich das Verstanden habe, liefert das aber nicht das gewünschte Ergebnis, da dies ja faktisch nur ein Mirror-Event aufwirft.

    Nachdem ich ein paar Videos zu Read Only geschaut habe, die augenscheinlich doch nur mit dem GUI / FE zu tun hatten, habe ich es einfach mal riskiert:

    Die Tabelle verfügt über kein Recordlock ( Code:
    ), da hier keinerlei Änderungen vorgenommen werden sollen. Ensprechend sind Code:
    Im Endlosformular habe ich sämtliche Textboxen auf Code:
    und Code:
    gesetzt.

    Im Eingabeformular habe ich alles auf "Standard" und Code:
    .

    Die Tabelle verfügt weiterhin über das Requery-Event. Und sieheda, die einfachste Lösung funktioniert. *grins
    Jetzt muss ich nur noch hinbekommen, dass im Endlosformular keine Markierung gesetzt wird, damit nicht der Anschein erweckt wird, hier könnte editiert werden. Und ich muss noch prüfen, ob das Requery-Event tatsächlich notwendig ist, da das Flackern echt auf den **** geht. Sonst möchte keiner Freiwillig das Formular bei einer Teambesprechung offen haben. *frown.gif*
    Und ich werde noch einen Weg suchen, wie ich eine Fehlermeldung ausgeben kann, wenn der Datensatz bereits verwendet wird, sodass sich die anderen User nicht wundern.

    Danke an euch alle
     
    juschwe, 22. Juli 2020
    #15
Thema:

Mehrbenutzerumgebung

Die Seite wird geladen...
  1. Mehrbenutzerumgebung - Similar Threads - Mehrbenutzerumgebung

  2. Access 2010 in Mehrbenutzerumgebung mit 20 Usern?

    in Microsoft Access Hilfe
    Access 2010 in Mehrbenutzerumgebung mit 20 Usern?: Hallo, ich habe folgendes Projekt: • Access 2010 – Datenbank in Frontend-Backend-Architektur zu entwickeln.. • .. für eine öffentliche Behörde (Arbeitsagentur) • Mehrbenutzerumgebung, ca. 10...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden