Login

Willkommen, Gast

Passwort vergessen?

Home Foren Nuclos Entwicklung Makros und Regeln Frage zu Groovy Antwort auf: Frage zu Groovy

#26593

Softwareprofi
Teilnehmer

Hi Agni,

das habe ich schon alles gemacht. Arbeite schon einige Zeit mit nuclos. Das Problem ist nach wie vor da. Nochmals im Detail

Ich habe an einer Auftragsposition ein Feld NettoVK und ein Feld BruttoVK. Die beiden Felder sollen per Groovy berechnet werden. Die Berechnungsrichtung wird über ein weiteres Optionsfeld Preisvorgabe (ich gebe den NettoVK vor und berechne den BruttoVK bzw. umgekehrt) gesteuert, so steht es auch im WIKI.

Ich habe an beiden Feldern im BO Wizzard ein Berechnungsskript hinterlegt, das abhängig von der Berechnungsrichtung (über das Optionsfeld Preisvorgabe) ausgeführt wird. Das funktioniert auch tadellos.

Nun möchte ich zusätzlich zur Berechnung das jeweils nicht benötigte Feld sperren. Also wenn ich den NettoVK vorgebe und der BruttoVK berechnet werden soll (Einstellung über das Optionsfeld), soll das Feld BruttoVK inaktiv sein. Dafür habe ich am Layout ein Skript für das Feld unter Aktiv dyn. hinterlegt. Das Skript fragt das Optionsfeld ab und je nachdem was dort steht sperrt es das Feld. Das funktioniert aber nicht!!! Wenn ich das Optionsfeld verändere, wird diese Änderung im Skript nicht ausgegeben (sie kommt dort nicht an). Insofern werden die Felder auch nicht gesperrt/aktiviert. Das zeigt auch die Logausgabe: Die Berechnungsskripte geben die Änderung des Optionsfeldes Preisvorgabe korrekt zurück und die Berechnung wird somit korrekt ausgeführt. Die Skripte am Layout unter Aktiv dyn. geben die Änderung des Feldes Preisvorgabe nicht zurück somit werden die Felder nicht gesperrt/aktiviert.

Update: Ich habe noch folgendes herausgefunden:
Wenn ich speichere (und nur dann!!!), wird das Optionsfeld Preisvorgabe an die Skripte unter Aktiv dyn. ausgegeben. Dann werden die Felder NettoVK und BruttoVK auch korrekt gesperrt/aktiviert.

Fazit: Wenn ich das Optionsfeld Preisvorgabe ändere und nicht speichere, funktionieren die Berechnungsskripte aber die Skripte am Layout unter Aktiv dyn. nicht. Wenn ich das Optionsfeld Preisvorgabe ändere und anschließend speichere funktioniert beides.
Das ist so falsch, denn die Skripte unter Aktiv dyn. müssen auch ausgeführt werden, wenn das Optionsfeld Preisvorgabe geändert wird, der Datensatz aber nicht gespeichert wird. Ansonsten brauche ich hier kein Groovy.

Ich hoffe das ist verständlich ausgedrückt. Ist leider etwas schwierig zu beschreiben. Könnte das vielleicht ein Bug sein?

Ich hoffe es gibt dafür eine Lösung.

Danke schonmal.

  • Diese Antwort wurde geändert vor 11 Monaten von Dieter Mennig.
  • Diese Antwort wurde geändert vor 11 Monaten von Dieter Mennig.