Getting Started Programming with NAV

I’ve recently inherited a Dynamics NAV installation and have been tasked to do some integration work between Navision and SharePoint. I’m a C# developer so that would be my language of choice. Based on a few threads here I have obtained the Application Designer’s Guide for Navision along with the eBook Programming Microsoft Dynamics NAV. These are great resources but it will take me some time to process. Can anyone offer me some quick and dirty tutorials? How do I access the database from a C# application? How complex is it to extract and insert data into Navision from a C# application? Any help getting started would be much appreciated.

Are you talking about David Studebaker’s book called “Programming Microsot Dynamics NAV”? I didn’t know that was available as an ebook. May I ask where you got that?

What will limit your options is the required functionality, as it is impossible to execute NAV business logic from outside an actual NAV process, or without including a NAV process such as NAV Application Server (NAS) in your solution. Your best bet will be to use Employee Portal, which is the official NAV-Sharepoint integration product, and there is an installation guide on the NAV product disk.

Other than that there is C/FRONT, which is kind of an API into NAV, but is very limited, and does not execute NAV business logic. You could go directly into SQL Server, but again that will not include the NAV business logic, and I would not advise going that route either. Any NAV process (at least the ones that involves writing to the core tables, which necessitates executing business logic) should be written in C/AL. That is really the only way to make sure that business logic runs and data integrity can be ensured.

Here’s the link to the eBook: http://www.packtpub.com/Microsoft-.NET-Dynamics-NAV-5.0-ERP-Navision/book

Basically what I’ve been tasked to do is to pull over specific information and store that in a SharePoint list where, based on role, users can update records. Updates made in SharePoint would then be posted back to NAV. This allows access to specific NAV data without giving them access to the actual NAV system. I had planned to write a SharePoint timer job that pulls over the data from NAV based on business logic and then use an event handler to update NAV when the item is updated in SharePoint. I wasn’t aware of the SharePoint/NAV integration called Employee Portal. I’ll have to do some research to see if that will meet our needs. Thanks for the quick response!

You’re welcome, glad to be able to help out. If you end up developing something new, make sure that writing records back to the NAV database is done by a NAV process, like a NAS instance that monitors a message queue or a TCP/IP port. That way you can run business logic within the NAV process, and you can send/receive message using familiar mechanisms.

Thanks for the link, I didn’t know that book was available electronically [Y]