Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Schreibkonflikt

Begonnen von MaxP, Dezember 11, 2024, 10:49:39

⏪ vorheriges - nächstes ⏩

MaxP

Hallo zusammen,

ich habe schon einiges zu dem besagten Schreibkonflikt (Dieser Satzsatz wirde seit Beginn der Bearbeitung ...) gelesen und kann folgendes ausschließen:
- es existiert nur ein Benutzer
- die DB ist nicht in Front- u. Backend aufgeteilt

Ich habe ein Start- bzw. Navigationsformular (HFO), dass an die Abfrage qry_Projekte gebunden ist.
Ebenso habe ich ein nicht verknüpftes Ufo, das an die Tabelle tbl_Werte gebunden ist.

Im Hfo befinden sich ein Kombifeld zur Auswahl des Projekts sowie 3 Listenfelder.
Die Projekt_ID sowie die Ids der Einträge in den Listenfeldern werden per VBA über das Ufo
in der Wertetabelle gespeichert.

Das funktioniert grundsätzlich. Gelegentlich kommt es aber zum besagten Schreibkonflikt.

Wie kann ich das vermeiden?

Gruß
Max
Win 10 pro 64 bit, Access 2003

MzKlMu

Hallo,
vermutlich sind die Felder des Formulars gebunden. Wenn dann gleichzeitig per VBA Werte geschrieben werden kommt es zu besagtem Fehler.

Bitte mal genauer beschreiben. Beziehungsbild ?
Gruß Klaus

MaxP

Hallo Klaus,

ja 3 Felder (Textfelder) sind an die Abfrage gebunden.

Wenn das HFO nicht an eine Abfrage/Tab gebunden wäre, wie soll ich dann dort neue DS erzeugen bzw. ändern?

Gruß
Max
Win 10 pro 64 bit, Access 2003

MzKlMu

Hallo,
wenn das Hafo gebunden ist, was schreibst Du dann auch noch mit VBA ?
Gruß Klaus

MaxP

#4
zum einen bekommen die Listenfelder ein requery.

Dann werden per VBA die IDs der ausgewählten DS in den Listenfeldern über das nicht verknüpfte Ufo in der Wertetabelle gespeichert.

Ich sollte noch erwähnen, dass die Abfrage auf eine aus einer anderen DB verknüpften Tabelle mit allg. Projektdaten und aus einer Tab. mit spezif. Projektdaten zugreift. Letztere wird erst durch das Setzen des Projekts im Startformular gefüllt.
Win 10 pro 64 bit, Access 2003

Knobbi38

Hallo Max,

wenn du der alleinige Benutzer bist und so einen Fehlermeldung kommt, ist dein Workflow nicht i.O.
Deine fehlerhafte Programmierung versucht einen bereits im Editmodus geöffneten DS zu ändern und genau das geht natürlich nicht und führt hier zu dem Fehler.
Da wirst du dir etwas anderes einfallen lassen müssen.

Gruß
Knobbi38

MaxP

Ich verstehe die Hintergründe nicht.
Wo ist denn das Problem?
Beim Speichern der Werte in der Wertetab. per VBA oder das HFO an eine Abfrage gebvunden ist?

Wenn ich bei der Schreibkonflikt-Meldung auf "Datensatz speichern" klicke,
macht AC doch das was ich will.
Also warum nicht gleich so?
Win 10 pro 64 bit, Access 2003

Knobbi38

Dann hast du in der Tat den Sinn der Warnung wirklich nicht verstanden. Vielleicht wird es verständlicher, wenn so eine Meldung beim Überschreiben einer Datei können würde? Der alte Inhalt wird dann zwangsweise überschrieben, bisherige Änderungen sind damit aber verloren.

Klar kann man das ignorieren, aber das ändert doch nichts an daran, daß da ein grundsätzliches Problem im Ablauf bei der Programmierung besteht und das muß geändert werden. Sei froh, daß Access dich auf so ein Problem hinweist.

Bitsqueezer

Hallo,

der Hintergrund ist, daß eine Änderung per VBA eine eigene Verbindung verwendet und damit ein "anderer Benutzer" ist, zumindest, wenn Du mit INSERT/UPDATE/DELETE arbeitest.

Gruß

Christian

MaxP

Moin,

Zitat von: Bitsqueezer am Dezember 11, 2024, 21:18:41zumindest, wenn Du mit INSERT/UPDATE/DELETE arbeitest.

Ich speichere die Werte per VBA aber ausschließlich in Form von:
me!Ufo_Werte.form!ID = me!meineID
und nicht mit INSERT/UPDATE/DELETE.
Okay, es funktioniert halt auch nicht.

Um nochmals meine Frage aufzugreifen:
Zitat von: MaxP am Dezember 11, 2024, 16:19:07Wo ist denn das Problem? Beim Speichern der Werte in der Wertetab. per VBA oder das HFO an eine Abfrage gebunden ist?

Entweder,
wenn ich nun stattdessen die Wertetabelle nicht als Ufo, sondern als eigenständiges, ausgeblendetes Formular auslagere und dort die Werte, wie oben beschrieben, speichere, wird das funktionieren?

Oder ist es besser, das Startformular nicht an eine Tab/Abfrage zu binden und einzelne Werte über INSERT oder UPDATE in der Tab. zu setzen. Dann hätte ich nur VBA, oder?

Gruß
Max

PS: Kann mir mal jemand verraten, welchen Haken man in den Einstellungen dieses Forums setzen muss, um eine Benachrichtigung zu erhalten?
Win 10 pro 64 bit, Access 2003

PhilS

Zitat von: MaxP am Dezember 12, 2024, 10:00:07PS: Kann mir mal jemand verraten, welchen Haken man in den Einstellungen dieses Forums setzen muss, um eine Benachrichtigung zu erhalten?
Dieser Link bringt dich zu den Einstellungen dafür: https://www.access-o-mania.de/forum/index.php?action=profile;area=notification
Wenn du weitere Fragen dazu hast, starte bitte einen neuen Thread in dem Board "Pro und Contra Access-o-Mania".
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

Knobbi38

Hallo Max,

kann es sein, daß du den gleichen DS sowohl im HF als auch im UF bearbeitest?

MaxP

Nein, die Wertetabelle im Ufo besitzt nur 1 DS mit den akt. IDs und wird ständig geändert.
Die Abfrage des Hfos ist völlig anders aufgebaut. Beide Formulare sind nicht verknüpft.
Win 10 pro 64 bit, Access 2003

Knobbi38

Hallo Max,

ok, dann kann ich dir dann leider nicht mehr weiter helfen. Vielleicht hat jemand anders noch eine Idee.

Gruß
Knobbi38