Entwicklung vertikaler Lösungen (Solution Development)

Die Entwicklung vertikaler Lösungen in Business Central / Dynamics NAV setzt tiefgreifende Kenntnisse über die grundlegenden Datenstrukturen sowie die zugehörigen Verarbeitungsprozesse voraus. Die hierfür erforderlichen Trainings führe ich überwiegend für Microsoft Implementierungspartner aber auch direkt für Entwickler-Teams von Endkunden durch.

Zu Beginn des Trainings werden in Form eines abstrakten Datenmodells die grundlegenden Informationsflüsse eines Applikationsmoduls sowie die in der Anwendungsphilosophie verfügbaren Tabellenklassen erklärt. Hierauf aufbauend erfolgt bereits die Planung eines zu implementierenden Datenmodells.

Als Grundlage für das zu implementierende Datenmodell wird zunächst eine konkrete Branchenanforderung aus Sicht des Endanwenders umrissen und an Hand dieser Anforderungen eine Gap-Fit-Analyse durchgeführt. Ziel ist es dabei, eine für die jeweilige Anforderung geeignete Standardfunktionalität in die Lösungsgestaltung einzubeziehen. Hierauf folgt dementsprechend eine Definition der zu implementierenden Anforderungen sowie erforderlicher Anpassungen.

Bereits an diesem Punkt werden verschiedene Design-Ansätze und deren Auswirkungen diskutiert sowie die besondere Rolle herausgearbeitet, die dieser Phase in der Anwendungsarchitektur zukommt.

Die nachfolgende Implementierung hat das Ziel, die definierten Anforderungen als vollständige Lösung in Form einer Extension für Business Central zu entwickeln. Beginnend bei den einfachsten Anforderungen wird der Schwierigkeitsgrad stetig gesteigert.

Nachfolgende Aufstellung gibt einen Überblick über die Themenschwerpunkte.

Themenschwerpunkte

  • Einführung und ausgewählte Themenauffrischungen
  • Abstraktes Datenmodell einer vertikalen Business Central / Dynamics NAV-Lösung
  • Definition der Anforderungen einer beispielhaften Branche
  • Gap-Fit-Analyse zur Bestimmung der Abweichungen zwischen standardmäßig vorhandener und verwendbarer Funktionalität sowie der Anforderungsdefinition
  • Ableitung eines Datenmodells für die angestrebte Lösung
  • Implementierung einer Haupttabelle sowie weiterer Stammdaten, Implementierung der Anwendungseinrichtung, Implementieren von Nummernserien u.ä.
  • Implementieren eines Beleges inkl. allgemeiner sowie branchenspezifischer Funktionalität
  • Implementieren eines Buchblattes sowie der Journal- und Postentabellen
  • Implementieren der Buchblatt-Buchungslogik sowie der Beleg-Buchungslogik
  • Implementieren standardüblicher Funktionalität wie Haupttabellen-Statistik, Navigate-Integration u.ä.
  • Integration der Dimensionen (Dimension Sets)
  • Erstellen einer Stapelverarbeitung zur Verkaufsrechnungserzeugung inkl. Gruppenwechsellogik (Sammelrechnungen), Verwendung von Puffern, minimal-invasive Integration in den Standard
  • Anpassen der Standard-Buchungsabläufe für den nachträglichen Postenausgleich
  • Implementieren partieller Belegbuchungen
  • Implementieren externer Schnittstellen am Beispiel einer Portalanbindung

Auf dem Weg der Implementierung liegen mehrere Theorieblöcke, in denen Entwickler grundlegende technische Skills über die Lösungsentwicklung erwerben, wie z.B. Transaktionssteuerung, Table Locking, performante Datenbankprogrammierung, Unterstützen und Rolle von Bulk Inserts, Flowfields und SumIndizes, Konsistenzsicherung bei synchronisierten Änderungen, korrekte Vorgehensweise bei Validierungen u.v.m.

Voraussetzungen

  • Zumindest grundlegende Kenntnisse der Anwendung im allgemeinen sowie der Finanzbuchhaltung sowie Supply Chain Management (SCM) im besonderen.
  • Tiefgreifendes Verständnis der Programmierung in der Sprache AL sowie im standardkonformen Table- und Page-Design.