Softwareentwicklung mit Microsoft Dynamics NAV aka Navision

Der Softwareentwickler Blog - Navision

Da ich mich seit Kurzem mit Microsoft Dynamics NAV bzw. Navision beschäftige, möchte ich Euch einen kleinen Einblick in die Möglichkeiten geben, die uns Programmierern und Softwareentwicklern dieses Microsoft Produkt bietet. Hier also ein Überblick darüber was Navision, C/AL, C/SIDE und auch auch C/FRONT ist.

Microsoft Dynamics NAV ehemals Navision ist ein ERP-System ähnlich wie SAP. Ein großer Unterschied ist aber die Zielgruppe. Während SAP vor allem die Großunternehmen als Kundenklientel hat, so ist diese Microsoft ERP-Lösung für den Mittelstand gedacht.

Warum schreibe ich eigentlich immer Microsoft Dynamics NAV beziehungsweise Navision?
Das Produkt wurde von einer dänischen Firma unter dem Namen Navision entwickelt. Dann wurde die Firma im Jahr 2002 von Microsoft aufgekauft und seit der aktuellen Version heißt das Produkt eben Microsoft Dynamics NAV.

Soviel zur Geschichte. Kommen wir mal zu den interessanteren Punkten.

C/SIDE

C/SIDE steht für Client/Server Integrated Development Environment. Ursprünglich hatte Navision eine eigene Datenbank. Durch das Integrieren in die restliche Microsoft-Produktpalette wird aber immer mehr auf den Microsoft SQL Server gesetzt.

Als C/SIDE wird die komplette Entwicklungsumgebung inklusive der Navision-eigenen Datenbank, die mittlerweile auch Native Datenbank oder Microsoft Dynamics NAV Classic Server genannt wird, bezeichnet. Bei der neuesten Version Microsoft Dynamics NAV 2009 wurde zudem ein neuer zusätzlicher Client entwickelt, der rollenbasierte Client, der nur noch durch den MS SQL Server komplett unterstützt wird. Von daher ist die Ablösung der alten Datebankstruktur voll im Gange.

C/AL

C/AL (C/SIDE Application Language) ist die Programmiersprache, in der Navision programmiert wird. C/AL ist von der Syntax her ähnlich wie Turbo Pascal. Aber Achtung: Auch wenn die Namen ähnlich klingen, C/AL hat nichts mit C++ oder C# zu tun! C/AL ist keine objektorientierte Sprache, es ist lediglich ereignisgesteuert und bietet daher bei weitem nicht solche Möglichkeiten.
Im Grunde ist der gesamte Funktionsumfang von Navision in C/AL programmiert.

Durch die Entwicklungsumgebung C/SIDE hat man also, die richtigen Entwicklerlizenzen vorausgesetzt, auf alle Abläufe zugriff und kann sie seinen Bedürfnissen anpassen und beliebig ergänzen. Hierdurch ist, wie Ihr Euch vorstellen könnt, sehr flexibel, was gerade bei der Zielgruppe KMU (Klein- und mittelständische Unternehmen) auch unabdingbar ist (ein Grund warum SAP meiner Meinung nach es einfach nicht schafft, diesen Markt zu erkämpfen).

C/FRONT

Zum Schluss komme ich auf etwas ganz Feines zu sprechen: C/FRONT. Stellt Euch vor, Ihr möchtet mit Navision arbeiten und Eure kleinen oder auch größeren Ergänzungen programmieren, wollt aber Eure gewohnte Softwareentwicklungumgebung Visual Studio nutzen. Mit C/FRONT ist genau dies möglich! Bindet einfach die dazugehörige DLL in Euer C#- oder VB.NET-Projekt ein und schon könnt Ihr die Objekte in Navision ansprechen und nutzen. Ich werde später noch ein bisschen mehr zum Thema C/FRONT nachliefern.

Soviel aber erstmal für den ersten Überblick. Ich hoffe es hat Euch gefallen! Ansonsten gebt doch mal Feedback!