Hello everybody!
We found out that there seems to be a bug in the NAV-Client (finsql.exe or ndbcs.dll). This bug results in objects beeing reset to an older version just by compiling them in the Object Designer. The problem only seems to show up when SQL-Server is used. It doesn't appear on the Navison Native Server.
Following Scenario:
1. (Basic Situation):
Two Developers (A and
are programming on a NAV-Database which is stored on a central SQL Server. Both have the NAV object Designer opened and of course they both are working with a developer licence.
2.
Developer A modifies a NAV-Object (for testing you can modify the documentation trigger of an existing object an write down the current time there). He compiles and saves it within the C/AL-Code-Editor. Then he closes the C/AL-Editor.
3.
Developer B compiles that NAV-Object (the one that was just modified from Developer A) by pressing F11 in the Object Designer.
4.
Developer A (or
opens this object with the C/AL-Editor. All the changes that were made in 2.) are gone (the documentation trigger is empty again). They were deleted just because Developer B has compiled the object within the object designer!!
I found out that closing and reopening the object designer before F11 is pressed prevents this problem. Anyway - we lost a lot of code because of that (collegues needed to compile all objects - so they erased a lot of changes that were made on that day by other collegues in many objects). Even setting the object cache to 0 KB (closing and restarting the client and starting the whole scenario all over again) does not improve the situation. It seems that the NAV-Client does not check if the somehow cached version of the object (although with object cache = 0 KB so there shouldn't be any caching) is the same as the one within the database before it is compiled and so just overwrites it (dirty read!).
We used SQL Server 2005 (Build 3159) and NAV 4.0 SP3 with Builds 24219 and 25143. The results were all the same.
Have you already experienced this problem? I haven't found any documentation so far?!?
Do you know any other workarounds to prevent this?
Thanks in advance!
Best regards!
Comments
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
Independent Consultant/Developer
blog: https://dynamicsuser.net/nav/b/ara3n