Hi, ich bin Max. Seit über acht Jahren baue und integriere ich Lösungen rund um Dynamics 365 Business Central – zuerst in einem produzierenden Unternehmen, später beim BC-Partner. In diesem Beitrag erzähle ich, was wir wirklich gebaut haben, wie wir Datenmigrationen stabil hinbekommen haben und welche Muster sich in Projekten bewährt haben.


Ausgangslage im produzierenden Unternehmen

Mein letztes Unternehmen ist mit klassischen Schmerzpunkten gestartet: zu viel Excel, manuelle Belegarbeit, Schatten-Prozesse, Medienbrüche zwischen Einkauf, Fertigung und Versand. Zielbild: durchgängige Prozesse von Einkauf bis Auslieferung, saubere Stammdaten, weniger Klicks – und messbar schnellere Durchlaufzeiten.


Was ich gebaut habe

Einkauf → Wareneingang → Qualität

  • Lieferantensteuerung mit Rahmenbestellungen & Abrufen, Freigabe-Workflows.
  • Wareneingangs-Prüfung (Prüfmerkmale, Sperrlager, Freigabe), Automatisierung via Job Queues.
  • DMS-Anbindung: Eingangsrechnungen & Lieferscheine nach SharePoint, OCR mit Azure AI Document Intelligence.

Stammdaten & Kalkulation

  • Stücklisten & Arbeitspläne (Varianten, Rüst-/Laufzeiten, Zuschläge), Vorkalkulation und Nachkalkulation mit Ursachenanalyse.
  • Artikelvarianten & Konfiguration (Farb-/Längenvarianten), konsistente Dimensionslogik (Kostenstellen, Projekte).

Fertigung & Shopfloor

  • Produktionsaufträge (Freigabe, Materialbereitstellung, Rückmeldung per Scan).
  • Zeit- & Materialbuchung über mobile Geräte (Scanner, Browser-Clients), Labeldruck (SSCC, GS1-128).
  • Kapazitätsplanung: Belastung/Belegung, Engpasssteuerung, Planungsarbeitsblatt.

Lager & Versand

  • WMS-Prozesse (Einlagerung, Umlagerung, Kommissionierung, Konsolidierung).
  • Picken/Packen/Ship mit NVE/SSCC, Fracht-API (Transportlabel, Tracking).
  • EDI (ORDERS, DESADV, INVOIC) via Azure Logic Apps / API-Management.

Vertrieb & Service

  • CTP/ATP-Prüfungen, Preis-/Rabattlogik, automatische Dokumentengenerierung (Angebote/Lieferscheine/Rechnungen).
  • Servicefälle mit Rücknahmen, Gutschriften, Ersatzteilen.

Reporting & Monitoring

  • Power BI für Durchlaufzeit, Ausschuss, OEE-nahe Kennzahlen.
  • Telemetry (App Insights) für Job Queue-Fehler, lange SQL-Queries, AL-Performance.

Leitlinie: Standard vor Customizing. Erst Konfiguration, dann Events/Extensions – Objektmodifikationen vermeiden.

Datenmigrationen – ohne Drama zum Cut-Over

Vorgehen, das sich bewährt hat:

  1. Scope & Mapping fixieren: Kunden, Lieferanten, Artikel, Varianten, Stücklisten, Arbeitspläne, Preise/Rabatte, Offene Bestellungen, Lagerbestände, Offene Posten, Salden, Dimensionen.
  2. Datenqualität: Pflichtfelder, Dubletten, Codesets (Länder, Zahlungsbedingungen), IBAN/Steuer-IDs, E-Mail-Pattern.
  3. Werkzeugkette:
    • Configuration Packages (RapidStart) für einfache Stammdaten.
    • BC-APIs (v2.0) für strukturierte Entitäten (z. B. vendors, customers, items, boms, routes).
    • SSIS/KingswaySoft oder .NET-Loader für Massen & inkrementelle Deltas.
  4. Mehrstufige Testläufe: T0 (Mini-Set), T1 (repräsentativ), T2 (Volllast), Delta-Migration kurz vor Go-Live.
  5. Cut-Over-Plan: Freeze, Reihenfolge (Stammdaten → Offene Belege → Bestände → OPs), Checklisten, Rollback-Option.

Learnings: 80 % der Migrationsprobleme sind Stammdaten (Codes, Pflichtfelder, Dubletten). Saubere Vorbereitung spart ein Vielfaches an Implementierungszeit.


Wechsel zum Partner – Muster, die in vielen Projekten tragen

Beim Partner habe ich die Perspektive gewechselt: viele Branchen, viele Setups, noch mehr Best Practices.

  • AL-Entwicklung: saubere Event Subscriber, Table/Page Extensions, API Pages, Report Extensions.
  • CI/CD: BcContainerHelper, Azure DevOps Pipelines, automatische Tests (AL Test Tool), Signierung & Artefakte.
  • Architektur: Entkopplung (Webhooks/Queues), Retry/Idempotenz, Versionierung der Schnittstellen.
  • SaaS-Governance: Feature Management, Tenant-Isolierung, Telemetry/Alerting, Security (App Registrations, Delegations).

Mini-Beispiel (AL): Versand blocken, wenn QC nicht „Freigegeben“

alCopyEditcodeunit 50110 "QC Shipment Guard"
{
    [EventSubscriber(ObjectType::Codeunit, Codeunit::"Release Sales Document", 'OnBeforeRun', '', false, false)]
    local procedure OnBeforeReleaseSalesDoc(var SalesHeader: Record "Sales Header")
    var
        QC: Record "QC Header";
    begin
        if QC.GetForOrder(SalesHeader."No.") then
            if QC.Status <> QC.Status::Released then
                Error('Auftrag %1 kann nicht freigegeben werden: Qualitätsprüfung nicht abgeschlossen.', SalesHeader."No.");
    end;
}

Kleiner Eingriff, große Wirkung: Business-Regel greift, ohne Standardcode zu verändern.


Logic-Apps & Azure – wo Integration Spaß macht

Viele Integrationen laufen heute serverlos:

  • Azure Logic Apps für EDI, WordPress/Shop-Schnittstellen, DMS-Ablage.
  • Azure Functions (.NET) für Validierung, PDF-Aufbereitung, Labelerzeugung.
  • Azure AI Document Intelligence (Form Recognizer) für Beleg-OCR.
  • API Management / Event Grid / Service Bus für sauberes, skalierbares Routing.

Ergebnis: weniger manuelle Arbeit, durchgängige Daten und transparente Fehlerbilder.


Was ich heute jedem BC-Projekt mitgebe

  • Standard first. Konfiguration ausreizen, Extensibility via Events.
  • Datenqualität ist König. Früh prüfen, hart validieren, sauber migrieren.
  • Belegflüsse denken. Einkauf → Wareneingang → Qualität → Fertigung → Versand – End-to-End testen.
  • Beobachtbarkeit. Telemetry, Alerts, klare Logs; keine „stillen“ Fehler.
  • Schrittweise liefern. Kleine Inkremente, echte Nutzerfeedbacks, messbare Effekte.

Fazit

Ob im eigenen Fertigungsbetrieb oder auf Partnerseite: Business Central liefert, wenn Architektur, Daten und Prozesse zusammenspielen. Ich entwickle lösungsorientiert, integriere sauber – und automatisiere da, wo es zählt: weniger Reibung, mehr Wirkung. Wenn du deine Fertigung, Belegverarbeitung oder Migration an den Start bringen willst, helfe ich gern – vom ersten Workshop bis zum Go-Live.


Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert