[Gelöst] Execute wird im Plugin mehrfach aufgerufen

24. August 2011 13:48

Hi.

Ich bin dabei, ein Plugin für Quotations zu schreiben.
Beim Debuggen stelle ich fest, dass der Inhalt des Execute mehrfach nacheinander durchlaufen wird, so ca 5x.
Die Variablen durchlaufen dabei immer wieder den gleichen Zustand, als wenn es keinen vorigen Durchlauf gab.

Woran liegt das?
Wie kann es sein, dass das Execute mehrfach aufgerufen wird?
Was muss ich ändern?

Vielen Dank für Hilfen!
WE34
Zuletzt geändert von we34 am 31. August 2011 09:34, insgesamt 1-mal geändert.

Re: Execute wird im Plugin mehrfach aufgerufen

24. August 2011 16:11

Hallo,

auf welches Ereigniss bzw. Ereignisse hast du das PlugIn registriert? Kann es sein, das due mehrere Events abfängst und alle getriggert werden? Oder das dich dein Plugin selbst rekursiv aufruft?

Re: Execute wird im Plugin mehrfach aufgerufen

26. August 2011 09:12

Hallo.

Ich hab es mit dem PluginRegistrationTool als Step "Create of quote in Parent Pipeline" registriert (Zuvor zusätzlich auch als "Update...", aber dieses Deaktivieren hat keine Besserung gebracht).

thx!
WE34

Re: Execute wird im Plugin mehrfach aufgerufen

26. August 2011 14:46

Hallo.

Michael Sulz hat geschrieben:Oder das dich dein Plugin selbst rekursiv aufruft?


Wo(durch) könnte denn so etwas passieren?


WE34

Re: Execute wird im Plugin mehrfach aufgerufen

28. August 2011 10:34

Hallo,

Michael Sulz hat geschrieben:Oder das dich dein Plugin selbst rekursiv aufruft?


Wo(durch) könnte denn so etwas passieren?

Das du z.B. das PlugIn auf das Update Event einer Entität reagiert und du im PlugIn diese Entität wieder änderst, dadurch würde das PlugIn neu getriggert.

Re: Execute wird im Plugin mehrfach aufgerufen

29. August 2011 16:47

Hallo.

Okay, das klingt logisch.

Wenn aber das Plugin auf Update reagieren soll und im Execute eine Änderung von Daten gemacht werden soll, muss ich dann nicht dort
Code:
service.Update(quote);
setzen?
Oder wie ist es dann zu bewerkstelligen?

Ich verstehe jetzt das Problem, weiß aber nicht, wie es zu lösen ist.
Einerseits soll es durch eine Änderung (Update im Registration Tool) ausgelöst werden, andererseits soll darin Attribute geändert werden (Update im Execute)..... :-(

WE34

Re: Execute wird im Plugin mehrfach aufgerufen

30. August 2011 09:24

Hallo,

doch, die ausführung mit update ist richtig.

Ich prüfe in so einem Fall immer in meiem PlugIn, ob sich der Wert des Feldes geändert hat und wenn nicht, beende ich direkt das PlugIn. So wird sichergestellt, das das PlugIn nur läuft, wenn sich auch das Feld, das ich überwachen möchte, tatsächlich geändert hat. (Pre und Post Image vergleichen)

new Quote: Quote-ID?

30. August 2011 14:08

[ Habe die Frage wo anders platziert : viewtopic.php?f=6&t=13699]

Re: Execute wird im Plugin mehrfach aufgerufen

31. August 2011 09:33

Hallo.

Danke für den Hinweis.
Mir war nicht bekannt, dass es hier so gehandhabt wird.
*sry* :oops:

WE34