Rash thoughts about .NET, C#, F# and Dynamics NAV.


"Every solution will only lead to new problems."

Saturday, 1. March 2008


Integration einer Quellcodeverwaltung in Dynamics NAV

Filed under: .NET 3.0,C#,Dynamics NAV 2009,Navision,Tools,Visual Studio — Steffen Forkmann at 12:45 Uhr

Wie bereits vor einiger Zeit im Blog berichtet, habe ich für unseren internen Produktionsablauf ein Tool geschrieben, das es ermöglicht eine Quellcodeversionsverwaltung (z.B. VSS, SVN oder Team Foundation Server) direkt in Dynamics NAV zu integrieren. Jetzt habe ich mir mal die Mühe gemacht, die wichtigsten Funktionen in einem kleinen Screencast zu dokumentieren. (Dies ist jedoch erstmal nur eine Vorabversion des Videos.) 

Das Schöne an diesem Tool ist, dass man aus beiden Blickrichtungen alle nötigen Informationen zu einer Version bekommt. Ich sehe also an der Datei die Änderungshistorie mit den entsprechenden ChangeRequests oder Ticketnummern und kann auch rückwärts an einer Aufgabe sehen, welche Änderungen dafür konkret am Quellcode gemacht wurden und von wem.

Für Visual Studio-Nutzer ist das natürlich nichts neues, aber gerade im ERP-Bereich wird oft (mangels fehlender Tools) auf eine Quellcodeverwaltung verzichtet.

Tags: , , , , , , ,

Sunday, 2. December 2007


Eindrücke vom Microsoft Dynamics Technical Community Airlift – Neuerungen in Dynamics NAV 2009

Filed under: Dynamics NAV 2009,msu solutions GmbH,SQL Server,Veranstaltungen,Visual Studio,WF,WPF — Steffen Forkmann at 19:55 Uhr

Vom 29. und 30. November 2007 fand im Münchner Arabella Sheraton Grand Hotel das 1. Technical Community Airlift zu Microsoft Dynamics statt. Im Wesentlichen ging es um folgende Themen:

  • Microsoft CRM “Titan”
  • Technische Fertigkeiten für Dynamics NAV 5.1
  • Ausblick auf Dynamics AX 5.0
  • Ausblick auf Dynamics NAV 2009 (Codename NAV “6.0”) (Dynamics NAV Server)
  • Microsoft Office und Windows SharePoint Services
  • Business-Intelligence
  • Sure Step, die Implementierungsmethode für Microsoft Dynamics

An dieser Stelle möchte ich gerne etwas über die von mir besuchten Vorträge berichten.

(weiterlesen…)

Tags: , , , , , , , , , , , ,

Monday, 30. October 2006


Migration von Visual Source Safe (VSS) zum Team Foundation Server (TFS)

Filed under: msu solutions GmbH,Tools,Visual Studio — Steffen Forkmann at 10:52 Uhr

Steven Jean beschreibt in einem umfangreichen Artikel die Versionsverwaltungsfeatures des Team Foundation Server aus der Sicht von VSS-Nutzern. Er zeigt u.a. die veränderten Arbeitsabläufe und die neuen Sicherheitsfeatures die sich mit dem TFS ergeben. Eines der größten Vorteile aus meiner Sicht ist übrigens, dass beim Check-In die definierten Policies überprüft werden und so nur Code eingecheckt werden kann, der bestimmten selbstdefinierbaren Richtlinien entspricht.

Interessant in diesem Zusammenhang ist auch ein Channel 9 Video in dem John Lawrence, seines Zeichens Development Manager des “Visual Studio 2005 Team Foundation’s Source Code Management Teams”, interessante Anwendungsmöglichkeiten des Team Foundation Servers zeigt – zum Beispiel auch automatisch generierte RSS-Feeds mit den Bugmeldungen.

Tags: , , , ,

Sunday, 26. March 2006


Visual SourceSafe (VSS) Integration in Microsoft Dynamics Nav

Filed under: C#,Navision,Tools — Steffen Forkmann at 19:09 Uhr

Da es keine native Möglichkeit gibt ein Quellcode-Versionsverwaltungsprogramm in Microsoft Navision einzubinden, haben wir bei der msu solutions GmbH eine eigene Lösung zum Zugriff auf Visual Source Safe oder Subversion (SVN) implementiert. Die entstandene Lösung ist ein Hybrid aus C# 2.0 COM-Objekten und nativen Navision-Objekten.

ObjectList

Der allgemeine Arbeitsablauf gestaltet sich nun folgendermaßen:

  1. Eine Aufgabe aus dem internen Bug & Task Tracker ziehen.
  2. Statt dem klassischen “Design” im Object Designer einfach im internen Object Designer auf “Auschecken” klicken. Dadurch wird das Objekt im VSS ausgecheckt und die aktuelle Version neu ins Navision importiert und im Designer geöffnet.
  3. Nun kann man im Navision Quelltext Editor Änderungen vornehmen und evtl. weitere Objekte auschecken.
  4. Vor dem Einchecken auf “Compare” klicken. Dadurch wird ein Diff zwischen der bearbeiteten Version und der Version im VSS angezeigt. (Das Diff-Programm kann frei gewählt werden. Standardmäßig ist WinMerge eingestellt.)
  5. Im internen Object Designer auf die ausgecheckten Objekte filtern und die Objekte durch Klick auf “Einchecken” mit dem aus dem Bug & Task Tracker vorgegebenen Checkin-Kommentar ins VSS einchecken.

Als weiteres besonderes Feature ist die Versionsgeschichte zu nennen. Im internen Object Designer kann man einfach auf ein Objekt gehen und durch Druck auf “History” die Versionsgeschichte des Objektes aus dem Visual SourceSafe abrufen. Dort kann man die Checkin-Kommentare ansehen, Version-Pins versetzen und sich Diffs zwischen den verschiedenen Versionen anzeigen lassen.

Versionsgeschichte

Interessant ist auch die interne Suchen nach Objekten (und deren Versionen bzw. Differenz dazwischen) die mit einer bestimmten Aufgabe geändert wurden. So fällt das Portieren von Features zwischen verschiedenen Entwicklungszweigen wesentlich leichter.

Suche in den Versionen

So macht das Programmieren in Navision gleich viel mehr Spaß und die Versionsverwaltung ist damit fast so einfach wie im Visual Studio – da bleiben dann ja nur noch die beiden größten Navision Schwächen: Editor und Debugger 🙂

Tags: , , , , , , , , , , ,

Tuesday, 9. August 2005


Navision: Steigerung der Produktivität

Filed under: Navision — Steffen Forkmann at 10:40 Uhr

In letzter Zeit sind dank dem Einsatz von AutoHotkey einige wirklich nette Tools zur Produktivitätssteigerung und Qualitätssicherung bei uns entstanden.

So ist es jetzt endlich möglich ein Daily-Build laufen zu lassen, dass sich automatisch die neuesten Navision-Objekte vom VSS-Server holt und dann automatisch in die einzelnen Datenbanken einspielt.

Gleich daraus folgend ist ein automatisches Daily-UnitTest-Tool entstanden, dass jeden Abend automatisiert auf einem eigenen Testrechner ein frisches Build zieht und dann mit unserem UnitTest testet. Am nächsten Morgen haben dann alle Entwickler die Möglichkeit das Protokoll zu betrachten und möglicherweise Fehler vom Vortag gleich zu fixen.

Des weiteren wurde ein automatischer Patch-Generator entwickelt, der basierend auf den Differenzen vom letzten Release und dem aktuellen Stand ein Patch-File generiert und dieses testet.

Aber das wirklich allerbeste Tool, das zugegebenermaßen noch einige Kinderkrankheiten aufweist, ist eine VSS-Integration direkt ins Navision. Damit ist es endlich möglich die Objektfiles direkt im Navision auszuchecken, zu bearbeiten und dann wieder ins VSS einzucheken.

Tags: , , ,