Introduction

 

 

 

Product Manager

Alfred B. Thordarson

Contact Alfred for further information

NETConductor compared to Dyamics NAV 2009 Web Services

When Microsoft introduced Dynamics NAV 2009, web service access to NAV was included in the package. As the NETConductor provides web service access to NAV it makes sense for Rue de Net to make comparison research in order to know where the NETConductor stands.

The following chapter contains the feature comparison matrix which resulted from our work. The chapters thereafter contain some overview of the main points to make when comparing the two. For a more detailed comparison report (including code snippets) feel free to be in touch.

NETConductor Feature Comparison with NAV2009

Simple Setup

Installing the NETConductor is a breeze. The install wizard takes you through the necessary steps to create and setup the website access to its web services and as for Dynamics NAV, a single FOB file is included which has to be imported. That's all there is to it.

Table Access

The NETConductor provides you with access to operations such as select, insert, modify and delete on any table within Dynamics NAV without any prior work required, apart from installing the NETConductor.

CodeUnit Access

The NETConductor provides access to all CodeUnits without any prior work required. Access to all functions within CodeUnits is also possible, although this requires minimal changes to the CodeUnit.

XML vs. Complex Types

The NETConductor uses XML to communicate complex information. Simple replies, containing a set of records, can be requested using the general SelectFromTable operation. This requires no additional work from within Dynamics NAV. More complex replies are also available including collections of strings, numbers, dates, single records, record sets or even multiple records from multiple tables. Such replies are returned through the RunCodeUnit operation and then the NAV CodeUnit must be pre-written.

Dynamics NAV uses so-called complex types to communicate complex information. Complex types are information encapsulated inside a programming language data object. Only Dynamics NAV Pages allow for such complex data types, since they return records. These complex types are created automatically once a web service has been consumed by Visual Studio. As a result, if any changes are made to the Table or Page within Dynamics NAV these complex types must be regenerated and the consuming application recompiled.

Since however the NETConductor uses XML, only the mapping of XML nodes must be changed if a Table's structure is modified.

Complex Parameters

Using the NETConductor, complex information can be passed as parameters to CodeUnits and the CodeUnits can also return replies containing complex information. This includes collections of strings, numbers, dates, single records, record sets or simply any information encapsulated within Xml.

Dynamics NAV 2009 web services only allow CodeUnit's to return primitive types, no records or record sets. Only Dynamics NAV Pages are able to accept a complex type, used when inserting a new record into a Table.

Temporary Records

Other benefits of the NETConductor’s use of XML are its ability to enable CodeUnit's to return records from temporary tables. This is something Dynamics NAV 2009 is not able to perform.

Report & XmlPort Access

Access to all Reports and XmlPorts is also made possible via the NETConductor.

Access External Web Services

The NETConductor also has the ability, via its Invoker Automation, to invoke web service methods from within Dynamics NAV. This is a huge benefit and provides a lot of possibilities to Dynamics NAV capabilities.

Single Reference for Everything

The NETConductor only requires one web service reference to enable access to all of its functionality. This single reference allows you to run all your CodeUnits and access all your Tables. Dynamics NAV on the other hand requires a separate web service reference for each and every Page and CodeUnit you need for your application.

Load Balancing

The NETConductor has load balancing support to increase effectiveness of your system, which also provides improved stability in the case of a server breakdown.

Perspective

After carefully reviewing the similarities between the NETConductor and Dynamics NAV 2009, our conclusion is that, even though the NETConductor is better in some instances, there are still some ways of the Dynamics NAV web services we would like to implement into the NETConductor.

By this we especially mean the feature of the Dynamics NAV web service’s to automatically generated classes, which greatly simplify code written in Visual studio, and the ability to create and publish Pages and CodeUnits from within the NAV, which is also a very nice feature.

However, our opinion is also that Dynamics NAV feature set does not really stack up to that provided by the NETConductor. We therefore wish to continue to support the advanced features and the customizable platform which the NETConductor provides.