12. November 2019 13:46
Guten Tag,
ich frage einfach mal in die Runde, wie ihr in der Page 981 die Summe der ausgewählten Zahlungen addieren und im Grid unter der Liste anzeigen lassen würdet.
In der Theorie total simpel, aber NAV lässt mich hier gerade im Stich...
Liebe Grüße
12. November 2019 16:57
Ich habe nun viel zu viel Zeit in die Problematik gesteckt und den Fehler bzw. einen Workaround gefunden.
Mein Problem war folgendes:
1. Globale Variable in einem Grid verlinkt
2. Wert berechnet und in Globale Variable geschrieben
Erwartetes Ergebnis: Berechneter Wert wird immer (global) angezeigt.
Ergebnis: Berechneter Wert wurde jedoch Zeilenweise gespeichert. Beim Navigieren durch die Zeilen, gab es immer den Wert zum Zeitpunkt der Berechnung (Wert wurde hinter dem OnValidate berechnet.)
Nachdem ich etwa 100 verschiedene Arten zum errechnen und einfügen ausprobiert habe (Verschiedene Trigger usw.), habe ich durch Zufall entdeckt, dass wenn etwas in dem OnAfterGetCurrRecord steht, das Verhalten von NAV grundlegend geändert wird.
Schreibt man beispielsweise "if 1=1 then;" in den OnAfterGetCurrRecord-Trigger, dann wird der Wert nicht mehr Zeilenweise, sondern Global über alle Zeilen hinweg, gespeichert.
JA richtig gehört und JA, das hört sich definitiv komisch an!! Mir auch absolut schleierhaft, was hier im Hintergrund passiert.
Ich vermute, es hängt mit dem Record, der als temporär Tabelle definiert ist, zusammen, da ich dieses Verhalten sonst noch nirgends in Erfahrung bringen konnte.
Ich wäre sehr dankbar, wenn dies mal jemand mit langjähriger Erfahrung testen könnte.
Übrigens gab es das gleiche Verhalten in meiner Extension (AL) und CSide (C/AL).