NAV Service Tier - Data caching - NAV 2018
skiddoo
Member Posts: 19
Hello,
I'm running NAV 2018 CU1 and ran into the following problem.
I updated a record in the NAV database via SQL statement but my NAV client did not get the updated data.
How to reproduce
You two options now
1. restart Service tier
2. open the table and press F5 to reread the records
Is there a way to force the service tier to reload the data from the database without restarting it?
Regards
Benjamin
I'm running NAV 2018 CU1 and ran into the following problem.
I updated a record in the NAV database via SQL statement but my NAV client did not get the updated data.
How to reproduce
- Open NAV demo database with development environment
- Create a CU with following code:
<blockquote>
Location : Record 14
Location.get('BLAU');
Message('%1',Location.Name);
</blockquote> - Run Codeunit. Result = "Blaues Warenlager" (in german demo database)
- DO NOT CLOSE THE development environment
- run following statement on the NAV demo database
select Code,Name from [CRONUS AG$Location] where Code = 'BLAU'
update [Cronus AG$Location] set Name = 'Hello World'
select Code,Name from [CRONUS AG$Location] where Code = 'BLAU' - Result: Location name is changed to 'Hello World'
- Run the Codeunit from step 2 again
- Result: Name is still "Blaues Warenlager"
You two options now
1. restart Service tier
2. open the table and press F5 to reread the records
Is there a way to force the service tier to reload the data from the database without restarting it?
Regards
Benjamin
0
Answers
-
This is one of the reasons why updating data from SQL is not supported/recommended.
Try calling SELECTLATESTVERSION, it clears the session cache. It may help, but if you use it too much you will slow down your system by forcing the NST to reread the data.
Slawek Guzek
Dynamics NAV, MS SQL Server, Wherescape RED;
PRINCE2 Practitioner - License GR657010572SG
GDPR Certified Data Protection Officer - PECB License DPCDPO1025070-2018-030 -
Thanks. I just hoped for a Powershell cmdlet like "Flush-Cache" or something similar. Because sometimes I need to update data via SQL because of a nasty bug and I do not want to kick all users just because of this data correction.0
-
I am not aware of anyting like this in powershell I'm afraid. I think that the data will be also refreshed when a user hits Refresh on the Page, but that's just yet another manual workaroundSlawek Guzek
Dynamics NAV, MS SQL Server, Wherescape RED;
PRINCE2 Practitioner - License GR657010572SG
GDPR Certified Data Protection Officer - PECB License DPCDPO1025070-2018-030
Categories
- All Categories
- 73 General
- 73 Announcements
- 66.7K Microsoft Dynamics NAV
- 18.8K NAV Three Tier
- 38.4K NAV/Navision Classic Client
- 3.6K Navision Attain
- 2.4K Navision Financials
- 116 Navision DOS
- 851 Navision e-Commerce
- 1K NAV Tips & Tricks
- 772 NAV Dutch speaking only
- 617 NAV Courses, Exams & Certification
- 2K Microsoft Dynamics-Other
- 1.5K Dynamics AX
- 327 Dynamics CRM
- 111 Dynamics GP
- 10 Dynamics SL
- 1.5K Other
- 990 SQL General
- 383 SQL Performance
- 34 SQL Tips & Tricks
- 35 Design Patterns (General & Best Practices)
- 1 Architectural Patterns
- 10 Design Patterns
- 5 Implementation Patterns
- 53 3rd Party Products, Services & Events
- 1.6K General
- 1.1K General Chat
- 1.6K Website
- 83 Testing
- 1.2K Download section
- 23 How Tos section
- 252 Feedback
- 12 NAV TechDays 2013 Sessions
- 13 NAV TechDays 2012 Sessions
