Bodo's Dynamics NAV und Business Central Blog

Bodo ist ein Dynamics NAV Urgestein. Er programmiert Navision seit DOS Zeiten und hat auch keine Scheu vor .NET und schon gar nicht vor Dynamics 365 oder Azure. Viele Neueinsteiger wurden von ihm in den letzten Jahren zu Entwicklern ausgebildet.

In diesem Blog veröffentlichen Bodo und andere Superhelden Interessantes aus der Welt von Dynamics 365 Business Central / Dynamics NAV und Microsoft Azure.

Dynamics NAV 2018 – SourceTableTemporary ohne Funktion

Verfasst von Bodo am Montag, 20. August 2018

Tags: bug, 2018

UPDATE: Auflösung folgt nächste Woche! 

Ich bin erschüttert.

Ich hätte Haus & Hof verwettet, dass das Setzen der Eigenschaft »SourceTableTemporary« auf einer Page (vom Typ »Card«) eine einfache Funktion hat. Nämlich dafür sorgt, dass Eingaben nicht direkt auf die Datenbanktabelle, sondern nur auf das temporäre Abbild dieser Tabelle wirken.

Dem ist nicht so.

Hier ein einfaches Beispiel zum nachvollziehen (auch zum Download »Page50000.txt«):

Wir nehmen eine Page vom Typ »Card« auf Basis der Tabelle »Customer«, setzen die Spalten »No.«, »Name« und »Name 2« in das Layout und setzen »SourceTableTemporary« auf »Yes«.

blog-2018-08-20-image1.png

Im Trigger »OnOpenPage« lesen wir den allseits bekannten Debitor aus der Datenbanktabelle und fügen ihn in unsere vermeintlich temporäre Tabelle ein. Das ist schon alles.

blog-2018-08-20-image2.png

Jetzt die Page starten und Name oder Name 2 ändern, und Sie werden feststellen, dass jede Änderung nicht temporär stattfindet, sondern auf die Datenbanktabelle durchschlägt.

Epilog: Nachdem ich dieses Verhalten zunächst für ein neues Feature von NAV 2018 gehalten habe, habe ich die gleiche Page mit NAV 2017 (RTM) und NAV 2016 (RTM) ausprobiert. Das Verhalten ist identisch. Jede Änderung schreibt in die Datenbank.

Ich bin erschüttert. Oder ums es mit Loriot zu sagen, „beim Fußball erkennt man das Ergebnis nach 90 Minuten“.


Mitglied der Dynamics NAV
Community

Microsoft Dynamics NAV community Comporsys 365 - Cloud ERP powered by Dynamics NAV
Comporsys 365 - Cloud ERP
powered by Dynamics NAV


Kontakt

Comporsys Hansa GmbH
Schulauer Moorweg 25
22880 Wedel, Deutschland

Tel. +49 (0)4103 12117 - 0
Fax +49 (0)4103 12117 - 29
E-Mail: info@comporsys.de