Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: Beate1953 am Oktober 28, 2014, 14:10:16

Titel: MehrbenutzerBetrieb
Beitrag von: Beate1953 am Oktober 28, 2014, 14:10:16
Hallo,

ich habe meine DB jetzt in Frontend und Backend aufgeteilt und teste mit zwei Computern den Mehrbenutzerbetrieb. Jetzt habe ich folgendes Problem:

Ich habe eine Tabelle, in der ich die Nummer des letzten fortlaufenden Datensatzes speichere (z.B. 3087). Aus dem Formular FMPosten rufe ich eine globale Function auf, die nach diesem DS suchen soll. Diese Function enthält u.a. die Zeile

rsPos.FindFirst "Barcode = " & Nummer

(rsPos ist ein DAO.RecordSet). Beim ersten, der diese Function aufruft findet er den richtigen DS auch korrekt. Am Ende der Function wird dann eine neue Nummer als letzter fortlaufender DS gespeichert. Wenn nun der zweite User ebenfalls dieses FMPosten öffnet und die Function aufruft, findet Access bei FindFirst den ersten DS der Tabelle(mit Nummer=1).

Woran liegt das?

Vielen Dank im Voraus
Beate1953
Titel: Re: MehrbenutzerBetrieb
Beitrag von: MaggieMay am Oktober 28, 2014, 14:38:39
Hallo,
ZitatIch habe eine Tabelle, in der ich die Nummer des letzten fortlaufenden Datensatzes speichere
das verstehe ich nicht so ganz, wenn du nur die höchste lfd. Nummer in der Tabelle speicherst, brauchst du genau einen Datensatz dafür. Den Wert könntest du dann auch mit DLookup auslesen. Und das Speichern der neuen Nummer sollte unmittelbar nach dem Auslesen erfolgen.

ZitatWenn nun der zweite User ebenfalls dieses FMPosten öffnet und die Function aufruft, findet Access bei FindFirst den ersten DS der Tabelle(mit Nummer=1).
Mit FindFirst kannst du nur das finden was du suchst, also ist in dem Fall bereits die Variable "Nummer" falsch belegt.

Zeig doch mal den ganzen Code zu diesem Kontext, dass man sich ein Bild über den Ablauf machen kann.
Titel: Re: MehrbenutzerBetrieb
Beitrag von: Beate1953 am Oktober 29, 2014, 08:26:43
Hallo,

ich habe jetzt die Function nochmal umgeschrieben und damit hat sich das Problem erledigt.

Trotzdem vielen Dank für Eure Hilfe

Viele Grüße
Beate1953