Skip to main content
Skip table of contents

OCT Gateway Business Central (Microsoft Dynamics 365)

Klassifikation

Merkmal

Klassifikation

Quelldatentyp

API

Öffentliche Datenquellen API Dokumentation

https://learn.microsoft.com/de-de/dynamics365/business-central/dev-itpro/api-reference/v2.0/

Steuerungsstruktur

Konfigurationsdatei: Auswahl der abzurufenden Mandanten, Auswahl des Startdatum des Datenabrufs

Steuerungstabelle, welche die Aktivierung pro Mandant / Wirtschaftsjahr und Datenbestand ermöglicht.

Validierungsoberfläche

Ja, Tabellenstatistik und Tabellenwerte

Zuletzt getestet mit OCT Version

5.11

Programmierpattern

Table by Table (jede Tabelle ist individuell im Abruf definiert)

Tabellengruppe

staging.tBUSINESSCENTRAL365_*

Öffentlicher Testdatenbestand

Business Central Demoversion

Konnektor für FIN-Modul

Ja

Funktionalität

  • Das Gateway spiegelt die Daten aus den vordefinierten Tabellen 1:1 über die Business Central API in die staging Schicht einer OCT Datenbank.

  • folgende Tabellen werden gespiegelt:

    • Accounts

    • AccountingPeriods

    • Companies

    • CompanyInformation

    • Dimensions

    • DimensionValues

    • GeneralLedgerEntries (mit dimensionSetLines)

    • TrialBalances

  • Die OCT Datenbank stellt eine Validierungsoberfläche für diese Daten bereit.

Voraussetzungen

Business Central / Azure Portal

OCT

  • OCT Applikation 5.11 oder höher - je nach Einrichtungsvariante lokal oder in der Azure Cloud

  • OCT Datenbank

    • eine OCT Datenbank als Zieldatenbank muss on-prem oder in einer Cloudumgebung erreichbar sein

Technische Einrichtung

Einrichtung des Gateways mit OCT in der Saxess-Cloud

Voraussetzungen:

  • Azure Storage Account mit Kontoname und Access Key

  • in config.json die Zugangsdaten (api_tenant_id, api_client_id, api_client_secret) für die API, abzurufende Mandanten unter BC365_Einstellungen ->Mandanten, Startdatum und die Zugangsdaten für die Zieldatenbankdaten einfügen

  • eine Dateifreigabe auf Azure Storage mit dem Namen “python” erstellen, den Inhalt des Ordners Gateway_BusinessCentralAPI in die Dateifreigabe kopieren

Ablaufplan:

  1. Einen Storage Account vom Typ FileStorage als Datenquelle anlegen

    1.1 Im Azure Storage Account eine Dateifreigabe “python” (Name ist Konvention) mit einem Ordner “scripts” (Name ist verpflichtend) anlegen

    1.2 Den Deployment Ordner “Gateway_BusinessCentralAPI ” aus dem Bitbucket Repo herunterladen und den Inhalt in den Ordner “scripts” kopieren

    1.3 falls vorher noch nicht erledigt, im Ordner “config” in der Datei “config.json” die Zugangsdaten (api_client_id, api_client_secret, api_tenant_id) für die API, abzurufende Tabellen (in Liste “sql_Tabellen”) und die Zieldatenbankdaten einfügen

  2. Datenbankobjekte durch Ausführen des Scripts “SETUP_STAGING_BusinessCentral.sql” in die OCT-Datenbank einspielen

  3. in der OCT-Oberfläche unter Datenquellen den Azure Storage Account per AccessKey / Variante FileStorage als Quellsystem hinzufügen

  4. in der OCT-Oberfläche die Pipeline “STAGBC365 - Datenextraktion BusinessCentral” öffnen

    4.1 (falls vorhanden) Step: “Powershell - Datenextraktion BusinessCentral” löschen oder deaktivieren

    4.2 im Step: “Container - Datenextraktion BusinessCentral” die Azure Datenquelle einstellen, unter Startbefehl config anpassen falls der Name der config.json angepasst wurde

    4.3 Pipeline ausführen

  5. Datenvalidierung in OCT über die Factory Validierung, Productline Staging BusinessCentral

  6. im Tab START der BusinessCentral Validierung den Link zur Tabellenübersicht anpassen

Einrichtung des Gateway mit OCT on Premises

Ablaufplan:

  1. Python Arbeitsumgebung für OCT einrichten

1.1 Python Installation 3.13 oder höher installieren (Python)

1.2 ODBC Treiber 18 für MSSQL Server installieren

1.3 (optional) Visual Studio Code mit Python Erweiterung (für Testläufe/Debugging)

Python und Visual Studio Code müssen in der Variante Systeminstaller für alle Benutzer installiert sein, sonst ist eine Ausführung als anderer Benutzer (und meist ist der OCTService ein solcher) nicht möglich (verlinkte Anleitung in 1.1. beachten)

  1. Den Deployment Ordner “Gateway_BusinessCentralAPI” aus dem Bitbucket Repo herunterladen, und nach C:\ProgramData\Saxess Software\ kopieren

  2. benötigte Pythonpakete installieren

3.1 ein Terminal als Admin starten

3.2 zum Gateway_BusinessCentralAPI Ordner wechseln mit “cd ../../ProgramData/Saxess Software/Gateway_BusinessCentralAPI”

3.3 mit folgendem Befehl Pakete installieren: “python -m pip install -r requirements.txt”

  1. Datenbankobjekte durch Ausführen des Scripts “SETUP_STAGING_BusinessCentral.sql” aus dem Ordner “setup” im Gateway_BusinessCentralAPI Ordner in die OCT-Datenbank einspielen

  2. in der Datei “config.json” im Ordner “config” die DatenquellenID, Zugangsdaten für die BusinessCentral-API (api_client_id, api_client_secret), abzurufende Tabellen (in die Liste “sql_Tabellen”) und die Zieldatenbankdaten einfügen

  3. (optional): testweise Direktausführung

Python Script main.py im Terminal ausführen (python main.py --config=config.json), alternativ test_datenabruf.bat im “Gateway_BusinessCentralAPI” Ordner starten

  1. Pipeline STAGBC365-Datenextraktion BusinessCentral einrichten:

7.1 Step: “Container - Datenextraktion BusinessCentral” löschen oder deaktivieren

7.2 Pipeline Schedule einstellen falls benötigt

7.3 Pipelineausführung testen

  1. Datenvalidierung in OCT über die Factory Validierung, Productline Staging BusinessCentral

8.1 im Tab START der BusinessCentral Validierung den Link zur Tabellenübersicht anpassen

Konfiguration der config.json Datei

Auswahl der abzurufenden Mandanten über Eintragung in die Mandantenliste

folgende Endpunkte werden pro Mandant und aktiviertes Geschäftsjahr abgerufen:

  • Companies

  • CompanyInformation

  • AccountingPeriods

  • Accounts

  • DimensionValues

  • TrialBalances

  • GeneralLedgerEntries

Output

"csv_out_aktiv" : 1
"db_output_aktiv": 1

Entscheidet ob die abgerufenen Daten in die Zieldatenbank geschrieben oder als CSV Datei auf der Festplatte oder im Azure File Share abgespeichert werden sollen. 1 = aktiviert, 0 = deaktivert

Beide Optionen können gleichzeitig aktiv sein.

Bei Ausführung des Gateway-Skripts im Container-Step den “ziel_ordner” im Abschnitt “Dateisystem” freilassen, da das Skript dann die Daten im File Share ablegt.

 

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.