]project-open[ includes an interface to Microsoft Dynamics NAV (Navision) that allows to use ]po[ as a front-end system (project management, financial controlling, quoting and delivery note creation) while running invoicing and accounting on the NAV backend.
The integration allows for the export of the following object types from NAV to ]po[:
- Financial documents (invoices, quotes, receipts, ...),
- Customer company and contact information,
- Provider company and contact information,
- Employee information and
- the price list.
The interface consists of the following components:
- Transfer NAV data to PostgreSQL:
We have used DB-Convert several times in order to extract NAV data from a MS SQL Server database and to copy the data into temporary tables at the PostgreSQL database of the ]po[ installation. DB-Convert is scriptable and can deal with character and format conversions necessary to transfer the data.
As an alternative, a simple CSV export process could write NAV data into CSV (Comma Separated Format) plain text files. PostgreSQL can read these data very efficiently , so that this option may be preferable for very large installations (>10 million records).
- Temporary storage in PostgreSQL Tables:
We recommend to store the NAV "raw" data 1:1 into PostgreSQL tables in a separate schema (name space). Typically, such tables would be named nav.Employees, nav.Order, nav.Job etc.
We recommend to create these tables with field type "text" (unlimited varchar) without any constraints in order to avoid any chance of failure during the actual data transfer.
- Insert/Update in ]project-open[:
We use a number of PL/pgSQL database scripts in order to transform NAV attributes into ]po[ attributes before inserting or updating the ]po[ database. Please have a look a the SQL source code of the interface package for an example.
Maturity and Status
This interface is customer specific and will probably need modification in order to work with your NAV installation. Please [contact us] for details on how we can help you with this task.