Dynamics 365 Business Central Verbindungsdetails
Einführung
Connector-Version
Diese Dokumentation basiert auf Version 21.0.8662 des Connectors.
Wichtig
Wir empfehlen die Verwendung des Microsoft Dynamics 365 Business Central v2 Connectors, um eine Verbindung zu Dynamics 365 Business Central herzustellen, da es zusätzliche Konfigurationseigenschaften ermöglicht.
Erste Schritte
Versionsunterstützung für Dynamics 365 Business Central
Der Connector unterstützt Lese-/Schreibzugriff auf Dynamics 365 Business Central über OData Webdienste.
Herstellen einer Verbindung
Um eine Verbindung zu Daten herzustellen, geben Sie an OrganizationUrl
. Der OrganizationUrl
sollte auf einen der folgenden Werte gesetzt werden:
- Der Endpoint zu Ihrem zentralen Geschäftskonto wie
https://businesscentral.dynamics.com/abc123/
- Das Stammverzeichnis der Webdienste.
- Die Custom API Basis URL.
Weitere Informationen finden Sie unter Business Central-Endpoints für weitere Details zur Angabe des OrganizationUrl
und welche Endpoints verfügbar sind.
Wenn Ihre Organisation mehrere Unternehmen umfasst, müssen Sie außerdem die Company
um anzugeben, mit welchem Unternehmen Sie sich verbinden möchten. Company
muss nicht angegeben werden, wenn Sie nur ein Unternehmen haben.
Benutzer- und Zugriffsschlüsselauthentifizierung
Hinweis: Die Benutzer- und Zugriffsschlüsselauthentifizierung wird ab April 2021 für die Cloud-Version nicht mehr unterstützt. Für lokale Versionen bleibt der Webdienst-Zugriffsschlüssel (Basisauthentifizierung) vorerst eine Option.
Um die Zugriffsschlüsselauthentifizierung zu verwenden, setzen Sie AuthScheme
Zu Access Key
. Zur Authentifizierung bei Dynamics 365 Business Central können Sie die User
Und AccessKey
Verbindungseigenschaften. Microsoft empfiehlt diese für Test- und Entwicklungszwecke, rät jedoch von ihrer Verwendung in Produktionsumgebungen ab.
Um die zu erhalten,User
Und AccessKey
-Werte, navigieren Sie zur Seite „Benutzer“ in Dynamics 365 Business Central und klicken Sie dann auf „Bearbeiten“. Die Werte für „Benutzername“ und „Webdienst-Zugriffsschlüssel“ geben Sie als ein User
Und AccessKey
Verbindungszeichenfolgeneigenschaften. Beachten Sie, dass der Benutzername nicht Ihre Email-Adresse ist. Es handelt sich um einen verkürzten Benutzernamen.
Herstellen einer Verbindung mit Dynamics 365 Business Central
Um sich bei der Dynamics 365 Business Central Quelle zu authentifizieren, sollten Sie zunächst die OrganizationUrl
zur URL der Organisation, mit der Sie sich verbinden, wie zum Beispiel https://businesscentral.dynamics.com/abc123/
.
Authentifizieren mit Zugriffsschlüssel
Setzen Sie die User
zusammen mit dem AccessKey
zur Authentifizierung bei der Dynamics 365 Business Central-Quelle.
Authentifizieren mit Entra ID
Entra ID ist ein Verbindungstyp, der über OAuth läuft. Legen Sie Ihre AuthScheme
Zu AzureAD
und siehe Verwenden der OAuth-Authentifizierung für eine Anleitung zur Authentifizierung.
Authentifizieren mit dem Microsoft Entra-Dienstprinzipal
Azure Service Principal ist ein Verbindungstyp, der über OAuth läuft. Legen Sie Ihre AuthScheme
Zu AzureServicePrincipal
und siehe Verwenden der Microsoft Entra-Dienstprinzipalauthentifizierung für eine Anleitung zur Authentifizierung.
Authentifizieren mit MSI-Authentifizierung
Wenn Sie Dynamics 365 Business Central auf einer Azure-VM ausführen, können Sie die Anmeldeinformationen der Managed Service Identity (MSI) für die Verbindung nutzen:
AuthScheme
: Setzen Sie dies aufAzureMSI
.
Die MSI-Anmeldeinformationen werden dann automatisch zur Authentifizierung abgerufen.
OAuth-Authentifizierung verwenden
OAuth erfordert, dass der authentifizierende Benutzer über den Browser mit Dynamics 365 Business Central interagiert. Der Connector erleichtert dies auf verschiedene Weise, wie unten beschrieben.
Eingebettete Anmeldeinformationen
Siehe Eingebettete Anmeldeinformationen, um eine Verbindung mit den eingebetteten Anmeldeinformationen des Connectors herzustellen und das Erstellen einer benutzerdefinierten OAuth-App zu überspringen.
Benutzerdefinierte Anmeldeinformationen
Anstatt die Verbindung mit den eingebetteten Anmeldeinformationen des Connectors herzustellen, können Sie eine App mit Benutzerdefinierten Anmeldeinformationen registrieren, um die zu erhalten OAuthClientId
Und OAuthClientSecret
.
Wann sollte eine benutzerdefinierte OAuth-App erstellt werden?
Das Erstellen einer benutzerdefinierten OAuth-App ist optional, da der Connector bereits bei Dynamics 365 Business Central registriert ist und Sie sich mit seinen eingebetteten Anmeldeinformationen verbinden können. Möglicherweise möchten Sie eine benutzerdefinierte OAuth-App erstellen, um die angezeigten Informationen zu ändern, wenn sich Benutzer beim OAuth-Endpoint von Dynamics 365 Business Central anmelden, um dem Connector Berechtigungen zu erteilen.
Erstellen einer benutzerdefinierten OAuth-App
Siehe Erstellen einer benutzerdefinierten OAuth-App für ein Verfahren.
Zustimmung des Administrators
Administratorzustimmung bezieht sich darauf, wenn der Administrator für einen Microsoft Entra ID Mandanten Berechtigungen für eine Anwendung erteilt, für die die Zustimmung eines Administrators zum Anwendungsfall erforderlich ist. Die eingebettete App im Dynamics 365 Business Central-Connector enthält keine Berechtigungen, für die die Administratorzustimmung erforderlich ist. Daher gelten diese Informationen nur für benutzerdefinierte Anwendungen.
Administratoreinwilligungsberechtigungen
Wenn Sie im Azure-Portal eine neue OAuth-App erstellen, müssen Sie angeben, welche Berechtigungen die App benötigt. Einige Berechtigungen können mit der Angabe „Administratorzustimmung erforderlich“ gekennzeichnet sein. Beispielsweise erfordern alle Gruppenberechtigungen die Administratorzustimmung. Wenn Ihre App die Administratorzustimmung erfordert, gibt es mehrere Möglichkeiten, dies zu tun.
Die einfachste Möglichkeit, die Administratorzustimmung zu erteilen, besteht darin, dass sich ein Administrator einfach bei portal.azure.com anmeldet und zu der App navigiert, die Sie in App-Registrierungen erstellt haben. Unter „API -Berechtigungen“ befindet sich eine Schaltfläche zum Erteilen der Zustimmung. Sie können hier zustimmen, dass Ihre App Berechtigungen für den Mandanten erhält, unter dem sie erstellt wurde.
Wenn Ihre Organisation über mehrere Mandanten verfügt oder der App Berechtigungen für andere Mandanten außerhalb Ihrer Organisation erteilt werden müssen, wird die GetAdminConsentURL kann zum Generieren der Admin-Autorisierungs URL verwendet werden. Im Gegensatz zu GetOAuthAuthorizationUrl, werden von diesem Endpoint keine wichtigen Informationen zurückgegeben. Wenn der Administrator Zugriff gewährt, wird lediglich ein Boolean-Wert zurückgegeben, der angibt, dass Berechtigungen erteilt wurden.
Sobald ein Administrator seine Zustimmung erteilt, kann die Authentifizierung wie gewohnt durchgeführt werden.
Verwenden der Microsoft Entra-Dienstprinzipalauthentifizierung
Die Authentifizierung als Microsoft Entra-Dienstprinzipal wird über den OAuth-Client-Anmeldeinformationsfluss abgewickelt und beinhaltet keine direkte Benutzerauthentifizierung. Stattdessen werden Anmeldeinformationen nur für die App selbst erstellt. Alle von der App ausgeführten Aufgaben werden ohne Standardbenutzerkontext, sondern basierend auf den zugewiesenen Rollen ausgeführt. Der Anwendungszugriff auf die Ressourcen wird über die Berechtigungen der zugewiesenen Rollen gesteuert.
Benutzerdefinierte Anmeldeinformationen
Sie müssen eine OAuth-App registrieren, um die OAuth-Eigenschaftswerte abzurufen, bevor Sie eine Verbindung zur Dynamics 365 Business Central Datenquelle herstellen. Sie können die Benutzerdefinierten Anmeldeinformationen Anleitung zum Festlegen der OAuth-Eigenschaften.
Erstellen einer benutzerdefinierten OAuth-App
Siehe Erstellen einer benutzerdefinierten OAuth-App für ein Verfahren.
Erstellen einer benutzerdefinierten OAuth-App
Bei der Authentifizierung mit einem Microsoft Entra-Dienstprinzipal ist das Erstellen einer benutzerdefinierten OAuth-App und eines Dienstprinzipals erforderlich, das auf die erforderlichen Ressourcen zugreifen kann.
Befolgen Sie die nachstehenden Schritte, um eine benutzerdefinierte OAuth-App zu erstellen und die Verbindungseigenschaften für die Microsoft Entra-Dienstprinzipal-Authentifizierung abzurufen.
Schritte zum Erstellen einer benutzerdefinierten OAuth-App
Befolgen Sie die nachstehenden Schritte, um die OAuth-Werte für Ihre App abzurufen.
- Melden Sie sich an bei
https://portal.azure.com
. - Wählen Sie im linken Navigationsbereich „Microsoft Entra ID“ und dann „App-Registrierungen“ aus und klicken Sie auf die Schaltfläche „Neue Registrierung“.
- Geben Sie einen App-Namen ein und aktivieren Sie das Optionsfeld für „Any Entra ID Directory - Multi Tenant“. Legen Sie dann die Weiterleitungs URL auf etwas wie
http://localhost:33333
, die Standardeinstellung des Connectors. - Kopieren Sie den Anwendungs-ID-Wert (Client-ID), der nach dem Erstellen der App im Abschnitt „Übersicht“ angezeigt wird, da dieser Wert als verwendet wird
OAuthClientId
- Definieren Sie den App-Authentifizierungstyp, indem Sie zum Abschnitt „Zertifikate und Geheimnisse“ gehen. Es stehen zwei Arten der Authentifizierung zur Verfügung: die Verwendung eines Client-Geheimnisses und die Verwendung eines Zertifikats. Die empfohlene Authentifizierungsmethode ist über ein Zertifikat, Sie können jedoch auch ein Anwendungsgeheimnis erstellen.
Option 1 - Upload a certificate
: Wählen Sie im Abschnitt „Zertifikate und Geheimnisse“ die Option „Zertifikat hochladen“ und wählen Sie das Zertifikat aus, das von Ihrem lokalen Computer hochgeladen werden soll.Option 2 - Create a new application secret
: Wählen Sie im Abschnitt „Zertifikate und Geheimnisse“ „Neues Client-Geheimnis“ für die App und legen Sie deren Dauer fest. Nach dem Speichern des Client-Geheimnisses wird der Schlüsselwert angezeigt. Kopieren Sie diesen Wert, da er nur einmal angezeigt wird und als verwendet wirdOAuthClientSecret
.
- Aktivieren Sie auf der Tab „Authentifizierung“ unbedingt die Option „Zugriffstoken (für implizite Flows verwendet)“.
- Öffnen Sie die Seite „Abonnements“, indem Sie in der Suchleiste nach dem Abonnementdienst suchen und ihn auswählen.
- Wählen Sie das jeweilige Abonnement aus, dem Sie die Anwendung zuweisen möchten, öffnen Sie dann den Abschnitt „Zugriffskontrolle (IAM)“ und klicken Sie auf die Schaltfläche „Rolle hinzufügen“.
- Wählen Sie „Besitzer“ als Rolle aus, die Sie Ihrer erstellten OAuth-App zuweisen möchten.
Benutzerdefinierte Anmeldeinformationen
Befolgen Sie die nachstehenden Schritte, um sich mit den Anmeldeinformationen für eine benutzerdefinierte OAuth-App zu authentifizieren. Siehe Erstellen einer benutzerdefinierten OAuth-App.
Authentifizierung mit Ihrer OAuth-App
Es stehen zwei Arten der App-Authentifizierung zur Verfügung: die Verwendung eines Client-Geheimnisses und die Verwendung eines Zertifikats. Sie können je nach konfigurierter App-Authentifizierung eine der beiden Arten verwenden.
Holen Sie sich ein OAuth-Zugriffstoken
Sie können eine Verbindung herstellen, nachdem Sie je nach Authentifizierungstyp eine der folgenden Verbindungseigenschaftengruppen festgelegt haben.
Authenticating using a Client Secret
AuthScheme
: Legen Sie dies in Ihren App-Einstellungen auf „AzureServicePrincipal“ fest.InitiateOAuth
: Setzen Sie dies auf GETANDREFRESH. Sie können InitiateOAuth verwenden, um die Wiederholung des OAuth-Austauschs und das manuelle Setzen von zu vermeidenOAuthAccessToken
.AzureTenant
: Stellen Sie dies auf den Mandanten ein, mit dem Sie sich verbinden möchten.OAuthClientId
: Legen Sie dies in Ihren App-Einstellungen auf die Client-ID fest.OAuthClientSecret
: Legen Sie dies in Ihren App-Einstellungen auf das Client-Geheimnis fest.
Authenticating using a Certificate
AuthScheme
: Legen Sie dies in Ihren App-Einstellungen auf „AzureServicePrincipal“ fest.InitiateOAuth
: Setzen Sie dies auf GETANDREFRESH. Sie können InitiateOAuth verwenden, um die Wiederholung des OAuth-Austauschs und das manuelle Setzen von zu vermeidenOAuthAccessToken
.AzureTenant
: Stellen Sie dies auf den Mandanten ein, mit dem Sie sich verbinden möchten.OAuthClientId
: Legen Sie dies in Ihren App-Einstellungen auf die Client-ID fest.OAuthJWTCert
: Stellen Sie dies auf den JWT-Zertifikatspeicher ein.OAuthJWTCertType
: Setzen Sie dies auf den Typ des Zertifikatspeichers, der durch angegeben istOAuthJWTCert
.
Business Central-Endpoints
Dynamics 365 Business Central unterstützt mehrere verschiedene Endpoints zum Herstellen einer Verbindung mit Daten. Die beiden Hauptkategorien sind die allgemeinen Service-Endpoints und die Webservice-Endpoints. Darüber hinaus ist jeder Endpoints in Produktions- und Test-Endpoints unterteilt. Produktions-Endpoints erfordern eine OAuth-Verbindung, während Test-Endpoints über verbunden werden können User
Und AccessKey
. Beachten Sie, dass sowohl Produktions- als auch Endpoints auf dieselben Daten zugreifen und mit ihnen interagieren. Sie unterliegen lediglich unterschiedlichen Einschränkungen hinsichtlich der zulässigen Authentifizierungsmethoden.
Hinweis
Die Basisauthentifizierung wird für die Cloud-Version ab April 2021 nicht mehr unterstützt.
Die OrganizationUrl
wird standardmäßig versucht, zu einem Common Service Production-Endpoint aufzulösen, falls vorhanden https://businesscentral.dynamics.com/
URL angegeben ist. Dies kann jedoch durch Ändern des konfiguriert werden EndpointType
. Darüber hinaus ist die Angabe von https://api.businesscentral.dynamics.com/
wird beides außer Kraft setzen EndpointType
Und UseSandbox
wie angegeben OrganizationUrl
Die Angaben werden unverändert übernommen.
Allgemeine Endpoints
Common Service-Endpoints enthalten die mit Dynamics 365 Business Central verknüpften Geschäftsdaten. Beispielsweise sind Konten, Verkaufsaufträge und Verkaufsrechnungen alle im Common Service zu finden.
Gemeinsame Service Endpoints - Produktion
https://api.businesscentral.dynamics.com/v2.0/{environment name}/api/v2.0
-https://api.businesscentral.dynamics.com/v1.0/api/v2.0
-https://api.businesscentral.dynamics.com/v2.0/sandbox/api/v2.0
Allgemeine Endpoints - Testen
https://api.businesscentral.dynamics.com/v2.0/{tenant id}/{environment name}/api/v2.0
-https://api.businesscentral.dynamics.com/v1.0/{tenant id}/api/v2.0
-https://api.businesscentral.dynamics.com/v2.0/{tenant id}/sandbox/api/v2.0
Notiz
Die Mandanten-ID ist die ID Ihres Mandanten in Azure, auf dem die Business Central-App verfügbar ist.
Sie erhalten dieses, indem Sie sich bei portal.azure.com anmelden, Ihren Benutzernamen auswählen und zu „Verzeichnis wechseln“ gehen. Sie finden es auch unter portal.azure.com, indem Sie zu „Active Directory“ und „Übersicht“ gehen. Umgebungsnamen finden Sie unter https://businesscentral.dynamics.com/{tenant id}/admin
.
Webdienst-Endpoints
Webdienst-Endpoints umfassen alles, was in Dynamics 365 Business Central benutzerdefiniert verfügbar gemacht wurde. Dies können KPIs, Berichte, einzelne Entitäten oder andere Feeds sein. Klicken Sie in Dynamics 365 Business Central auf die Lupe und suchen Sie nach Webdiensten, um eine Vorstellung davon zu bekommen, was diese Endpoints alles verfügbar machen.
Web Services Endpoint - Produktion
https://api.businesscentral.dynamics.com/v1.0/ODataV4/
Web Services Endpoint - Testen
https://api.businesscentral.dynamics.com/v1.0/{tenant id}/ODataV4/
Custom API Endpoints
Um eine Verbindung zu benutzerdefinierten API Endpoints herzustellen, müssen Sie die Eigenschaft OrganizationUrl auf Ihre benutzerdefinierte Basis URL im folgenden Format festlegen: *https://api.businesscentral.dynamics.com/v2.0/{tenant}/api/{API publisher}/{API group}/{API version}*
Änderungen der Endpoint-Standardeinstellungen ab 2019
In der Version 2019 war der Endpoint der Web Services-Endpoint, wenn ein https://businesscentral.dynamics.com/
URL wurde an übermittelt OrganizationUrl
. Der neue Standard ist der Common Service-Endpoint. Um den Web Services-Endpoint weiterhin zu verwenden, legen Sie ihn entweder direkt fest oder ändern Sie den EndpointType
zu WSTesting.
Wichtige Hinweise
Konfigurationsdateien und ihre Pfade
- Alle Verweise auf das Hinzufügen von Konfigurationsdateien und deren Pfaden beziehen sich auf Dateien und Speicherorte auf dem Jitterbit-Agenten, auf dem der Connector installiert ist. Diese Pfade sind je nach Agent und Operationssystem entsprechend anzupassen. Wenn mehrere Agenten in einer Agentengruppe verwendet werden, werden auf jedem Agenten identische Dateien benötigt.
Erweiterte Funktionen
In diesem Abschnitt wird eine Auswahl erweiterter Funktionen des Dynamics 365 Business Central Connectors beschrieben.
Benutzerdefinierte Ansichten
Der Connector ermöglicht Ihnen die Definition virtueller Tabellen, sogenannter benutzerdefinierter Ansichten, deren Inhalt durch eine vorkonfigurierte Abfrage bestimmt wird. Diese Ansichten sind nützlich, wenn Sie die an die Treiber gesendeten Abfragen nicht direkt steuern können. Siehe Benutzerdefinierte Ansichten für einen Überblick über das Erstellen und Konfigurieren benutzerdefinierter Ansichten.
SSL-Konfiguration
Verwenden Sie SSL-Konfiguration, um anzupassen, wie der Connector TLS/SSL-Zertifikatsverhandlungen handhabt. Sie können aus verschiedenen Zertifikatsformaten wählen; siehe SSLServerCert
-Eigenschaft unter „Verbindungszeichenfolgenoptionen“ für weitere Informationen.
Proxy
So konfigurieren Sie den Connector mit privaten Agent-Proxy-Einstellungen, wählen Sie die Use Proxy Settings
Kontrollkästchen auf dem Verbindungskonfigurationsbildschirm.
Benutzerdefinierte Ansichten
Mit dem Dynamics 365 Business Central Connector können Sie eine virtuelle Tabelle definieren, deren Inhalt durch eine vorkonfigurierte Abfrage bestimmt wird. Diese werden als benutzerdefinierte Ansichten bezeichnet und sind in Situationen nützlich, in denen Sie die an den Treiber gesendete Abfrage nicht direkt steuern können, z. B. wenn Sie den Treiber von Jitterbit verwenden. Die benutzerdefinierten Ansichten können verwendet werden, um Prädikate zu definieren, die immer angewendet werden. Wenn Sie in der Abfrage an die Ansicht zusätzliche Prädikate angeben, werden diese mit der bereits als Teil der Ansicht definierten Abfrage kombiniert.
Es gibt zwei Möglichkeiten, benutzerdefinierte Ansichten zu erstellen:
- Erstellen Sie eine Konfigurationsdatei im JSON-Format, die die gewünschten Ansichten definiert.
- DDL-Anweisungen.
Definieren von Ansichten mithilfe einer Konfigurationsdatei
Benutzerdefinierte Ansichten werden in einer JSON-formatierten Konfigurationsdatei namens UserDefinedViews.json
. Der Connector erkennt die in dieser Datei angegebenen Ansichten automatisch.
Sie können auch mehrere Ansichtsdefinitionen haben und diese mit steuern UserDefinedViews
Verbindungseigenschaft. Wenn Sie diese Eigenschaft verwenden, werden vom Connector nur die angegebenen Ansichten angezeigt.
Diese Konfigurationsdatei für benutzerdefinierte Ansichten ist wie folgt formatiert:
- Jedes Stammelement definiert den Namen einer Ansicht.
- Jedes Stammelement enthält ein untergeordnetes Element namens
query
, das die benutzerdefinierte SQL- Abfrage für die Ansicht enthält.
Zum Beispiel:
{
"MyView": {
"query": "SELECT * FROM Accounts WHERE MyColumn = 'value'"
},
"MyView2": {
"query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
}
}
Verwenden Sie UserDefinedViews
Verbindungseigenschaft, um den Speicherort Ihrer JSON-Konfigurationsdatei anzugeben. Beispiel:
"UserDefinedViews", "C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json"
Schema für benutzerdefinierte Ansichten
Benutzerdefinierte Ansichten werden im angezeigt UserViews
Schema standardmäßig. Dies geschieht, um zu vermeiden, dass der Name der Ansicht mit einer tatsächlichen Entität im Datenmodell kollidiert. Sie können den Namen des für UserViews verwendeten Schema ändern, indem Sie UserViewsSchemaName
Eigentum.
Arbeiten mit benutzerdefinierten Ansichten
Beispielsweise eine SQL-Anweisung mit einer benutzerdefinierten Ansicht namens UserViews.RCustomers
listet nur Kunden in Raleigh auf:
SELECT * FROM Customers WHERE City = 'Raleigh';
Ein Beispiel für eine Abfrage an den Treiber:
SELECT * FROM UserViews.RCustomers WHERE Status = 'Active';
Daraus ergibt sich die effektive Abfrage an die Quelle:
SELECT * FROM Customers WHERE City = 'Raleigh' AND Status = 'Active';
Dies ist ein sehr einfaches Beispiel für eine Abfrage an eine benutzerdefinierte Ansicht, die tatsächlich eine Kombination aus der Abfrage und der Ansichtsdefinition ist. Es ist möglich, diese Abfragen in viel komplexeren Mustern zusammenzustellen. Alle SQL-Operationen sind in beiden Abfragen zulässig und werden bei Bedarf kombiniert.
SSL-Konfiguration
Anpassen der SSL-Konfiguration
Standardmäßig versucht der Connector, SSL/TLS auszuhandeln, indem er das Zertifikat des Servers mit dem vertrauenswürdigen Zertifikatspeicher des Systems vergleicht.
Um ein anderes Zertifikat anzugeben, siehe SSLServerCert
Eigenschaft für die verfügbaren Formate, um dies zu tun.
Datenmodell
Der Dynamics 365 Business Central Connector modelliert Dynamics 365 Business Central Entitäten in relationalen Tabellen, Ansichten und gespeicherten Prozeduren. Die Tabellendefinitionen werden dynamisch vom OData Dienst abgerufen, mit dem Sie eine Verbindung herstellen. Alle Änderungen in den Metadaten, z. B. hinzugefügte oder entfernte Spalten oder Änderungen im Datentyp, können durch erneutes Herstellen der Verbindung geladen werden.
Tabellen
Der Connector modelliert die im Service-Metadatendokument beschriebenen beschreibbaren Entitäten als bidirektionale Tabellen.
Gespeicherte Prozeduren
Gespeicherte Prozeduren sind funktionsähnliche Schnittstellen zur Datenquelle. Sie können verwendet werden, um zusätzliche Vorgänge auszuführen, die außerhalb des Standard-CRUD-Modells liegen.
Verschiedene Informationen
Beachten Sie, dass die Anweisung „Insert“ für die Tabelle SalesInvoiceLines nur funktioniert, wenn der Status der Verkaufsrechnung „ENTWURF“ ist. Wenn der Status „BEZAHLT“ oder „OFFEN“ ist, wird die Anweisung „Insert“ nicht erfolgreich abgeschlossen. Dies ist eine API Einschränkung.
Tabellen
Standard-Tabellenanzeige
Der Dynamics 365 Business Central Connector stellt nur Tabellen bereit, die in Ihrem Konto als Webdienste konfiguriert sind. Er verwendet die OData Dienste von Dynamics 365 Business Central, um die Tabellenliste dynamisch abzurufen und anzuzeigen, nachdem Sie eine Verbindung hergestellt haben. Sie können zusätzliche Tabellen anzeigen. Im nächsten Abschnitt wird das Verfahren beschrieben.
Anzeige zusätzlicher Tabellen
Wenn Sie andere Tabellen (Endpoints) anzeigen möchten als die, die der Dynamics 365 Business Central Connector angezeigt hat, konfigurieren Sie zunächst die gewünschten Tabellen als Webdienst von Ihrem Konto aus. Der Connector erkennt dann die freigegebenen Endpoints und zeigt sie an.
Gehen Sie hierzu folgendermaßen vor:
- Melden Sie sich bei Ihrem Dynamics 365 Business Central-Konto an.
- Navigieren Sie zu
Web Services
und klickNew
. - Unter
Object Type
, wählenPage
oderQuery
. Die Codeunit-Option ist in Dynamics 365 Business Central Version 16.3 oder höher verfügbar. - Im
Object ID
Öffnen Sie die Dropdown-Liste und klicken Sie aufSelect from full list
. - Wählen Sie die Tabellen aus, die Sie anzeigen möchten, aus
Object Name
Spalte. - Geben Sie die an
Service Name
, um festzulegen, wie der Dienst angezeigt wird. - Wählen Sie
Published
Kontrollkästchen und warten Sie, bis dieODat V4 URL
Feld ist ausgefüllt. - Überprüfen Sie die obere rechte Ecke der Seite, um sicherzustellen, dass die Änderungen gespeichert wurden.
- Wiederholen Sie diesen Vorgang für alle anderen Tabellen (als Webdienste konfiguriert), die Sie hinzufügen möchten.
Filtern mit AL Enum-Objekten
Einige Business Central API Seiten, darunter die meisten API v2.0-Seiten, haben Felder, die auf AL Enum-Objekten basieren.
Felder, die auf AL-Enum-Objekten basieren, müssen konsistente und immer gleiche Namen haben, damit die Filter im Bericht immer funktionieren, unabhängig von der verwendeten Sprache oder dem verwendeten Operationssystem. Aus diesem Grund werden die auf AL-Enums basierenden Felder nicht übersetzt und die Business Central API erfordert ihre Codierung, um Sonderzeichen zu vermeiden.
Um mit einem Enumerationswert filtern zu können, müssen Sie den Wert kodieren, indem Sie auf https://www.w3.org/Style/XSL/TestSuite/results/4/XEP/symbol.pdf
Dokumentation und Anhängen _
(Unterstrich) vor und nach dem Symbol.
Insbesondere bei Leerzeichen wäre dies „_x0020_“. z. B.: SELECT * FROM DimensionSetLines WHERE parentid={id} and parentType='Sales_x0020_Order'
Um zu prüfen, ob das Feld ein Enumerationsobjekt ist, können Sie auf die Spalte IsEnumeration der Tabelle sys_tablecolumns verweisen.
Gespeicherte Prozeduren
Gespeicherte Prozeduren stehen zur Ergänzung der im Datenmodell verfügbaren Daten zur Verfügung. Es kann erforderlich sein, die in einer Ansicht verfügbaren Daten mithilfe einer gespeicherten Prozedur zu aktualisieren, da die Daten keine direkten, tabellenartigen, bidirektionalen Aktualisierungen ermöglichen. In diesen Situationen erfolgt der Abruf der Daten mithilfe der entsprechenden Ansicht oder Tabelle, während die Aktualisierung durch Aufruf einer gespeicherten Prozedur erfolgt. Gespeicherte Prozeduren verwenden eine Liste von Parametern und geben einen Datensatz zurück, der die Sammlung von Tupeln enthält, die die Antwort bilden.
Gespeicherte Prozeduren für den Dynamics 365 Business Central Connector
Name | Beschreibung |
---|---|
GetAdminConsentURL | Ruft die Administratoreinwilligungs URL ab, die von einem Administrator einer bestimmten Domäne separat geöffnet werden muss, um Zugriff auf Ihre Anwendung zu gewähren. Nur erforderlich, wenn benutzerdefinierte OAuth-Anmeldeinformationen verwendet werden. |
GetOAuthAccessToken | Ruft das Authentifizierungstoken ab, das zur Authentifizierung beim Dienst verwendet wird. |
GetOAuthAuthorizationUrl | Ruft eine Autorisierungs URL von der Datenquelle ab. Die Autorisierungs URL kann verwendet werden, um einen Verifier zu generieren, der zum Abrufen des OAuth-Tokens erforderlich ist. |
RefreshOAuthAccessToken | Ruft einen aktualisierten OAuthAccessToken ab, wenn ein Token zum Aktualisieren übergeben wurde. |
GetAdminConsentURL
Ruft die Administratoreinwilligungs URL ab, die von einem Administrator einer bestimmten Domäne separat geöffnet werden muss, um Zugriff auf Ihre Anwendung zu gewähren. Nur erforderlich, wenn benutzerdefinierte OAuth-Anmeldeinformationen verwendet werden.
Eingang
Name | Typ | Beschreibung |
---|---|---|
CallbackUrl | String | Die URL, zu der der Benutzer nach der Autorisierung Ihrer Anwendung weitergeleitet wird. Dieser Wert muss mit der Antwort URL in den Microsoft Entra ID App-Einstellungen übereinstimmen. |
State | String | Derselbe Wert für den Status, den Sie gesendet haben, als Sie den Autorisierungscode angefordert haben. |
Ergebnissatzspalten
Name | Typ | Beschreibung |
---|---|---|
URL | String | Die Autorisierungs-URL, die in einen Webbrowser eingegeben wird, um das Prüftoken zu erhalten und Ihre App zu autorisieren. |
GetOAuthAccessToken
Ruft das Authentifizierungstoken ab, das zur Authentifizierung beim Dienst verwendet wird.
Eingang
Name | Typ | Beschreibung |
---|---|---|
AuthMode | String | Der Authentifizierungstyp, den Sie versuchen. Verwenden Sie App für eine Windows-Anwendung oder Web für webbasierte Anwendungen. Der Standardwert ist APP. |
Verifier | String | Ein vom Dienst zurückgegebener Prüfer, der eingegeben werden muss, um das Zugriffstoken zurückzugeben. Wird nur bei Verwendung des Webauthentifizierungsmodus benötigt. Wird durch Navigieren zur in GetOAuthAuthorizationUrl zurückgegebenen URL abgerufen. |
CallbackUrl | String | Die URL, zu der der Benutzer nach der Autorisierung Ihrer Anwendung weitergeleitet wird. |
State | String | Dieses Feld zeigt alle Zustände an, die für Ihre Anwendung nach Erhalt der Antwort nützlich sein können. Ihre Anwendung erhält denselben Wert, den sie gesendet hat, da dieser Parameter einen Hin- und Rückweg zum Dynamics-Autorisierungsserver und zurück durchführt. Zu den Verwendungsmöglichkeiten gehören die Umleitung des Benutzers zur richtigen Ressource auf Ihrer Site, die Verwendung von Nonces und die Minderung von Cross-Site-Request-Forgery. |
Prompt | String | Die Standardeinstellung ist „select_account“, wodurch der Benutzer bei der Authentifizierung aufgefordert wird, ein Konto auszuwählen. Auf „None“ eingestellt, damit keine Eingabeaufforderung erfolgt, auf „login“, damit der Benutzer zur Eingabe seiner Anmeldeinformationen gezwungen wird, oder auf „consent“, damit nach der Anmeldung des Benutzers das OAuth-Zustimmungsdialogfeld ausgelöst wird, in dem der Benutzer aufgefordert wird, der App Berechtigungen zu erteilen. |
Ergebnissatzspalten
Name | Typ | Beschreibung |
---|---|---|
OAuthAccessToken | String | Das OAuth-Zugriffstoken. |
\* | String | Andere Ausgaben, die von der Datenquelle zurückgegeben werden können. |
GetOAuthAuthorizationUrl
Ruft eine Autorisierungs URL aus der Datenquelle ab. Die Autorisierungs URL kann verwendet werden, um einen Prüfer zu generieren, der zum Abrufen des OAuth-Tokens erforderlich ist.
Eingang
Name | Typ | Beschreibung |
---|---|---|
CallbackURL | String | Die URL, zu der der Benutzer nach der Autorisierung Ihrer Anwendung weitergeleitet wird. |
State | String | Dieses Feld zeigt alle Zustände an, die für Ihre Anwendung nach Erhalt der Antwort nützlich sein können. Ihre Anwendung erhält denselben Wert, den sie gesendet hat, da dieser Parameter einen Hin- und Rückweg zum Dynamics-Autorisierungsserver und zurück durchführt. Zu den Verwendungsmöglichkeiten gehören die Umleitung des Benutzers zur richtigen Ressource auf Ihrer Site, die Verwendung von Nonces und die Minderung von Cross-Site-Request-Forgery. |
Prompt | String | Die Standardeinstellung ist „select_account“, wodurch der Benutzer bei der Authentifizierung aufgefordert wird, ein Konto auszuwählen. Auf „None“ eingestellt, damit keine Eingabeaufforderung erfolgt, auf „login“, damit der Benutzer zur Eingabe seiner Anmeldeinformationen gezwungen wird, oder auf „consent“, damit nach der Anmeldung des Benutzers das OAuth-Zustimmungsdialogfeld ausgelöst wird, in dem der Benutzer aufgefordert wird, der App Berechtigungen zu erteilen. |
Ergebnissatzspalten
Name | Typ | Beschreibung |
---|---|---|
Url | String | Die Autorisierungs-URL, die geöffnet werden muss, damit der Benutzer Ihre App autorisieren kann. |
Aktualisieren Sie das OAuthAccessToken
Erhält einen aktualisierten OAuthAccessToken, wenn ein Token zum Aktualisieren übergeben wird.
Eingang
Name | Typ | Beschreibung |
---|---|---|
OAuthRefreshToken | String | Das vom ursprünglichen Autorisierungscode-Austausch zurückgegebene Aktualisierungstoken. |
Ergebnissatzspalten
Name | Typ | Beschreibung |
---|---|---|
OAuthAccessToken | String | Das neue OAuthAccessToken, das vom Dienst zurückgegeben wurde. |
OAuthRefreshToken | String | Ein Token, der zum Abrufen eines neuen Zugriffstokens verwendet werden kann. |
ExpiresIn | String | Die verbleibende Lebensdauer des Zugriffstokens. |
Systemtabellen
Sie können die in diesem Abschnitt beschriebenen Systemtabellen Abfrage, um auf Schema, Informationen zur Datenquellenfunktionalität und Statistiken zu Operation Charge.
Schematabellen
Die folgenden Tabellen geben Datenbankmetadaten für Dynamics 365 Business Central zurück:
- sys_catalogs: Listet die verfügbaren Datenbanken auf.
- sys_schemas: Listet die verfügbaren Schemata auf.
- sys_tables: Listet die verfügbaren Tabellen und Ansichten auf.
- sys_tablecolumns: Beschreibt die Spalten der verfügbaren Tabellen und Ansichten.
- sys_procedures: Beschreibt die verfügbaren gespeicherten Prozeduren.
- sys_procedureparameters: Beschreibt Parameter gespeicherter Prozeduren.
- sys_keycolumns: Beschreibt die Primär- und Fremdschlüssel.
- sys_indexes: Beschreibt die verfügbaren Indizes.
Datenquellentabellen
Die folgenden Tabellen enthalten Informationen dazu, wie eine Verbindung zur Datenquelle hergestellt und diese Abfrage wird:
- sys_connection_props: Gibt Informationen zu den verfügbaren Verbindungseigenschaften zurück.
- sys_sqlinfo: Beschreibt die SELECT-Abfragen, die der Connector an die Datenquelle auslagern kann.
Abfrageinformationstabellen
Die folgende Tabelle gibt Abfrage für Datenänderungsabfragen zurück, einschließlich Charge:
- Systemidentität: Gibt Informationen zu Charge oder einzelnen Updates zurück.
Sys_catalogs
Listet die verfügbaren Datenbanken auf.
Die folgende Abfrage ruft alle durch die Verbindungszeichenfolge ermittelten Datenbanken ab:
SELECT * FROM sys_catalogs
Spalten
Name | Typ | Beschreibung |
---|---|---|
CatalogName | String | Der Datenbankname. |
Sys_schemas
Listet die verfügbaren Schemas auf.
Die folgende Abfrage ruft alle verfügbaren Schemata ab:
SELECT * FROM sys_schemas
Spalten
Name | Typ | Beschreibung |
---|---|---|
CatalogName | String | Der Datenbankname. |
SchemaName | String | Der Schema. |
Sys_tables
Listet die verfügbaren Tabellen auf.
Die folgende Abfrage ruft die verfügbaren Tabellen und Ansichten ab:
SELECT * FROM sys_tables
Spalten
Name | Typ | Beschreibung |
---|---|---|
CatalogName | String | Die Datenbank, die die Tabelle oder Ansicht enthält. |
SchemaName | String | Das Schema, das die Tabelle oder Ansicht enthält. |
TableName | String | Der Name der Tabelle oder Ansicht. |
TableType | String | Der Tabellentyp (Tabelle oder Ansicht). |
Description | String | Eine Beschreibung der Tabelle oder Ansicht. |
IsUpdateable | Boolean | Ob die Tabelle aktualisiert werden kann. |
Sys_tablecolumns
Beschreibt die Spalten der verfügbaren Tabellen und Ansichten.
Die folgende Abfrage gibt die Spalten und Datentypen für die Tabelle „Konten“ zurück:
SELECT ColumnName, DataTypeName FROM sys_tablecolumns WHERE TableName='Accounts'
Spalten
Name | Typ | Beschreibung |
---|---|---|
CatalogName | String | Der Name der Datenbank, die die Tabelle oder Ansicht enthält. |
SchemaName | String | Das Schema, das die Tabelle oder Ansicht enthält. |
TableName | String | Der Name der Tabelle oder Ansicht, die die Spalte enthält. |
ColumnName | String | Der Spaltenname. |
DataTypeName | String | Der Name des Datentyps. |
DataType | Int32 | Eine Ganzzahl, die den Datentyp angibt. Dieser Wert wird zur Laufzeit basierend auf der Umfeld bestimmt. |
Length | Int32 | Die Speichergröße der Spalte. |
DisplaySize | Int32 | Die normale Maximalbreite der angegebenen Spalte in Zeichen. |
NumericPrecision | Int32 | Die maximale Anzahl von Ziffern in numerischen Daten. Die Spaltenlänge in Zeichen für Zeichen- und Datums-/Uhrzeitdaten. |
NumericScale | Int32 | Die Spaltenskala oder Anzahl der Ziffern rechts vom Dezimalpunkt. |
IsNullable | Boolean | Ob die Spalte Null enthalten kann. |
Description | String | Eine kurze Beschreibung der Spalte. |
Ordinal | Int32 | Die Sequenznummer der Spalte. |
IsAutoIncrement | String | Ob der Spaltenwert in festen Schritten zugewiesen wird. |
IsGeneratedColumn | String | Ob die Spalte generiert wird. |
IsHidden | Boolean | Ob die Spalte ausgeblendet ist. |
IsArray | Boolean | Ob die Spalte ein Array ist. |
Sys_keycolumns
Beschreibt die Primär- und Fremdschlüssel.
Die folgende Abfrage ruft den Primärschlüssel für die Tabelle „Konten“ ab:
SELECT * FROM sys_keycolumns WHERE IsKey='True' AND TableName='Accounts'
Spalten
Name | Typ | Beschreibung |
---|---|---|
CatalogName | String | Der Name der Datenbank, die den Schlüssel enthält. |
SchemaName | String | Der Name des Schema, das den Schlüssel enthält. |
TableName | String | Der Name der Tabelle, die den Schlüssel enthält. |
ColumnName | String | Der Name der Schlüsselspalte. |
IsKey | Boolean | Ob die Spalte ein Primärschlüssel in der Tabelle ist, auf die im Feld „TableName“ verwiesen wird. |
IsForeignKey | Boolean | Ob die Spalte ein Fremdschlüssel ist, auf den im Feld TableName verwiesen wird. |
PrimaryKeyName | String | Der Name des Primärschlüssels. |
ForeignKeyName | String | Der Name des Fremdschlüssels. |
ReferencedCatalogName | String | Die Datenbank, die den Primärschlüssel enthält. |
ReferencedSchemaName | String | Das Schema, das den Primärschlüssel enthält. |
ReferencedTableName | String | Die Tabelle, die den Primärschlüssel enthält. |
ReferencedColumnName | String | Der Spaltenname des Primärschlüssels. |
Sys_foreignkeys
Beschreibt die Fremdschlüssel.
Die folgende Abfrage ruft alle Fremdschlüssel ab, die auf andere Tabellen verweisen:
SELECT * FROM sys_foreignkeys WHERE ForeignKeyType = 'FOREIGNKEY_TYPE_IMPORT'
Spalten
Name | Typ | Beschreibung |
---|---|---|
CatalogName | String | Der Name der Datenbank, die den Schlüssel enthält. |
SchemaName | String | Der Name des Schema, das den Schlüssel enthält. |
TableName | String | Der Name der Tabelle, die den Schlüssel enthält. |
ColumnName | String | Der Name der Schlüsselspalte. |
PrimaryKeyName | String | Der Name des Primärschlüssels. |
ForeignKeyName | String | Der Name des Fremdschlüssels. |
ReferencedCatalogName | String | Die Datenbank, die den Primärschlüssel enthält. |
ReferencedSchemaName | String | Das Schema, das den Primärschlüssel enthält. |
ReferencedTableName | String | Die Tabelle, die den Primärschlüssel enthält. |
ReferencedColumnName | String | Der Spaltenname des Primärschlüssels. |
ForeignKeyType | String | Gibt an, ob der Fremdschlüssel ein Importschlüssel (zeigt auf andere Tabellen) oder ein Exportschlüssel (referenziert von anderen Tabellen) ist. |
Sys_indexes
Beschreibt die verfügbaren Indizes. Durch das Filtern nach Indizes können Sie selektivere Abfragen mit schnelleren Abfrage schreiben.
Die folgende Abfrage ruft alle Indizes ab, die keine Primärschlüssel sind:
SELECT * FROM sys_indexes WHERE IsPrimary='false'
Spalten
Name | Typ | Beschreibung |
---|---|---|
CatalogName | String | Der Name der Datenbank, die den Index enthält. |
SchemaName | String | Der Name des Schema, das den Index enthält. |
TableName | String | Der Name der Tabelle, die den Index enthält. |
IndexName | String | Der Indexname. |
ColumnName | String | Der Name der mit dem Index verknüpften Spalte. |
IsUnique | Boolean | Wahr, wenn der Index eindeutig ist. Andernfalls falsch. |
IsPrimary | Boolean | Wahr, wenn der Index ein Primärschlüssel ist. Andernfalls falsch. |
Type | Int16 | Ein ganzzahliger Wert, der dem Indextyp entspricht: Statistik (0), gruppiert (1), gehasht (2) oder Sonstiges (3). |
SortOrder | String | Die Sortierreihenfolge: A für aufsteigend oder D für absteigend. |
OrdinalPosition | Int16 | Die Sequenznummer der Spalte im Index. |
Sys_connection_props
Gibt Informationen zu den verfügbaren Verbindungseigenschaften und den in der Verbindungszeichenfolge festgelegten Eigenschaften zurück.
Bei der Abfrage dieser Tabelle sollte die Konfigurationsverbindungszeichenfolge verwendet werden:
jdbc:cdata:d365businesscentral:config:
Mit dieser Verbindungszeichenfolge können Sie diese Tabelle ohne eine gültige Verbindung Abfrage.
Die folgende Abfrage ruft alle Verbindungseigenschaften ab, die in der Verbindungszeichenfolge festgelegt oder über einen Standardwert gesetzt wurden:
SELECT * FROM sys_connection_props WHERE Value <> ''
Spalten
Name | Typ | Beschreibung |
---|---|---|
Name | String | Der Name der Verbindungseigenschaft. |
ShortDescription | String | Eine kurze Beschreibung. |
Type | String | Der Datentyp der Verbindungseigenschaft. |
Default | String | Der Standardwert, sofern nicht explizit einer festgelegt wurde. |
Values | String | Eine durch Kommas getrennte Liste möglicher Werte. Wenn ein anderer Wert angegeben wird, wird ein Validierungsfehler ausgegeben. |
Value | String | Der von Ihnen festgelegte Wert oder ein vorkonfigurierter Standard. |
Required | Boolean | Ob für die Immobilie eine Anschlusspflicht besteht. |
Category | String | Die Kategorie der Verbindungseigenschaft. |
IsSessionProperty | String | Ob die Eigenschaft eine Sitzungseigenschaft ist, die zum Speichern von Informationen zur aktuellen Verbindung verwendet wird. |
Sensitivity | String | Die Vertraulichkeitsstufe der Eigenschaft. Diese gibt Aufschluss darüber, ob die Eigenschaft in Protokollierungs- und Authentifizierungsformularen verschleiert wird. |
PropertyName | String | Eine verkürzte Form des Verbindungseigenschaftsnamens in Camel-Case-Schreibweise. |
Ordinal | Int32 | Der Index des Parameters. |
CatOrdinal | Int32 | Der Index der Parameterkategorie. |
Hierarchy | String | Zeigt zugehörige abhängige Eigenschaften an, die zusammen mit dieser festgelegt werden müssen. |
Visible | Boolean | Informiert, ob die Eigenschaft in der Verbindungs-Benutzeroberfläche sichtbar ist. |
ETC | String | Verschiedene sonstige Informationen zum Objekt. |
Sys_sqlinfo
Beschreibt die SELECT- Abfrage, die der Connector an die Datenquelle auslagern kann.
Gemeinsame Abfrageverarbeitung
Wenn Sie mit Datenquellen arbeiten, die SQL-92 nicht unterstützen, können Sie die Ansicht sys_sqlinfo Abfrage, um die Abfrage der zugrunde liegenden APIs in SQL-Syntax zu ermitteln. Der Connector verlagert so viel wie möglich von der Verarbeitung der SELECT-Anweisung auf den Server und verarbeitet den Rest der Abfrage dann im Speicher.
Entdecken der SELECT-Funktionen der Datenquelle
Nachfolgend sehen Sie einen Beispieldatensatz mit SQL-Funktionen. Der folgende Ergebnissatz zeigt die SELECT-Funktionalität an, die der Connector auf die Datenquelle oder die Prozessclientseite auslagern kann. Ihre Datenquelle unterstützt möglicherweise zusätzliche SQL-Syntax. Einige Aspekte der SELECT-Funktionalität werden in einer durch Kommas getrennten Liste zurückgegeben, sofern sie unterstützt werden; andernfalls enthält die Spalte NO.
Name | Beschreibung | Mögliche Werte |
---|---|---|
AGGREGATE_FUNCTIONS | Unterstützte Aggregatfunktionen. | AVG , COUNT , MAX , MIN , SUM , DISTINCT |
COUNT | Ob die COUNT-Funktion unterstützt wird. | YES , NO |
IDENTIFIER_QUOTE_OPEN_CHAR | Das öffnende Zeichen, das zum Escapen eines Bezeichners verwendet wird. | [ |
IDENTIFIER_QUOTE_CLOSE_CHAR | Das abschließende Zeichen, das zum Escapen eines Bezeichners verwendet wird. | ] |
SUPPORTED_OPERATORS | Eine Liste unterstützter SQL-Operatoren. | = , > , < , >= , <= , <> , != , LIKE , NOT LIKE , IN , NOT IN , IS NULL , IS NOT NULL , AND , OR |
GROUP_BY | Ob GROUP BY unterstützt wird und wenn ja, in welchem Umfang. | NO , NO_RELATION , EQUALS_SELECT , SQL_GB_COLLATE |
STRING_FUNCTIONS | Unterstützte String-Funktionen. | LENGTH , CHAR , LOCATE , REPLACE , SUBSTRING , RTRIM , LTRIM , RIGHT , LEFT , UCASE , SPACE , SOUNDEX , LCASE , CONCAT , ASCII , REPEAT , OCTET , BIT , POSITION , INSERT , TRIM , UPPER , REGEXP , LOWER , DIFFERENCE , CHARACTER , SUBSTR , STR , REVERSE , PLAN , UUIDTOSTR , TRANSLATE , TRAILING , TO , STUFF , STRTOUUID , STRING , SPLIT , SORTKEY , SIMILAR , REPLICATE , PATINDEX , LPAD , LEN , LEADING , KEY , INSTR , INSERTSTR , HTML , GRAPHICAL , CONVERT , COLLATION , CHARINDEX , BYTE |
NUMERIC_FUNCTIONS | Unterstützte numerische Funktionen. | ABS , ACOS , ASIN , ATAN , ATAN2 , CEILING , COS , COT , EXP , FLOOR , LOG , MOD , SIGN , SIN , SQRT , TAN , PI , RAND , DEGREES , LOG10 , POWER , RADIANS , ROUND , TRUNCATE |
TIMEDATE_FUNCTIONS | Unterstützte Datums-/Uhrzeitfunktionen. | NOW , CURDATE , DAYOFMONTH , DAYOFWEEK , DAYOFYEAR , MONTH , QUARTER , WEEK , YEAR , CURTIME , HOUR , MINUTE , SECOND , TIMESTAMPADD , TIMESTAMPDIFF , DAYNAME , MONTHNAME , CURRENT_DATE , CURRENT_TIME , CURRENT_TIMESTAMP , EXTRACT |
REPLICATION_SKIP_TABLES | Zeigt an, dass während der Replikation Tabellen übersprungen wurden. | |
REPLICATION_TIMECHECK_COLUMNS | Ein Zeichenfolgenarray mit einer Liste von Spalten, die (in der angegebenen Reihenfolge) zur Überprüfung verwendet werden, ob sie während der Replikation als geänderte Spalte verwendet werden sollen. | |
IDENTIFIER_PATTERN | Zeichenfolgenwert, der angibt, welche Zeichenfolge für einen Bezeichner gültig ist. | |
SUPPORT_TRANSACTION | Gibt an, ob der Anbieter Transaktionen wie Commit und Rollback unterstützt. | YES , NO |
DIALECT | Gibt den zu verwendenden SQL-Dialekt an. | |
KEY_PROPERTIES | Gibt die Eigenschaften an, die die einheitliche Datenbank identifizieren. | |
SUPPORTS_MULTIPLE_SCHEMAS | Gibt an, ob für den Anbieter mehrere Schemas vorhanden sein können. | YES , NO |
SUPPORTS_MULTIPLE_CATALOGS | Gibt an, ob für den Anbieter mehrere Kataloge vorhanden sein können. | YES , NO |
DATASYNCVERSION | Die für den Zugriff auf diesen Treiber erforderliche Data Sync-Version. | Standard , Starter , Professional , Enterprise |
DATASYNCCATEGORY | Die Kategorie „Datensynchronisierung“ dieses Treiber. | Source , Destination , Cloud Destination |
SUPPORTSENHANCEDSQL | Ob erweiterte SQL-Funktionen über das hinaus, was die API bietet, unterstützt werden. | TRUE , FALSE |
SUPPORTS_BATCH_OPERATIONS | Ob Charge Operationen unterstützt werden. | YES , NO |
SQL_CAP | Alle unterstützten SQL-Funktionen für diesen Treiber. | SELECT , INSERT , DELETE , UPDATE , TRANSACTIONS , ORDERBY , OAUTH , ASSIGNEDID , LIMIT , LIKE , BULKINSERT , COUNT , BULKDELETE , BULKUPDATE , GROUPBY , HAVING , AGGS , OFFSET , REPLICATE , COUNTDISTINCT , JOINS , DROP , CREATE , DISTINCT , INNERJOINS , SUBQUERIES , ALTER , MULTIPLESCHEMAS , GROUPBYNORELATION , OUTERJOINS , UNIONALL , UNION , UPSERT , GETDELETED , CROSSJOINS , GROUPBYCOLLATE , MULTIPLECATS , FULLOUTERJOIN , MERGE , JSONEXTRACT , BULKUPSERT , SUM , SUBQUERIESFULL , MIN , MAX , JOINSFULL , XMLEXTRACT , AVG , MULTISTATEMENTS , FOREIGNKEYS , CASE , LEFTJOINS , COMMAJOINS , WITH , LITERALS , RENAME , NESTEDTABLES , EXECUTE , BATCH , BASIC , INDEX |
PREFERRED_CACHE_OPTIONS | Ein Zeichenfolgenwert gibt die bevorzugten Cacheoptionen an. | |
ENABLE_EF_ADVANCED_QUERY | Gibt an, ob der Treiber erweiterte Abfragen aus dem Entity Framework direkt unterstützt. Wenn nicht, werden die Abfragen clientseitig verarbeitet. | YES , NO |
PSEUDO_COLUMNS | Ein Zeichenfolgenarray, das die verfügbaren Pseudospalten angibt. | |
MERGE_ALWAYS | Wenn der Wert „true“ ist, wird der Merge-Modus in der Datensynchronisierung zwangsweise ausgeführt. | TRUE , FALSE |
REPLICATION_MIN_DATE_QUERY | Eine Abfrage zum Zurückgeben des Startdatums und der Startzeit der Replikation. | |
REPLICATION_MIN_FUNCTION | Ermöglicht einem Anbieter, den Formelnamen anzugeben, der zum Ausführen eines serverseitigen Minimums verwendet werden soll. | |
REPLICATION_START_DATE | Ermöglicht einem Anbieter, ein Replikationsstartdatum anzugeben. | |
REPLICATION_MAX_DATE_QUERY | Eine Abfrage zum Zurückgeben des Enddatums und der Endzeit der Replikation. | |
REPLICATION_MAX_FUNCTION | Ermöglicht einem Anbieter, den Formelnamen anzugeben, der zur Ausführung eines serverseitigen Max. verwendet werden soll. | |
IGNORE_INTERVALS_ON_INITIAL_REPLICATE | Eine Liste von Tabellen, bei denen das Aufteilen der Replikation in Blöcke bei der ersten Replikation übersprungen wird. | |
CHECKCACHE_USE_PARENTID | Gibt an, ob die CheckCache-Anweisung für die übergeordnete Schlüsselspalte ausgeführt werden soll. | TRUE , FALSE |
CREATE_SCHEMA_PROCEDURES | Gibt gespeicherte Prozeduren an, die zum Generieren von Schema verwendet werden können. |
Die folgende Abfrage ruft die Operatoren ab, die in der WHERE-Klausel verwendet werden können:
SELECT * FROM sys_sqlinfo WHERE Name='SUPPORTED_OPERATORS'
Beachten Sie, dass einzelne Tabellen unterschiedliche Einschränkungen oder Anforderungen an die WHERE-Klausel haben können; siehe Datenmodell Abschnitt für weitere Informationen.
Spalten
Name | Typ | Beschreibung |
---|---|---|
NAME | String | Eine Komponente der SQL-Syntax oder eine Funktion, die auf dem Server verarbeitet werden kann. |
VALUE | String | Details zum unterstützten SQL bzw. zur SQL-Syntax. |
Systemidentität
Gibt Informationen zu versuchten Änderungen zurück.
Die folgende Abfrage ruft die IDs der geänderten Zeilen in einer Operation Charge:
SELECT * FROM sys_identity
Spalten
Name | Typ | Beschreibung |
---|---|---|
Id | String | Die von einer Operation zurückgegebene, von der Datenbank generierte ID. |
Batch | String | Eine Kennung für den Charge. 1 für einen einzelnen Operation. |
Operation | String | Das Ergebnis der Operation im Charge: EINGEFÜGT, AKTUALISIERT oder GELÖSCHT. |
Message | String | SUCCESS oder eine Fehlermeldung, wenn das Update im Charge fehlgeschlagen ist. |
Datentypzuordnung
Datentypzuordnungen
Der Connector ordnet Typen aus der Datenquelle dem entsprechenden im Schema verfügbaren Datentyp zu. Die folgende Tabelle dokumentiert diese Zuordnungen.
Dynamics 365 Business Central (OData V4) | Schema |
---|---|
Edm.Binary | binär |
Edm.Boolean | |
Edm.Date | Datum/Uhrzeit |
Edm.DateTimeOffset | Datum/Uhrzeit |
Edm.Decimal | Dezimal |
Edm.Double | doppelt |
Edm.Guid | Anleitung |
Edm.Int32 | int |
Edm.String | Zeichenfolge |
Edm.TimeOfDay | Zeit |
Erweiterte Konfigurationseigenschaften
Die erweiterten Konfigurationseigenschaften sind die verschiedenen Optionen, die zum Herstellen einer Verbindung verwendet werden können. Dieser Abschnitt enthält eine vollständige Liste der Optionen, die Sie konfigurieren können. Klicken Sie auf die Links, um weitere Einzelheiten zu erfahren.
Eigenschaft | Beschreibung |
---|---|
AuthScheme | Ob bei der Verbindung mit Business Central die OAuth-Authentifizierung oder die Zugriffsschlüssel-Authentifizierung verwendet werden soll. |
OrganizationURL | Die URL zu Ihrer Dynamics 365-Organisation. Beispiel: https://businesscentral.dynamics.com/abc123/ . |
User | Der Benutzername des Dynamics 365 OnPremise-Kontos, das zur Authentifizierung beim Dynamics 365 Business Central Server verwendet wird. |
AccessKey | Der Zugriffsschlüssel, der zur Authentifizierung bei Dynamics 365 Business Central verwendet wird. |
Company | Der Name des Unternehmens, das für Dynamics 365 Business Central verwendet wird. |
UseSandbox | Ein Boolescher Wert, der angibt, ob eine Sandbox verwendet wird. Setzen Sie diesen Wert auf „true“, wenn Sie einen anderen Sandbox-Namen als einfach „Sandbox“ haben. |
Eigenschaft | Beschreibung |
---|---|
AzureTenant | Der Microsoft Online-Mandant, der für den Datenzugriff verwendet wird. Wenn nicht angegeben, wird Ihr Standardmandant verwendet. |
AzureEnvironment | Die beim Herstellen einer Verbindung zu verwendende Azure-Umgebung. |
Eigenschaft | Beschreibung |
---|---|
InitiateOAuth | Legen Sie diese Eigenschaft fest, um den Prozess zum Abrufen oder Aktualisieren des OAuth-Zugriffstokens beim Herstellen einer Verbindung zu starten. |
OAuthClientId | Die Client-ID, die zugewiesen wird, wenn Sie Ihre Anwendung bei einem OAuth-Autorisierungsserver registrieren. |
OAuthClientSecret | Das Client-Geheimnis, das zugewiesen wird, wenn Sie Ihre Anwendung bei einem OAuth-Autorisierungsserver registrieren. |
OAuthAccessToken | Der Zugriffstoken für die Verbindung mittels OAuth. |
OAuthGrantType | Der Berechtigungstyp für den OAuth-Flow. |
OAuthSettingsLocation | Der Speicherort der Einstellungsdatei, in der OAuth-Werte gespeichert werden, wenn InitiateOAuth auf GETANDREFRESH oder REFRESH eingestellt ist. Alternativ können Sie diesen Speicherort im Speicher halten, indem Sie einen Wert angeben, der mit beginnt 'memory://' . |
CallbackURL | Die OAuth-Rückruf URL, zu der bei der Authentifizierung zurückgekehrt werden soll. Dieser Wert muss mit der Rückruf-URL übereinstimmen, die Sie in Ihren App-Einstellungen angeben. |
OAuthVerifier | Der von der OAuth-Autorisierungs URL zurückgegebene Prüfcode. |
OAuthRefreshToken | Das OAuth-Aktualisierungstoken für das entsprechende OAuth-Zugriffstoken. |
OAuthExpiresIn | Die Lebensdauer des OAuth AccessToken in Sekunden. |
OAuthTokenTimestamp | Der Unix-Epochenzeitstempel in Millisekunden, als das aktuelle Zugriffstoken erstellt wurde. |
Eigenschaft | Beschreibung |
---|---|
SSLServerCert | Das vom Server zu akzeptierende Zertifikat bei einer Verbindung per TLS/SSL. |
Eigenschaft | Beschreibung |
---|---|
Location | Ein Pfad zum Verzeichnis, das die Schema enthält, die Tabellen, Ansichten und gespeicherte Prozeduren definieren. |
BrowsableSchemas | Diese Eigenschaft beschränkt die gemeldeten Schemata auf eine Teilmenge der verfügbaren Schemata. Beispiel: BrowsableSchemas=SchemaA, SchemaB, SchemaC. |
Tables | Diese Eigenschaft beschränkt die gemeldeten Tabellen auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Tabellen=TabelleA, TabelleB, TabelleC. |
Views | Beschränkt die gemeldeten Ansichten auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Ansichten=AnsichtA, AnsichtB, AnsichtC. |
Eigenschaft | Beschreibung |
---|---|
EndpointType | Der Endpoint, zu dem die OrganizationUrl aufgelöst werden soll. |
IncludeNavigationProperties | Ein Boolescher Wert, der angibt, ob Navigationseigenschaften in die Spaltenliste aufgenommen werden sollen. |
MaxRows | Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder Gruppierung verwendet wird. Dadurch werden Leistungsprobleme zur Entwurfszeit vermieden. |
Other | Diese versteckten Eigenschaften werden nur in bestimmten Anwendungsfällen verwendet. |
PseudoColumns | Diese Eigenschaft gibt an, ob Pseudospalten als Spalten in die Tabelle aufgenommen werden sollen oder nicht. |
Timeout | Der Wert in Sekunden, bis der Timeout-Fehler auftritt und der Operation abgebrochen wird. |
Authentifizierung
Dieser Abschnitt enthält eine vollständige Liste der Authentifizierungseigenschaften, die Sie konfigurieren können.
Eigenschaft | Beschreibung |
---|---|
AuthScheme | Ob bei der Verbindung mit Business Central die OAuth-Authentifizierung oder die Zugriffsschlüssel-Authentifizierung verwendet werden soll. |
OrganizationURL | Die URL zu Ihrer Dynamics 365-Organisation. Beispiel: https://businesscentral.dynamics.com/abc123/ . |
User | Der Benutzername des Dynamics 365 OnPremise-Kontos, das zur Authentifizierung beim Dynamics 365 Business Central Server verwendet wird. |
AccessKey | Der Zugriffsschlüssel, der zur Authentifizierung bei Dynamics 365 Business Central verwendet wird. |
Company | Der Name des Unternehmens, das für Dynamics 365 Business Central verwendet wird. |
UseSandbox | Ein Boolescher Wert, der angibt, ob eine Sandbox verwendet wird. Setzen Sie diesen Wert auf „true“, wenn Sie einen anderen Sandbox-Namen als einfach „Sandbox“ haben. |
AuthScheme
Ob bei der Verbindung mit Business Central die OAuth-Authentifizierung oder die Access Key-Authentifizierung verwendet werden soll.
Mögliche Werte
Access Key
, AzureAD
, AzureServicePrincipal
, AzureMSI
, Auto
Datentyp
string
Standardwert
Auto
Hinweise
Ob bei der Verbindung mit Business Central die OAuth-Authentifizierung oder die Access Key-Authentifizierung verwendet werden soll.
Notiz
Die OAuth-Authentifizierung ist nur für die Cloud-Version verfügbar, wird aber voraussichtlich im August 2021 auch für OnPrem unterstützt.
- Automatisch: Versucht automatisch, basierend auf anderen Verbindungseigenschaften ein geeignetes Authentifizierungsschema zu bestimmen.
- Zugriffsschlüssel: Legen Sie dies fest, um die Authentifizierung mithilfe eines Zugriffsschlüssels durchzuführen. Funktioniert nur auf Endpoints, die zum Testen des Dienstes entwickelt wurden.
- Microsoft Entra ID: Legen Sie dies fest, um die Microsoft Entra ID OAuth-Authentifizierung durchzuführen.
- AzureServicePrincipal: Legen Sie dies fest, um die Authentifizierung als Microsoft Entra-Dienstprinzipal durchzuführen.
- AzureMSI: Legen Sie dies fest, um beim Ausführen auf einer Azure-VM automatisch Anmeldeinformationen für die verwaltete Dienstidentität abzurufen.
OrganisationURL
Die URL zu Ihrer Dynamics 365-Organisation. Beispiel: https://businesscentral.dynamics.com/abc123/
.
Datentyp
string
Standardwert
""
Hinweise
Die URL, die Sie zum Anmelden bei Ihrer Dynamics 365-Organisation verwenden. Beispiel: https://businesscentral.dynamics.com/abc123/
.
Dies kann auch als Ressource bezeichnet werden. Um diese zu finden, klicken Sie auf das Suchsymbol und suchen Sie nach „Web Services“. Überwachen Sie die OData v4 URL. Der Endwert sollte der Endpoint sein (abzüglich Company), wie zum Beispiel: https://api.businesscentral.dynamics.com/v1.0/businesscentralid/ODataV4/
.
Um eine Verbindung zu benutzerdefinierten APIs herzustellen, legen Sie diese Eigenschaft auf die Basis URL Ihrer benutzerdefinierten Dynamics 365 API fest. Beispiel: https://api.businesscentral.dynamics.com/v2.0/{environmentName}/api/{API publisher}/{API group}/{API version}
oder https://api.businesscentral.dynamics.com/v2.0/{tenant}/{environmentName}/api/{API publisher}/{API group}/{API version}
Benutzer
Der Benutzername des Dynamics 365 OnPremise-Kontos, der zur Authentifizierung beim Dynamics 365 Business Central Server verwendet wird.
Datentyp
string
Standardwert
""
Hinweise
Zusammen mit AccessKey, wird dieses Feld zur Authentifizierung beim Dynamics 365 Business Central Server verwendet.
Hinweis
Die Basisauthentifizierung wird ab April 2021 für die Cloud-Version nicht mehr unterstützt. Für die lokale Version bleibt der Web Service Access Key (Basic Auth) vorerst eine Option.
Zugriffsschlüssel
Der Zugriffsschlüssel, der zur Authentifizierung bei Dynamics 365 Business Central verwendet wird.
Datentyp
string
Standardwert
""
Hinweise
Zusammen mit Benutzer, wird dieses Feld zur Authentifizierung gegenüber Dynamics 365 Business Central verwendet.
Hinweis
Die Basisauthentifizierung wird ab April 2021 für die Cloud-Version nicht mehr unterstützt. Für die lokale Version bleibt der Web Service Access Key (Basic Auth) vorerst eine Option.
Unternehmen
Der Name des Unternehmens, das für Dynamics 365 Business Central verwendet wird.
Datentyp
string
Standardwert
""
Hinweise
Der Name des Unternehmens, das für Dynamics 365 Business Central verwendet wird. Diesen finden Sie auf der Seite „Unternehmensinformationen“. Die Eigenschaft „Unternehmen“ muss angegeben werden, wenn Ihre Organisation über mehrere Unternehmen verfügt. Wenn in Ihrer Organisation nur ein Unternehmen verfügbar ist, muss es nicht angegeben werden.
Sandbox verwenden
Ein Boolescher Wert, der angibt, ob eine Sandbox verwendet wird. Setzen Sie dies auf „true“, wenn Sie einen anderen Sandbox-Namen als einfach „Sandbox“ haben.
Datentyp
bool
Standardwert
false
Hinweise
Ein Boolescher Wert, der angibt, ob eine Sandbox verwendet wird. Setzen Sie dies auf „true“, wenn Sie einen anderen Sandbox-Namen als einfach „Sandbox“ haben.
Azure Authentifizierung
Dieser Abschnitt enthält eine vollständige Liste der Azure-Authentifizierungseigenschaften, die Sie konfigurieren können.
Eigenschaft | Beschreibung |
---|---|
AzureTenant | Der Microsoft Online-Mandant, der für den Datenzugriff verwendet wird. Wenn nicht angegeben, wird Ihr Standardmandant verwendet. |
AzureEnvironment | Die beim Herstellen einer Verbindung zu verwendende Azure-Umgebung. |
AzureTenant
Der Microsoft Online-Mandant, der für den Datenzugriff verwendet wird. Wenn nicht angegeben, wird Ihr Standardmandant verwendet.
Datentyp
string
Standardwert
""
Hinweise
Der Microsoft Online-Mandant, der für den Datenzugriff verwendet wird. Beispiel: contoso.onmicrosoft.com. Alternativ können Sie die Mandanten-ID angeben. Dieser Wert ist die Verzeichnis-ID im Azure-Portal > Microsoft Entra ID > Eigenschaften.
Normalerweise ist es nicht notwendig, den Mandanten anzugeben. Dies kann von Microsoft automatisch ermittelt werden, wenn der OAuthGrantType verwendet wird auf CODE (Standard) eingestellt. Es kann jedoch fehlschlagen, wenn der Benutzer mehreren Mandanten angehört. Zum Beispiel, wenn ein Administrator von Domäne A einen Benutzer von Domäne B als Gastbenutzer einlädt. Der Benutzer gehört nun beiden Mandanten an. Es ist eine gute Praxis, den Mandanten anzugeben, obwohl es im Allgemeinen funktionieren sollte, ohne ihn angeben zu müssen.
AzureTenant
ist beim Festlegen von OAuthGrantType erforderlich zu CLIENT. Bei der Verwendung von Client-Anmeldeinformationen gibt es keinen Benutzerkontext. Die Anmeldeinformationen werden aus dem Kontext der App selbst übernommen. Microsoft erlaubt zwar weiterhin den Abruf von Client-Anmeldeinformationen ohne Angabe des Mandanten, aber die Wahrscheinlichkeit, den spezifischen Mandanten auszuwählen, mit dem Sie arbeiten möchten, ist viel geringer. Aus diesem Grund benötigen wir AzureTenant
muss bei allen Client-Anmeldeinformationen-Verbindungen explizit angegeben werden, um sicherzustellen, dass Sie Anmeldeinformationen erhalten, die für die Domäne gelten, mit der Sie eine Verbindung herstellen möchten.
Azure-Umgebung
Die beim Herstellen einer Verbindung zu verwendende Azure-Umgebung.
Mögliche Werte
GLOBAL
, CHINA
, GERMANY
, USGOVT
Datentyp
string
Standardwert
GLOBAL
Hinweise
In den meisten Fällen funktioniert es, die Umfeld auf global eingestellt zu lassen. Wenn Ihr Azure-Konto jedoch einer anderen Umfeld hinzugefügt wurde, wird die AzureEnvironment
kann verwendet werden, um die Umfeld anzugeben.
OAuth
Dieser Abschnitt enthält eine vollständige Liste der OAuth-Eigenschaften, die Sie konfigurieren können.
Eigenschaft | Beschreibung |
---|---|
InitiateOAuth | Legen Sie diese Eigenschaft fest, um den Prozess zum Abrufen oder Aktualisieren des OAuth-Zugriffstokens beim Herstellen einer Verbindung zu starten. |
OAuthClientId | Die Client-ID, die zugewiesen wird, wenn Sie Ihre Anwendung bei einem OAuth-Autorisierungsserver registrieren. |
OAuthClientSecret | Das Client-Geheimnis, das zugewiesen wird, wenn Sie Ihre Anwendung bei einem OAuth-Autorisierungsserver registrieren. |
OAuthAccessToken | Der Zugriffstoken für die Verbindung mittels OAuth. |
OAuthGrantType | Der Berechtigungstyp für den OAuth-Flow. |
OAuthSettingsLocation | Der Speicherort der Einstellungsdatei, in der OAuth-Werte gespeichert werden, wenn InitiateOAuth auf GETANDREFRESH oder REFRESH eingestellt ist. Alternativ können Sie diesen Speicherort im Speicher halten, indem Sie einen Wert angeben, der mit beginnt 'memory://' . |
CallbackURL | Die OAuth-Rückruf URL, zu der bei der Authentifizierung zurückgekehrt werden soll. Dieser Wert muss mit der Rückruf-URL übereinstimmen, die Sie in Ihren App-Einstellungen angeben. |
OAuthVerifier | Der von der OAuth-Autorisierungs URL zurückgegebene Prüfcode. |
OAuthRefreshToken | Das OAuth-Aktualisierungstoken für das entsprechende OAuth-Zugriffstoken. |
OAuthExpiresIn | Die Lebensdauer des OAuth AccessToken in Sekunden. |
OAuthTokenTimestamp | Der Unix-Epochenzeitstempel in Millisekunden, als das aktuelle Zugriffstoken erstellt wurde. |
OAuth initiieren
Legen Sie diese Eigenschaft fest, um den Prozess zum Abrufen oder Aktualisieren des OAuth-Zugriffstokens beim Herstellen einer Verbindung zu starten.
Mögliche Werte
OFF
, GETANDREFRESH
, REFRESH
Datentyp
string
Standardwert
OFF
Hinweise
Folgende Optionen stehen zur Verfügung:
OFF
: Gibt an, dass der OAuth-Flow vollständig vom Benutzer gehandhabt wird. Zur Authentifizierung ist ein OAuthAccessToken erforderlich.GETANDREFRESH
: Gibt an, dass der gesamte OAuth-Flow vom Connector verarbeitet wird. Wenn derzeit kein Token vorhanden ist, wird es durch eine entsprechende Aufforderung an den Benutzer über den Browser abgerufen. Wenn ein Token vorhanden ist, wird es bei Bedarf aktualisiert.REFRESH
: Gibt an, dass der Connector nur das Aktualisieren des OAuthAccessToken übernimmt. Der Benutzer wird vom Connector nie aufgefordert, sich über den Browser zu authentifizieren. Der Benutzer muss zunächst das Abrufen des OAuthAccessToken und des OAuthRefreshToken übernehmen.
OAuthClientId
Die Client-ID, die zugewiesen wird, wenn Sie Ihre Anwendung bei einem OAuth-Autorisierungsserver registrieren.
Datentyp
string
Standardwert
""
Hinweise
Im Rahmen der Registrierung einer OAuth-Anwendung erhalten Sie die OAuthClientId
-Wert, manchmal auch Consumer-Schlüssel genannt, und ein Client-Geheimnis, das OAuthClientSecret.
OAuthClientSecret
Das Client-Geheimnis, das zugewiesen wird, wenn Sie Ihre Anwendung bei einem OAuth-Autorisierungsserver registrieren.
Datentyp
string
Standardwert
""
Hinweise
Im Rahmen der Registrierung einer OAuth-Anwendung erhalten Sie die OAuthClientId, auch Consumer-Schlüssel genannt. Sie erhalten außerdem ein Client-Geheimnis, auch Consumer-Geheimnis genannt. Legen Sie das Client-Geheimnis im OAuthClientSecret
Eigentum.
OAuth-Zugriffstoken
Der Zugriffstoken für die Verbindung per OAuth.
Datentyp
string
Standardwert
""
Hinweise
Der OAuthAccessToken
Eigenschaft wird für die Verbindung über OAuth verwendet. Die OAuthAccessToken
wird im Rahmen des Authentifizierungsprozesses vom OAuth-Server abgerufen. Es hat ein serverabhängiges Timeout und kann zwischen Anfragen wiederverwendet werden.
Das Zugriffstoken wird anstelle Ihres Benutzernamens und Passworts verwendet. Das Zugriffstoken schützt Ihre Anmeldeinformationen, indem es sie auf dem Server speichert.
Rückruf-URL
Die OAuth-Rückruf URL, zu der bei der Authentifizierung zurückgekehrt werden soll. Dieser Wert muss mit der Rückruf-URL übereinstimmen, die Sie in Ihren App-Einstellungen angeben.
Datentyp
string
Standardwert
""
Hinweise
Während des Authentifizierungsprozesses leitet der OAuth-Autorisierungsserver den Benutzer an diese URL weiter. Dieser Wert muss mit der Rückruf URL übereinstimmen, die Sie in Ihren App-Einstellungen angeben.
OAuthVerifier
Der von der OAuth-Autorisierungs URL zurückgegebene Prüfcode.
Datentyp
string
Standardwert
""
Hinweise
Der von der OAuth-Autorisierungs URL zurückgegebene Prüfcode. Dieser kann auf Systemen verwendet werden, auf denen kein Browser gestartet werden kann, z. B. auf Headless-Systemen.
Authentifizierung auf Headless-Maschinen
Siehe, um die zu erhalten OAuthVerifier
Wert.
OAuthSettingsLocation festlegen zusammen mit OAuthVerifier
. Beim Verbinden tauscht der Connector die OAuthVerifier
für die OAuth-Authentifizierungstoken und speichert sie verschlüsselt in der angegebenen Datei. Setzen Sie InitiateOAuth, um den Austausch mit GETANDREFRESH zu automatisieren.
Sobald die OAuth-Einstellungsdatei generiert wurde, können Sie entfernen OAuthVerifier
aus den Verbindungseigenschaften und verbinden Sie sich mit OAuthSettingsLocation festgelegt.
Um die OAuth-Tokenwerte automatisch zu aktualisieren, legen Sie OAuthSettingsLocation fest und setzen Sie zusätzlich InitiateOAuth zum AKTUALISIEREN.
OAuthRefreshToken
Das OAuth-Aktualisierungstoken für das entsprechende OAuth-Zugriffstoken.
Datentyp
string
Standardwert
""
Hinweise
Der OAuthRefreshToken
Eigenschaft wird verwendet, um den OAuthAccessToken zu aktualisieren bei Verwendung der OAuth-Authentifizierung.
OAuthLäuftAbIn
Die Lebensdauer des OAuth AccessToken in Sekunden.
Datentyp
string
Standardwert
""
Hinweise
Mit OAuthTokenTimestamp kombinieren, um zu bestimmen, wann der AccessToken abläuft.
OAuthTokenTimestamp
Der Unix-Epochenzeitstempel in Millisekunden, als das aktuelle Zugriffstoken erstellt wurde.
Datentyp
string
Standardwert
""
Hinweise
Kombinieren Sie es mit OAuthExpiresIn, um zu bestimmen, wann das AccessToken abläuft.
SSL
Dieser Abschnitt enthält eine vollständige Liste der SSL-Eigenschaften, die Sie konfigurieren können.
Eigenschaft | Beschreibung |
---|---|
SSLServerCert | Das vom Server zu akzeptierende Zertifikat bei einer Verbindung per TLS/SSL. |
SSLServerCert
Das vom Server zu akzeptierende Zertifikat bei einer Verbindung über TLS/SSL.
Datentyp
string
Standardwert
""
Hinweise
Bei Verwendung einer TLS/SSL-Verbindung kann diese Eigenschaft verwendet werden, um das vom Server zu akzeptierende TLS/SSL-Zertifikat anzugeben. Jedes andere Zertifikat, dem der Computer nicht vertraut, wird abgelehnt.
Diese Eigenschaft kann folgende Formen annehmen:
Beschreibung | Beispiel |
---|---|
Ein vollständiges PEM-Zertifikat (Beispiel der Kürze halber gekürzt) | -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE----- |
Ein Pfad zu einer lokalen Datei, die das Zertifikat enthält | C:\cert.cer |
Der öffentliche Schlüssel (Beispiel der Kürze halber gekürzt) | -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY----- |
Der MD5-Fingerabdruck (Hexadezimalwerte können auch durch Leerzeichen oder Doppelpunkte getrennt sein) | ecadbdda5a1529c58a1e9e09828d70e4 |
Der SHA1-Fingerabdruck (Hex-Werte können auch durch Leerzeichen oder Doppelpunkte getrennt sein) | 34a929226ae0819f2ec14b4a3d904f801cbb150d |
Wenn nicht angegeben, wird jedes vom Computer vertrauenswürdige Zertifikat akzeptiert.
Zertifikate werden vom Computer basierend auf dem Trust Store des Systems als vertrauenswürdig validiert. Der verwendete Trust Store ist der für das System angegebene Wert „javax.net.ssl.trustStore“. Wenn für diese Eigenschaft kein Wert angegeben ist, wird der Standard-Trust Store von Java verwendet (z. B. JAVA_HOME\lib\security\cacerts).
Verwenden Sie „*“, um anzugeben, dass alle Zertifikate akzeptiert werden. Beachten Sie, dass dies aus Sicherheitsgründen nicht empfohlen wird.
Schema
Dieser Abschnitt enthält eine vollständige Liste der Schema, die Sie konfigurieren können.
Eigenschaft | Beschreibung |
---|---|
Location | Ein Pfad zum Verzeichnis, das die Schema enthält, die Tabellen, Ansichten und gespeicherte Prozeduren definieren. |
BrowsableSchemas | Diese Eigenschaft beschränkt die gemeldeten Schemata auf eine Teilmenge der verfügbaren Schemata. Beispiel: BrowsableSchemas=SchemaA, SchemaB, SchemaC. |
Tables | Diese Eigenschaft beschränkt die gemeldeten Tabellen auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Tabellen=TabelleA, TabelleB, TabelleC. |
Views | Beschränkt die gemeldeten Ansichten auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Ansichten=AnsichtA, AnsichtB, AnsichtC. |
Standort
Ein Pfad zum Verzeichnis, das die Schema enthält, die Tabellen, Ansichten und gespeicherte Prozeduren definieren.
Datentyp
string
Standardwert
%APPDATA%\D365BusinessCentral Data Provider\Schema
Hinweise
Der Pfad zu einem Verzeichnis, das die Schema für den Connector enthält (.rsd-Dateien für Tabellen und Ansichten, .rsb-Dateien für gespeicherte Prozeduren). Der Ordnerspeicherort kann ein relativer Pfad vom Speicherort der ausführbaren Datei sein. Der Location
Eigenschaft wird nur benötigt, wenn Sie Definitionen anpassen möchten (z. B. einen Spaltennamen ändern, eine Spalte ignorieren usw.) oder das Datenmodell mit neuen Tabellen, Ansichten oder gespeicherten Prozeduren erweitern möchten.
Wenn nicht angegeben, ist der Standardspeicherort „%APPDATA%\D365BusinessCentral Data Provider\Schema“ mit %APPDATA%
wird auf das Konfigurationsverzeichnis des Benutzers eingestellt:
Plattform | %APPDATA% |
---|---|
Windows | Der Wert der Umfeld APPDATA |
Mac | ~/Bibliothek/Anwendungsunterstützung |
Linux | ~/.config |
DurchsuchbareSchemas
Diese Eigenschaft beschränkt die gemeldeten Schemata auf eine Teilmenge der verfügbaren Schemata. Beispiel: BrowsableSchemas=SchemaA,SchemaB,SchemaC.
Datentyp
string
Standardwert
""
Hinweise
Das Auflisten der Schemata aus Datenbanken kann aufwändig sein. Die Bereitstellung einer Liste von Schemata in der Verbindungszeichenfolge verbessert die Leistung.
Tabellen
Diese Eigenschaft beschränkt die gemeldeten Tabellen auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Tabellen=TabelleA,TabelleB,TabelleC.
Datentyp
string
Standardwert
""
Hinweise
Das Auflisten der Tabellen aus einigen Datenbanken kann teuer sein. Die Bereitstellung einer Liste von Tabellen in der Verbindungszeichenfolge verbessert die Leistung des Connectors.
Diese Eigenschaft kann auch als Alternative zum automatischen Auflisten von Ansichten verwendet werden, wenn Sie bereits wissen, mit welchen Sie arbeiten möchten, und es sonst zu viele wären.
Geben Sie die gewünschten Tabellen in einer durch Kommas getrennten Liste an. Jede Tabelle sollte ein gültiger SQL-Bezeichner sein, wobei alle Sonderzeichen mit eckigen Klammern, Anführungszeichen oder Backticks maskiert werden. Beispiel: Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.
Beachten Sie, dass Sie beim Herstellen einer Verbindung zu einer Datenquelle mit mehreren Schemata oder Katalogen den vollqualifizierten Namen der Tabelle in dieser Eigenschaft angeben müssen, wie im letzten Beispiel hier, um Mehrdeutigkeiten zwischen Tabellen zu vermeiden, die in mehreren Katalogen oder Schemata vorhanden sind.
Ansichten
Beschränkt die gemeldeten Ansichten auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Ansichten=AnsichtA,AnsichtB,AnsichtC.
Datentyp
string
Standardwert
""
Hinweise
Das Auflisten der Ansichten aus einigen Datenbanken kann teuer sein. Die Bereitstellung einer Liste von Ansichten in der Verbindungszeichenfolge verbessert die Leistung des Connectors.
Diese Eigenschaft kann auch als Alternative zum automatischen Auflisten von Ansichten verwendet werden, wenn Sie bereits wissen, mit welchen Sie arbeiten möchten, und es sonst zu viele wären.
Geben Sie die gewünschten Ansichten in einer durch Kommas getrennten Liste an. Jede Ansicht sollte ein gültiger SQL-Bezeichner sein, wobei alle Sonderzeichen mit eckigen Klammern, Anführungszeichen oder Backticks maskiert werden. Beispiel: Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.
Beachten Sie, dass Sie beim Herstellen einer Verbindung zu einer Datenquelle mit mehreren Schemata oder Katalogen den vollqualifizierten Namen der Tabelle in dieser Eigenschaft angeben müssen, wie im letzten Beispiel hier, um Mehrdeutigkeiten zwischen Tabellen zu vermeiden, die in mehreren Katalogen oder Schemata vorhanden sind.
Verschiedenes
Dieser Abschnitt enthält eine vollständige Liste verschiedener Eigenschaften, die Sie konfigurieren können.
Eigenschaft | Beschreibung |
---|---|
EndpointType | Der Endpoint, zu dem die OrganizationUrl aufgelöst werden soll. |
IncludeNavigationProperties | Ein Boolescher Wert, der angibt, ob Navigationseigenschaften in die Spaltenliste aufgenommen werden sollen. |
MaxRows | Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder Gruppierung verwendet wird. Dadurch werden Leistungsprobleme zur Entwurfszeit vermieden. |
Other | Diese versteckten Eigenschaften werden nur in bestimmten Anwendungsfällen verwendet. |
PseudoColumns | Diese Eigenschaft gibt an, ob Pseudospalten als Spalten in die Tabelle aufgenommen werden sollen oder nicht. |
Timeout | Der Wert in Sekunden, bis der Timeout-Fehler auftritt und der Operation abgebrochen wird. |
Endpunkttyp
Der Endpoint, zu dem die OrganizationUrl aufgelöst werden soll.
Mögliche Werte
CSProduction
, CSTesting
, WSProduction
, WSTesting
Datentyp
string
Standardwert
CSProduction
Hinweise
Weitere Informationen finden Sie unter Business Central-Endpoints für Details zu den Endpoints in Dynamics 365 Business Central und den entsprechenden Wert zum Festlegen des EndpointType
je nach Anwendungsfall.
Navigationseigenschaften einschließen
Ein Boolescher Wert, der angibt, ob Navigationseigenschaften in die Spaltenliste aufgenommen werden sollen.
Datentyp
bool
Standardwert
false
Hinweise
Navigationseigenschaften werden beim Abrufen von Daten nicht mit Informationen gefüllt. Stattdessen können Navigationseigenschaften verwendet werden, um beim Einfügen oder Aktualisieren eine Bindung an eine vorhandene Ressource herzustellen. Beispiel:
INSERT INTO accounts (_primarycontactid_value) VALUES ('123456')
Um mehrere Werte anzugeben, verwenden Sie eine durch Kommas getrennte Liste. Zum Beispiel:
INSERT INTO accounts (lead_customer_accounts) VALUES ('123,456')
MaxRows
Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder Gruppierung verwendet wird. Dadurch werden Leistungsprobleme zur Entwurfszeit vermieden.
Datentyp
int
Standardwert
-1
Hinweise
Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder Gruppierung verwendet wird. Dadurch werden Leistungsprobleme zur Entwurfszeit vermieden.
Andere
Diese versteckten Eigenschaften werden nur in bestimmten Anwendungsfällen verwendet.
Datentyp
string
Standardwert
""
Hinweise
Die unten aufgeführten Eigenschaften sind für bestimmte Anwendungsfälle verfügbar. Für normale Anwendungsfälle und Funktionen von Treiber sollten diese Eigenschaften nicht erforderlich sein.
Geben Sie mehrere Eigenschaften in einer durch Semikolon getrennten Liste an.
Integration und Formatierung
Eigenschaft | Beschreibung |
---|---|
DefaultColumnSize | Legt die Standardlänge von Zeichenfolgefeldern fest, wenn die Datenquelle keine Spaltenlänge in den Metadaten bereitstellt. Der Standardwert ist 2000. |
ConvertDateTimeToGMT | Bestimmt, ob Datums-/Uhrzeitwerte in GMT statt in die lokale Zeit des Computers konvertiert werden sollen. |
RecordToFile=filename | Protokolliert den zugrunde liegenden Socket-Datenübertragungsvorgang in die angegebene Datei. |
Pseudospalten
Diese Eigenschaft gibt an, ob Pseudospalten als Spalten in die Tabelle aufgenommen werden sollen oder nicht.
Datentyp
string
Standardwert
""
Hinweise
Diese Einstellung ist besonders hilfreich im Entity Framework, da Sie dort keinen Wert für eine Pseudospalte festlegen können, es sei denn, es handelt sich um eine Tabellenspalte. Der Wert dieser Verbindungseinstellung hat das Format „Tabelle1=Spalte1, Tabelle1=Spalte2, Tabelle2=Spalte3“. Sie können das Zeichen „*“ verwenden, um alle Tabellen und alle Spalten einzuschließen, z. B. „*=*“.
Zeitüberschreitung
Der Wert in Sekunden, bis der Timeout-Fehler auftritt und der Operation abgebrochen wird.
Datentyp
int
Standardwert
60
Hinweise
Wenn Timeout
= 0, Operationen werden nicht abgebrochen. Die Operationen werden ausgeführt, bis sie erfolgreich abgeschlossen sind oder bis ein Fehler auftritt.
Wenn Timeout
abläuft und der Operation noch nicht abgeschlossen ist, löst der Connector eine Ausnahme aus.