Skip to main content

Universal Code Compliance-Erklärung

Für Microsoft Dynamics 365 Business Central Partner, die DEXPRO Apps vertreiben

Dokumentversion: 1.0 · Stand der letzten Prüfung: 29. Juli 2026 · Herausgeber: DEXPRO Solutions GmbH


1. Zusammenfassung

Alle sechs DEXPRO Apps für Microsoft Dynamics 365 Business Central sind vollständig konform mit der Microsoft Universal Code Initiative. Jede App ist als cloud-optimierte Erweiterung mit "target": "Cloud" entwickelt und enthält keine .NET-Interoperabilität, keine Verwendung von OnPrem-beschränkten APIs und keine sonstigen Konstrukte, die den Code als „nicht cloud-optimiert" einstufen würden.

Was das für Sie als Partner bedeutet: Der Einsatz von DEXPRO Apps — sowohl in Business Central online (SaaS) als auch On-Premises — löst nicht das kostenpflichtige Microsoft-Lizenzmodul „Implementierter Code ist nicht cloud-optimiert" aus. Für Ihre Kunden entstehen durch keine DEXPRO App Universal-Code-Zusatzkosten.


2. Prüfungsumfang

App Geprüfte Version App-ID
DEXPRO Core 3.11.0.0 9762f101-ae8a-4a0e-be42-66ec871d1ca0
DEXPRO SQUEEZE 2.49.0.0 368db399-65f5-4250-9afd-b2a67a49e809
DEXPRO Breeze Interface 1.30.0.0 7c431886-108e-44c3-9328-30e2b93edfa6
DEXPRO Advanced Workflow 1.12.0.0 11a79c49-1645-4cf9-9b27-3d2eaafcf9f4
DEXPRO Freeze 1.29.0.0 b9c8c9cc-8cd1-41cc-bf86-7da37ac74c71
DEXPRO eInvoice Sender 2.0.1.0 37f06ebc-53f0-4d9c-9572-7229113363f9

DEXPRO Core ist eine erforderliche Abhängigkeit der übrigen fünf Apps. Es bestehen keine Abhängigkeiten zu Drittanbieter-Apps — der Abhängigkeitsgraph umfasst ausschließlich Microsoft Base-/System-Applications und DEXPRO Core. Somit kann keine externe Komponente eine Non-Compliance in Ihre Installation einbringen.


3. Anforderungen der Universal Code Initiative

Die Universal Code Initiative gilt seit Business Central 2022 Release Wave 2 (Oktober 2022). Sie verlangt, dass Anpassungen als Erweiterungen (Extensions) ausgeliefert werden und der Erweiterungscode cloud-optimiert ist, d. h. derselbe Code läuft unverändert in Business Central online und On-Premises. Änderungen an der Microsoft-Basisanwendung sind nicht zulässig.

Technisch maßgeblich ist die Eigenschaft target in der app.json. Mit "target": "Cloud" weist der AL-Compiler alles ab, was außerhalb der cloud-unterstützten API-Oberfläche liegt. Code, der nur mit "target": "OnPrem" kompilierbar ist, verpflichtet den Kunden zur Lizenzierung des kostenpflichtigen Moduls „Implementierter Code ist nicht cloud-optimiert".


4. Prüfmethodik

Die Konformität wurde nicht allein anhand der Manifest-Dateien beurteilt. Jede App wurde mit dem AL-Compiler (alc.exe, AL Language 17.0) gegen das Cloud-Target kompiliert, einschließlich des AppSourceCop-Analyzers, unter Verwendung der Business Central Plattform-Pakete 28.3. Der Compiler ist die maßgebliche Instanz für die Universal-Code-Konformität: Jedes ausschließlich OnPrem verfügbare Konstrukt führt unter "target": "Cloud" zu einem harten Kompilierfehler.

Zusätzlich wurde der gesamte AL-Quellcode aller sechs Apps (887 Quelldateien) auf die in Abschnitt 5 aufgeführten disqualifizierenden Muster hin untersucht.


5. Ergebnisse

5.1 Kompilierung gegen das Cloud-Target

App target Cloud-Kompilierung Blockierende Feststellungen
DEXPRO Core Cloud 0 Fehler keine
DEXPRO SQUEEZE Cloud 0 Fehler keine
DEXPRO Breeze Interface Cloud 0 Fehler keine
DEXPRO Advanced Workflow Cloud 0 Fehler keine
DEXPRO Freeze Cloud 0 Fehler keine
DEXPRO eInvoice Sender Cloud 0 Fehler keine

5.2 Quellcode-Prüfung auf nicht-cloudfähige Konstrukte

Über alle 887 AL-Dateien hinweg sind die folgenden Werte in jeder App gleich null:

Disqualifizierendes Konstrukt Vorkommen
dotnet-Blöcke / Assembly-Referenzen 0
Codeunit … Subtype = DotNet 0
[Scope('OnPrem')]-Attribute 0
Tabellen oder Methoden mit Scope = OnPrem 0
COM- / Automation-Variablen 0
SHELL() / Aufruf externer Prozesse 0
Direkter Dateisystemzugriff (Datentyp File) 0
Abhängigkeiten zu Drittanbieter-Apps 0

5.3 Cloud-konforme Implementierungsmuster

Die Apps verwenden durchgängig die cloud-zulässigen AL-Alternativen:

  • Ausgehende HTTP-Aufrufe nutzen die AL-eigenen Typen HttpClient / HttpRequestMessage (nicht .NET WebRequest). Alle Webservice-Aufrufe in Core (WebRequestMgtOAuth2MgtOpenIDMgt), SQUEEZE, Freeze, Advanced Workflow und eInvoice Sender folgen diesem Muster.
  • Umgang mit Geheimnissen erfolgt über IsolatedStorage für Token und Zugangsdaten (Core, SQUEEZE) — nie über Klartext-Tabellenfelder oder Dateien.
  • Dateiverarbeitung nutzt die Microsoft-Standard-Codeunit "File Management" (BLOBExportGetExtensionGetFileNameMimeType) in Verbindung mit TempBlob / InStream / OutStream — dies ist die cloud-unterstützte API, kein OnPrem-Dateizugriff.
  • UI-Erweiterbarkeit erfolgt über JavaScript/HTML Control Add-ins (Dokumentenviewer, Drag & Drop, Workflow-Visualisierung) — der cloud-unterstützte Erweiterungsweg.
  • Authentifizierung erfolgt über OAuth2 / OpenID Connect auf Basis der Standardplattform.

5.4 Weitere Plattform- und Marketplace-Merkmale

Merkmal Status in allen sechs Apps
Runtime-Version 14.0
Application (Mindest-BC-Version) 25.0.0.0
target Cloud
resourceExposurePolicy allowDebugging: falseallowDownloadingSource: false
propagateDependencies true
Features TranslationFileNoImplicitWith
Objekt-Präfix (AppSourceCop-Affix) DXP (reserviert)
Unterstützte Sprachen de-DE, en-US
Datenschutzerklärung / EULA / Hilfe-URLs vorhanden
Telemetrie Application Insights (partnerseitig konfigurierbar)

Jede App liefert eigene Berechtigungssätze für die rollenbasierte Zugriffssteuerung, beispielsweise DXP CORE Admin / DXP CORE UserDXP SQUEEZE Admin / DXP SQUEEZE UserDXP Breeze IF Admin / DXP Breeze IF UserDXP AWF Admin / DXP AWF UserDXP Freeze Admin / DXP Freeze User sowie DXP eInvoice Admin / DXP eInvoice Support / DXP eInvoice User.


6. Hinweise zum Rollout für Partner

  • Business Central online (SaaS): Alle Apps lassen sich ohne Universal-Code-Einschränkung installieren.
  • On-Premises / Hybrid: Alle Apps werden als cloud-optimierte Erweiterungen installiert. Für keine DEXPRO App ist ein kostenpflichtiges Modul für nicht cloud-optimierten Code erforderlich. Zu beachten ist, dass ausgehende HTTP-Aufrufe von Erweiterungen in der On-Premises- Serverkonfiguration freigegeben sein müssen (Allow HttpClient Requests an der Erweiterung). Dies ist eine übliche administrative Einstellung und kein Compliance-Thema.
  • Upgrade-Sicherheit: DEXPRO verfolgt eine strikte Obsoletion-Richtlinie. Öffentliche Prozeduren, Tabellenfelder, Enum-Werte, Events und Interface-Methoden werden mit ObsoleteState = Pending, einer benannten Ersatzlösung und einem Versions-Tag gekennzeichnet — sie werden nie ohne Vorankündigung entfernt. Im Build-Log sichtbare Deprecation-Warnungen sind beabsichtigt und stellen keinen Konformitätsmangel dar.
  • Mindestplattform: Business Central 25.0 oder höher ist erforderlich.

7. Pflege dieser Erklärung

Die Universal-Code-Konformität wird im Rahmen des DEXPRO Build-Prozesses geprüft; jede App wird mit aktiviertem AppSourceCop-Analyzer gegen das Cloud-Target kompiliert. Diese Erklärung wird bei jedem Major Release der App-Familie überprüft.

Bei technischen Fragen zu dieser Erklärung wenden Sie sich bitte an die DEXPRO Solutions GmbH unter https://www.dexpro.de/.


8. Quellen