Access XP: Laufzeitfehler 3021

Hallo,

ich habe eine in Front- und Backend gesplittete Access-Anwendung.
Im Frontend gibt es ein Formular, das eine Auswahl-Combobox hat und mit folgendem Code die Daten auswählt:

Sub cboSelect\_AfterUpdate()
 Me.RecordsetClone.FindFirst "[ID] = " & Me![cboSelect]
 Me.Bookmark = Me.RecordsetClone.Bookmark
End Sub

(Das ist, wenn ich mich recht entsinne, der von Access generierte Standard-Code).

Die dazugehörige Tabelle hat ca. 1.900 Datensätze.

In der Combobox erscheinen die Einträge sauber gelistet, allerdings erscheint nach Auswahl aus dem Dropdown der Laufzeit-Fehler 3021 (Kein aktueller Datensatz).
Das gleiche passiert, wenn man neue Datensätze eingeben will.

Merkwürdigerweise funktioniert dieses Formular schon seit Jahren unverändert (die Anwendung war ursprünglich in Access 97 und wurde nach XP konvertiert) - das Problem tritt erst seit heute Morgen auf, noch dazu bei einem Benutzer, der gerade 500 km entfernt sitzt. Ich kann es hier nicht reproduzieren.

Reparaturläufe auf Front- und Backend waren erfolglos.
Das Backend ist ein Replikat.

Danke für Eure Antworten

Gruß
Stefan

Hallo Stefan,

das Konvertieren ist das „Problem“. Richtige Reihenfolge wäre 97 - 2000 - XP. Du hast eine „Station“ übersprungen! Dadurch sind die Referenzen NICHT mehr aktuell.

Lösung: überprüfe die Referenzliste des Frontend - Programms bei Dir und Deinem Kunden. Alle nicht vorhandenen Module müssen hinzugefügt werden.

Passiert überigens nur, wenn man beide Versionen auf einem Rechner laufen hat! Wie bei allen Entwicklern :smile:

Gruß
Wolfgang

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Lösung: überprüfe die Referenzliste des Frontend - Programms
bei Dir und Deinem Kunden. Alle nicht vorhandenen Module
müssen hinzugefügt werden.

Werde ich versuchen, bin allerdings sehr pessimistisch. Die Konvertierung nach XP ist schon ein halbes Jahr her.

Passiert überigens nur, wenn man beide Versionen auf einem
Rechner laufen hat! Wie bei allen Entwicklern :smile:

Ist bei mir nicht der Fall :wink: Ich habe ein „altes“ System auf VMware mit NT 4 und Access 97 und ein neues System mit Win XP / Access XP.

Danke jedenfalls schonmal. Als Pessimist frage ich: hat jemand weitere Ideen?

Stefan

Hallo,

Lösung: überprüfe die Referenzliste des Frontend - Programms
bei Dir und Deinem Kunden. Alle nicht vorhandenen Module
müssen hinzugefügt werden.

Habe ich zwischenzeitlich gemacht, aber leider erfolglos.

Stefan

Lösung: überprüfe die Referenzliste des Frontend - Programms
bei Dir und Deinem Kunden. Alle nicht vorhandenen Module
müssen hinzugefügt werden.

Habe ich zwischenzeitlich gemacht, aber leider erfolglos.

Stefan

OK, füge die Referenz DAO 2,5 hinzu, und setze dessen Reihenfolgeposition vor allen anderen DAO und ADO Referenzen.
Neustart des Programms und bitte nochmal testen.

Gruß
Wolfgang

wenn du sagst, esging vorher, muss ja irgendwas in die grütze gegangen sein.

idee 1: backend komprimieren
idee 2: wenn das frontend keine mde ist, mal den schalter /decompile benutzen (oder gibt´s den in xp vielleicht nicht mehr)

uni

OK, füge die Referenz DAO 2,5 hinzu,

Sorry, ich habe kein DAO 2.5

Gruß
Stefan

idee 1: backend komprimieren

Hatte ich schon, erfolglos.

idee 2: wenn das frontend keine mde ist, mal den schalter
/decompile benutzen (oder gibt´s den in xp vielleicht nicht
mehr)

Den Schalter gibt’s noch. Werde es ausprobieren, sobald ich an das Kunden-File rankomme.

Gruß
Stefan

Sorry, ich habe kein DAO 2.5

Sorry Stefan, diese Dinge beziehen sich nicht auf Deine DB, da diese ja ordentlich läuft, sondern auf die Deines Kunden.

Wenn alles nichts hilft, (beim Kunden) Office noch mal neu installieren. Vielleicht wurden einige DLL’s „verbogen“, als er ein anderes auf DAO/ADO basierendes Programm installiert hat.(T-Online 5.0 z.B.)

Gruß
Wolfgang

Sorry Stefan, diese Dinge beziehen sich nicht auf Deine DB, da
diese ja ordentlich läuft, sondern auf die Deines Kunden.

Auch der hat kein DAO 2.5

Wenn alles nichts hilft, (beim Kunden) Office noch mal neu
installieren.

Das sehe ich auch als Möglichkeit (wie in so vielen Fällen).

Vielleicht wurden einige DLL’s „verbogen“, als
er ein anderes auf DAO/ADO basierendes Programm installiert
hat.(T-Online 5.0 z.B.)

Der Kunde installiert auf dieser Maschine keine eigene Software. Es handelt sich um ein Gerät, das von uns administriert wird.

Stefan

Erledigt, Danke an alle

/decompile benutzen

Hat leider auch nichts gebracht.

Ich habe zwischenzeitlich dem Kunden eine neue Frontend-Datei zukommen lassen, damit geht’s.

Ich verbuche das jetzt unter Erfahrungswerte und stecke keine weitere Zeit mehr in die Fehlersuche.

Trotzdem Danke für Eure Infos.

Stefan