[gelöst]Problem beim Insert vom 1. DS

7. September 2009 14:31

Hallo liebe Gemeinder,

ich habe ein kleines Problem.

Ich habe ein Formular, in dem es Header und Lines gibt.
Wenn ich in diesem Formular den ersten DS der Lines anlege, wird der Inserttrigger der Tabelle erst dann ausgeführt, wenn ich in die nächste Zeile springe. Das Property "delayed insert" ist false. Ich kann auch nicht mit einem insert -Statement der Trigger starten.

Ich finde merkwürdig, dass ab der 2.Zeile nach dem 1.Feld dann direkt der InsertTrigger angesrochen wird.

Das frühe insert ist in soweit wichtig, da durch den Insert-Trigger einige Felder mit Werten vorbelegt werden.

Danke schon mal für Eure Hilfe!

LG
ROM
Zuletzt geändert von rom am 8. September 2009 09:07, insgesamt 1-mal geändert.

Re: Problem beim Insert vom 1. DS

7. September 2009 15:29

Nur so ´ne Idee, ich gehe davon aus, das zumindest ein Feld per Hand ausgefüllt wird (das erste)
- Zunächst müsste sichergestellt werden, das die Prim.Key Felder gefüllt sind.
- Aufdem OnDeaktivate Trigger folgenden Code ausführen (evtl. OnValidate auch).

Code:
CurrForm.UPDATE(TRUE);


Bei einem Test bei mir hats geklappt (weis nur nicht ob es das ist was du suchst!).

Re: Problem beim Insert vom 1. DS

7. September 2009 15:57

Super, danke hat funktioniert.

Was macht in diesem Fall das update. Wieso funktioniert es nicht mit dem insert.... :-?

Re: Problem beim Insert vom 1. DS

7. September 2009 16:35

:greenarrow: F1, hier werden Sie geholfen.

Nee, mal ernst. Das UPDATE aktualisiert die Form und wenn der Wert auf TRUE gestellt wird, wird vorher der Datensatz gespeichert.
Ich nutze es häufiger meistens jedoch mit FALSE als Parameter.
(Mit einem TRUE kann es auch häufiger Probleme geben, dann erscheinen so dubiose Meldungen wie z.B. "Wollen Sie den Datensatz Umbenennen")

Bei dem INSERT bin ich mir nicht sicherer was dort passieren würde (eigentlich würde ich eine Meldung wie Sinngm:"Sie durfen keinen Datensatz einfügen bevor eine Transaktion gestartet wurde).

**Edit by Mikka***
Ich war neugierig, es erscheint in der Tat die Meldung: "Sie können keine Änderung an der Datenbank vornehmen, ehe eine Transaktion gestartet wurde"
Anbei der Link, falls einer von Euch dieses Problem umgehen muss: [gelöst] autom. Datensätze einfügen beim Öffnen einer Form

Re: Problem beim Insert vom 1. DS

8. September 2009 09:06

Hallo,

danke für deine Erklärung, wieder etwas gelernt auf den Weg zur "Weisheit" :-D