Skip to main content

Erweiterbarkeit

Diese Seite richtet sich an Entwickler und Partner, die auf DEXPRO Core aufbauen. Sie beschreibt die Erweiterungsfläche von Core: die Schnittstellen, die Sie implementieren, die erweiterbaren Enums, denen Sie Werte hinzufügen, die Integrationsereignisse, die Sie abonnieren, und die öffentlichen Codeunit-APIs, die Sie aufrufen können.

Schnittstellen

DXP ISource Document

Wird pro DXP Document Class Enum-Wert implementiert, um zu beschreiben, wie ein Quellbeleg dieser Klasse in verarbeitete Daten umgewandelt wird. Methoden:

  • CreateProcessedJsonFromSource — erstellt das verarbeitete JSON aus der Rohquelle.
  • CreateSource — erstellt die Quellrepräsentation.
  • InitFieldMapping — initialisiert die Feldzuordnung für die Klasse.
  • IsSourceDataPlausible — prüft, ob die Quelldaten vor der Verarbeitung plausibel sind.

DXP IDocument Processing

Wird pro DXP Target Document Process Enum-Wert gebunden, um die eigentliche Verarbeitung durchzuführen. Methode:

  • ProcessStandardDocument — verarbeitet den Standardbeleg für den Zielprozess.

Erweiterbare Enums

  • DXP Document Class — die Klassifizierung eines eingehenden Belegs (Standard Unassigned).
  • DXP Target Document Process — die auszuführende Zielverarbeitung.
  • DXP Next Process Step — der nächste Schritt für eine Dokumentenklasse.
  • DXP Document Status — der Lebenszyklusstatus eines Core Belegs.

Fügen Sie diesen Enums aus einer abhängigen App eigene Werte hinzu, um neue Belegarten, Prozesse, Schritte und Status einzuführen.

Integrationsereignisse

Wichtige Ereignisse werden von DXP Document Mgt. und DXP Document Transfer Mgt. veröffentlicht:

  • OnAfter / OnBefore der Erstellung des Einkaufs-Kopfs.
  • OnAfter / OnBefore der Erstellung der Einkaufs-Zeile.
  • Ereignisse rund um die Behandlung von Dimensionen.
  • Ereignisse rund um die Beleg-Freigabe.
  • OnResolveDocumentViewerUrl — Partner stellen eine Viewer-URL für eine Anlage/einen Beleg bereit.
  • OnBeforeLookupPageFromPlausibiltyEntry — die aus einem Plausibilitätsposten geöffnete Lookup-Seite beeinflussen.

Abonnieren Sie die OnBefore-Ereignisse, um das Standardverhalten anzupassen oder zu überspringen, und die OnAfter-Ereignisse, um die erstellten Datensätze anzureichern (zum Beispiel um benutzerdefinierte Felder zu befüllen, die nicht von der Feldzuordnung abgedeckt sind).

Öffentliche Codeunit-APIs

  • DXP Document Mgt. — Core Belege hinzufügen und aktualisieren (AddDocument, UpdateDocument), einen Core Beleg verschieben (MoveCoreDocument) und Dublettenprüfungen ausführen.
  • DXP Rule Engine — Regelsätze aus Ihrer App auswerten.
  • DXP Web Request Mgt. — gemeinsamer HTTP-Client für ausgehende Aufrufe (berücksichtigt das HTTP-Timeout in der Core Einrichtung).
  • DXP OAuth2 Mgt. und DXP OpenID Mgt. — Token für konfigurierte OAuth 2.0 / OpenID Connect Verbindungen beziehen.
  • DXP Master Data Mgt. — mit Lieferantenstammdaten arbeiten.
  • DXP Telemetry — der gemeinsame Telemetrie-Helfer zum Protokollieren von Funktionsnutzung und Fehlern.

Typisches Erweiterungsmuster

  • Fügen Sie DXP Document Class einen Wert für Ihre neue Belegart hinzu und implementieren Sie DXP ISource Document dafür.
  • Fügen Sie DXP Target Document Process einen Wert hinzu und implementieren Sie DXP IDocument Processing, um ihn zu verarbeiten.
  • Konfigurieren Sie den Nächsten Prozessschritt für die Klasse in der Dokumentenklassen Einrichtung.
  • Abonnieren Sie die relevanten OnBefore-/OnAfter-Ereignisse, um die Datensatzerstellung anzupassen.
  • Rufen Sie die öffentlichen Codeunit-APIs (Document Mgt., Rule Engine, Web Request Mgt., OAuth2/OpenID Mgt., Master Data Mgt., Telemetry) nach Bedarf auf.

Verwandte Funktionen

  • Dokumentenklassen Einrichtung
  • Feldzuordnung
  • Regelwerk
  • OAuth 2.0 und OpenID Einrichtung