Domino 9 und frühere Versionen > ND7: Entwicklung

Speicherkonflikte

<< < (2/2)

koehlerbv:
Hallo Katrin,

hast Du in dieser Maske ein oder mehrere RichText Items, die der Benutzer nach Button-Betätigung noch ändern könnte, bevor er ggf. dann auf dem normalen Wege speichert? Ist Dir die Diskrepanz zwischen Backend und Frontend bekannt? Weisst Du, was in durch diesen Konflikt in Deinem Konstrukt eventuell schief laufen könnte?

Bernhard

Pidray:

--- Zitat von: gossifu am 11.12.09 - 22:47:35 ---$UpdatedBy und $Revisions

--- Ende Zitat ---
da mehrere Leute die Buttons drücken dürfen, sind beide Felder mit mehreren Einträgen versehen. Allerdings kann ich Zeit und Benutzer nicht einander zuordnen.


--- Zitat von: gossifu am 11.12.09 - 22:47:35 ---Oder gibt es Aktion vor, während oder nach dem Bearbeiten (Maskenereignisse)?

--- Ende Zitat ---
Maske:
- in Querymodechange habe ich ein Script, welches je nach UserRoles Continue = True oder False zurückgibt.
- onSubmit beinhaltet @GetField + @SetField (und kein Save)

(Restinfos in der Antwort an koehlerbv)

Gruß
Katrin

Pidray:

--- Zitat von: koehlerbv am 12.12.09 - 01:21:42 ---hast Du in dieser Maske ein oder mehrere RichText Items, die der Benutzer nach Button-Betätigung noch ändern könnte, bevor er ggf. dann auf dem normalen Wege speichert?

--- Ende Zitat ---
Ich habe 3 Felder, welche ich durch einen separaten Button im Lesemodus nach Neuanlage eines Dokumentes fülle - s. mein Problem (Vorarbeits-Felder mit Text + Link) http://atnotes.de/index.php/topic,45751.msg298158.html#msg298158. Davon waren zwei noch auf "Bearbeitbar" anstatt "Berechnet" gesetzt. Diese habe ich vor kurzem alle auf "Berechnet" mit Wert="" geändert. Ansonsten habe ich noch ein änderbares RT-Bodyfeld.
Die Konflikt-Meldung erscheint z.B. wenn der Benutzer im Edit-Modus zwei Buttons nacheinander drückt.


--- Zitat von: koehlerbv am 12.12.09 - 01:21:42 ---Ist Dir die Diskrepanz zwischen Backend und Frontend bekannt? Weisst Du, was in durch diesen Konflikt in Deinem Konstrukt eventuell schief laufen könnte?

--- Ende Zitat ---
kurz und knapp: Nein. Nein.

Anmerkung:
Meine DB ist eine Art kleiner Workflow. In der Maske gibt es verschiedene Abschnitte, welche je nach Inhalt vorheriger Felder verborgen bzw. angezeigt werden. In den Abschnitten gibt es mehrere Buttons, welche per @SetField diverse Protokoll-Text-Felder füllen und @MailSend auslösen, damit die Nachfolger wissen, dass sie loslegen können. Abschließend beinhalten die Buttons die Befehle @Command( [FileSave] );   @Command( [RefreshHideFormulas]), welche ich für die Verursacher der Konflikte hielt - obwohl diese Felder vorher auch schon so enthalten waren und fehlerfrei funktionierten.
Ich hab sogar im Administrator geschaut: ich war zur Konfliktzeit einziger Benutzer der Datenbank.

Ein weiteres Phänomen: meine o.g. drei Vorarbeitsfelder werden eigentlich erst im Lesemodus per Button gefüllt. Ich habe aber Dokumente, welche nach Bearbeitung ("Knöpfchen-drücken") diese Felder mehrfach enthalten (Doppeleintrags-ID: 0/1/2) - und keine Ahnung, woher das kommt, da nur ich den Vorarbeits-Button sehe und drücken kann.
Wenn ich in einer Ansicht stehe und per Agent @DeleteField ausführe, sehe ich in den Eigenschaften, dass diese Felder weg und Bruchteile von Sekunden später wieder 2fach vorhanden und gefüllt sind ...

Deshalb habe ich aufgehorcht als ich vom einem Programm zum Vergleichen verschiedener Versionen geschrieben hattet ...

Gruß
Katrin  ???

Edith merkt an: das tritt in der Schablone nicht auf, nur in der *.NSF

Pidray:

--- Zitat von: koehlerbv am 12.12.09 - 01:21:42 ---hast Du in dieser Maske ein oder mehrere RichText Items ...

--- Ende Zitat ---
Ich hab mal eine ältere Sicherung angeschaut:
die drei Vorarbeits-Felder waren damals Textfelder + "Berechnet beim Anlegen",
in der aktuellen Version sind es Richtextfelder + "Berechnet".

Sollte dies wirklich der Grund für die Probleme sein ?

Gruß
Katrin

gossifu:
Hallo Katrin,

Frontend ist die Instanz, deines Dokuments, welches Du gerade bearbeitest. Backend ist die Instanz, welche in der Datenbank gespeichert ist.
Beim Speichern werden die Änderungen des Frontends in das Backend geschrieben.

Es könnte daher gut möglich sein, dass einer Deiner Prozesse das Backenddokument ändert, während Du das Frontenddokument zum bearbeiten geöffnet hast. Dafür spricht auch der Button im Lesemodus.

Hast Du schon beide versionen verglichen? Oder kannst Du mal den Code der Buttons vollständig posten. Ohne Namen versteht sich.
Wenn nur Code in den Knöpfen ist, dann liegt auch hier die Ursache.

mfg

Kjeld

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln