2015-07-15 14 views
7

Hintergrund:Edits verirren

Split Access-Datenbank, maximal zwei Benutzer. Das Back-End befindet sich auf einem der beiden Computer auf einem zugeordneten Laufwerk und das Front-End ist lokal. Die Computer sind über WLAN mit dem Router verbunden. (Ich versuche erfolglos, sie die Computer über Kabel verbinden zu lassen)

Edit: Dieses Problem tritt jetzt in einer einzelnen Benutzerumgebung auf.

Problem:

Dies wird auf eine spezifische Form geschieht nur. Die zugrunde liegende Tabelle hat ein mehrwertiges Feld.

Problem 1: Wir haben eine Situation, in der ein Feld bearbeitet wird, aber sobald sich der Fokus auf ein anderes Feld bewegt, wird die Bearbeitung wieder auf ihren ursprünglichen Wert zurückgesetzt.

Problem 2: Wenn Sie ein Feld bearbeiten, erhalten einige der anderen Felder die Werte des zuvor angezeigten Datensatzes.

Hinweis: Navigation von einem Datensatz zum anderen erfolgt wie folgt:

Me.RecordsetClone.FindFirst "ID = " & cmbLocateRecipientID 
    Me.Bookmark = Me.RecordsetClone.Bookmark 

Die Ausgaben nur occassionaly passieren.

Dies ist ein extrem seltsames Verhalten seitens Access, und als die Benutzer zuerst die Probleme meldeten, war ich überzeugt, dass sie irrtümlich Informationen in einen anderen Datensatz eingegeben haben. Seither haben sie mir jedoch gezeigt, dass das Problem live passiert.

Schließen und erneutes Öffnen des Formulars löst das Problem. Sie können jedoch offensichtlich nicht auf diese Weise arbeiten.

Ich kann das Problem nicht auf meiner Entwicklungsmaschine reproduzieren.

+0

Ich würde versuchen, herauszufinden, ob WiFi-Verbindungen die Ursache des Problems sind. Richten Sie einen Testbenutzer ein, um eine Verbindung über den Remote-Desktop mit dem Computer herzustellen, der die freigegebene Back-End-Datenbank hostet. Wenn das Problem der verlorenen Bearbeitung in diesem Kontext verschwindet, können Sie diese Tatsache als Beweis für Ihre Empfehlung verwenden, dass sie kabelgebundene Verbindungen für eine zuverlässige Zugriffsleistung bereitstellen. Oder sie könnten Terminal Server oder Citrix verwenden, um allen WLAN-Benutzern Remote-Sitzungsfunktionen zu geben. – HansUp

+0

Einer der Benutzer arbeitet auf dem "Server" und sie haben dieses Problem auch. Es sei denn, die Daten werden über den Router übertragen, weil das Laufwerk zugeordnet ist? Ich denke nicht, dass das Sinn macht! –

+0

Ich auch nicht.Sie können jedoch den Netzwerkarbeitszugriff für diesen Benutzer absolut ausschließen, indem Sie die Eigenschaften der verknüpften Tabelle für die Front-End-Verbindung eines Benutzers ändern, um das lokale Laufwerk anstelle der Netzwerkfreigabe zu verwenden. Aufgrund Ihres Kommentars vermute ich, dass meine Vermutung einfach falsch war. Viel Glück. – HansUp

Antwort

0

Sie können MS Access nicht in einem drahtlosen Netzwerk verwenden, da "wireless" keine dauerhafte Verbindung zwischen Frontend und Backend herstellt. Es gibt gelegentlich Dropouts, die Sie bei den meisten Dingen nicht bemerken, MS Access ist jedoch sehr empfindlich und Sie haben alle möglichen Probleme über Wireless. Sie müssen ein physisches Kabel als Verbindung verwenden.

0

mich denken würde Sie das Re-Cord-Objekt angeben und verwenden müssen:

Dim rs As DAO.Recordset 

Set rs = Me.RecordsetClone 
rs.FindFirst "ID = " & Me!cmbLocateRecipientID.Value & "" 
If Not rs.NoMatch Then 
    Me.Bookmark = rs.Bookmark 
End If 

Set rs = Nothing 

Eine ähnliche Veränderung in anderen Teilen des Codes erforderlich sein.

+0

Beachten Sie, dass die Navigation derzeit funktioniert. Daher sehe ich nicht, warum die Änderung, die Sie vorgenommen haben, einen Unterschied in Bezug auf das Problem des Datenverlusts machen sollte. Bitte erkläre, ob ich die Absicht nicht verstanden habe. –

+0

Zuerst öffnen Sie RecordsetClone zweimal. Nicht benötigt. Zweitens müssen Sie _something_ versuchen, um fortzufahren. Drittens, das ist alles was wir haben; Das Problem könnte eher durch einen Code-Lauf verursacht werden, der beim Aktualisieren ausgeführt wird. – Gustav