SQL stored procedures, Replacing nav code

jannestig
Member Posts: 1,000
HI all,
Just as a general point i would be interested in peoples opinions in replacing standard NAV code with stored procedures for large posting or replication processes.
We currently have 3 in place at the moment and quite happy with the performance gains that we have acheieved under the new 5.1 client with a 4.03 base.
There is always a trade off as usualy large batches go faster and smaller batches can actually take longer, As Nav is becoming more integrated with SQL this seems to be a logical step in the right direction.
Any thoughts of the future Risks/advantages of using Stored Procs?
Just as a general point i would be interested in peoples opinions in replacing standard NAV code with stored procedures for large posting or replication processes.
We currently have 3 in place at the moment and quite happy with the performance gains that we have acheieved under the new 5.1 client with a 4.03 base.
There is always a trade off as usualy large batches go faster and smaller batches can actually take longer, As Nav is becoming more integrated with SQL this seems to be a logical step in the right direction.
Any thoughts of the future Risks/advantages of using Stored Procs?
0
Comments
-
The construcition NAV is using for reports and dataports is killing performance.
We use T-SQL very frequently to replace large batch/update processes and also to import/export large amounts of data.
Just to compare: 2 weeks ago we wrote a function in SQL that took 1 minute and 40 seconds to complete a task that took 8 hours in NAV.0 -
Replace reports and dataports with stored procedures yes I can see a benefit. Replacing posting routines though you'd have to replicate all checks and balances and make sure that all business logic is contained within those stored procedures.
I'm not saying it is impossible, just that it will take HUGE amounts of programming, and your NAV support will be null and void when you do.0 -
SQL views defined as linked objects in NAV can greatly simplify and speed up reporting using Navision.David Machanick
http://mibuso.com/blogs/davidmachanick/0 -
And if you want to keep reporting in NAV, you should separate the reporting in 3 steps:
1) parameter request (filters+option-form)
2) dataretrieval (get your data with the best keys you can find and save it in temptabels)
3) printing (print the data from the temptables).
This system can speed up a lot (though not as fast as doing all in SQL, but it remains in NAV).
I use ALWAYS this system if I have to read a lot of data for reporting or statistics (@Mark:).
Regards,Alain Krikilion
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!0 -
Although performance wise I can see the benefits, I do not think it is a good idea to start putting business logic in the database tier.Debugging is twice as hard as writing code. Therefore if you write the code as cleverly as possible you are by definition not smart enough to debug it.0
Categories
- All Categories
- 73 General
- 73 Announcements
- 66.6K Microsoft Dynamics NAV
- 18.7K 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
- 320 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