Zum Inhalt springen

SAP HANA XS Advanced-Verbindungsdetails

Einführung

Connector-Version

Diese Dokumentation basiert auf Version 23.0.8804 des Connectors.

Erste Schritte

SAP HANA XSA-Versionsunterstützung

Der Connector nutzt die SAP HANA XSA API, um bidirektionalen Zugriff auf SAP HANA XSA zu ermöglichen.

Herstellen einer Verbindung

SAP HANA XSA verwendet den OAuth-Authentifizierungsstandard. Vor der Verbindung muss ein SAP HANA XSA OData-Dienst eingerichtet werden. Siehe Erstellen einer benutzerdefinierten OAuth-App als Leitfaden.

Um eine Verbindung mit SAP HANA XSA unter Verwendung des OAuthPassword-Grant-Typs herzustellen, legen Sie Folgendes fest:

  • OAuthClientId: Setzen Sie dies auf die Client-ID, die in der JSON-Datei des UAA-Dienstes angegeben ist.
  • OAuthClientSecret: Setzen Sie dies auf das Client-Geheimnis, das in der JSON-Datei des UAA-Dienstes angegeben ist.
  • URL: Legen Sie dies auf den OData - Endpoint fest.
  • XSUAAURL: Setzen Sie dies auf die UAA-Dienst URL.
  • User: Legen Sie den Benutzernamen Ihres Kontos fest.
  • Password: Legen Sie das Passwort Ihres Kontos fest

Sobald Sie den OData-Dienst konfiguriert haben, können Sie mit Benutzerdefinierten Anmeldeinformationen eine Verbindung herstellen.

OAuth-Authentifizierung verwenden

Verwenden Sie den OAuth-Authentifizierungsstandard, um eine Verbindung mit der SAP HANA XSA V3 API herzustellen. Sie können sich mit einem Benutzerkonto authentifizieren. Der Connector ermöglicht dies wie unten beschrieben.

Benutzerkonten

Der Benutzerkontofluss erfordert, dass der authentifizierende Benutzer über den Browser mit SAP HANA XSA interagiert.

Erstellen einer benutzerdefinierten OAuth-App

Sie müssen eine benutzerdefinierte OAuth-App erstellen, um eine Verbindung zu Daten herzustellen. Siehe Erstellen einer benutzerdefinierten OAuth-App für ein Verfahren.

Benutzerdefinierte Anmeldeinformationen

Sie können eine App registrieren, um die OAuthClientId Und OAuthClientSecret.

Wann sollte eine benutzerdefinierte OAuth-App erstellt werden?

Zum Herstellen einer Verbindung müssen Sie eine benutzerdefinierte OAuth-App erstellen.

Verwenden eines Dienstkontos zum Herstellen einer Verbindung mit SAP HANA XSA

Dienstkonten verfügen über eine stille Authentifizierung, ohne Benutzerauthentifizierung im Browser. Sie können ein Dienstkonto auch verwenden, um unternehmensweite Zugriffsbereiche an den Connector zu delegieren.

Sie müssen in diesem Flow eine OAuth-Anwendung erstellen. Sie können dann eine Verbindung zu SAP HANA XSA-Daten herstellen, auf die das Dienstkonto Zugriffsberechtigung hat. Siehe Benutzerdefinierte Anmeldeinformationen für eine Anleitung zur Authentifizierung.

Erstellen einer benutzerdefinierten OAuth-App

Dieser Treiber kann einen OData-Dienst nutzen, der in einer Ihrer SAP HANA XSA-Anwendungen bereitgestellt ist.

Konfigurieren des SAP HANA XS Advanced OData-Dienst

Der OData Dienst in einer XSA-Anwendung wird in einem Servermodul definiert, indem eine Datei vom Typ filename.xsodata erstellt wird. Die XSOData-Dateien enthalten die Spezifikationen Ihres erstellten OData Dienstes.

XS UAA-Konfiguration

In einer Multi-Target SAP HANA Extended Services (XS) Advanced-Anwendung wird das XS User Account and Authentication (UAA)-Dienstmodul zum Authentifizieren und Autorisieren von Benutzern für den API Zugriff verwendet. Die UAA verwendet OAuth 2.0 als Authentifizierungs- und Autorisierungsablauf. Vor dem Herstellen einer Verbindung müssen einige Konfigurationen am XS UAA-Modul vorgenommen werden.

Entweder im /path/appname oder path/appname/security Verzeichnis, erstellen Sie eine JSON-Datei mit dem Namen xs-security.json. Definieren Sie in dieser Datei die Konfiguration für das UAA-Modul.

Um das Modul zu definieren, platzieren Sie die Bereiche und Rollen für den Zugriff auf den OData-Dienst in der Datei xs-security.json.

Als Beispiel:

"scopes": [{
"name": "$XSAPPNAME.odataAccess",
"description": "Access the OData service."
}]

Die erstellte Rolle wird auf den oben definierten Umfang verweisen. Als Beispiel:

"role-templates": [{
"name": "ODataAccess",
"description": "Role for accessing the OData service",
"scope-references": [
"$XSAPPNAME.odataAccess"
]
}]

Weitere Konfigurationen sind erforderlich, wenn der Benutzer den Berechtigungstyp CODE verwenden möchte. Fügen Sie in der Datei xs-security.json Folgendes hinzu:

"oauth2-configuration": {
"token-validity": 90000, //time in seconds when an access token expires
"redirect-uris":`["http://localhost:33333"] `//the default callback of  Drivers
}
Webmodul-Konfiguration

Definieren Sie beim Definieren der Routen für das Webmodul eine zusätzliche Route für die XSOData-Datei. Beispiel:

"routes": [{
"source": "^/euro.xsodata/.*$", //OData service endpoint
"destination": "js_module_service_url", //server module service url defined in mta.yaml
"authenticationType": "xsuaa",
"scope": "$XSAPPNAME.odataAccess" //the scope which grants access to the OData service
}]

Beachten Sie, dass es ein Bereichsattribut gibt, das auf den Bereich verweist, der Zugriff auf den OData Dienst gewährt. Nachdem Ihre Anwendung erfolgreich erstellt und ausgeführt wurde, sollten wir Benutzern Zugriff auf unseren OData Dienst gewähren.

Rollenverwaltung

Um eine Rolle zu erstellen, navigieren Sie zu XSA-COCKPIT -> Security -> Role Collections -> New Role Collection. Geben Sie der Sammlung den gewünschten Namen. Öffnen Sie die von Ihnen erstellte Rolle und klicken Sie auf Add Role. Legen Sie in der Datei xs-security.json den Anwendungsbezeichner unter Ihrer Anwendung und die Rolle für die angegebene ODataAccess-Rolle fest. Um die erstellte Rolle einem Benutzer zuzuweisen, navigieren Sie zu XSA-COCKPIT -> User Management -> Assign Role Collections -> Add, suchen Sie dann nach der erstellten Rolle anhand des Namens oder finden Sie sie in der Liste und klicken Sie dann auf Save.

Client-Anmeldeinformationen abrufen

Sie finden die Client-Anmeldeinformationen, indem Sie zu navigieren XSA-COCKPIT -> Your Organization -> Your Application -> Services -> Service Instances -> XSUAA Service -> Show Sensitive Data. Notieren Sie in der angezeigten JSON-Datei die Client-ID, das Client-Geheimnis und die URL. Die hier angegebene URL ist der Host, der zur Authentifizierung und Autorisierung von Benutzern verwendet wird.

Herstellen einer Verbindung mit einem SAP HANA XSA-Konto

Sobald Sie Ihre Anwendung ordnungsgemäß eingerichtet haben und bereits Zugriff auf den OData-Dienst haben, folgen Sie den Anweisungen unter Benutzerdefinierte Anmeldeinformationen, um eine Verbindung mit Ihrer SAP HANA XSA-Anwendung herzustellen.

Das XS UAA-Modul verwendet OAuth2.0 als Autorisierungsmethode. Es werden nur die Berechtigungstypen CODE und PASSWORD unterstützt.

Benutzerdefinierte Anmeldeinformationen

Sie können eine benutzerdefinierte OAuth-App verwenden, um sich mit einem Dienstkonto oder einem Benutzerkonto zu authentifizieren. Siehe OAuth-Authentifizierung verwenden für weitere Informationen.

Benutzerkonten
Desktop-Authentifizierung mit einer benutzerdefinierten OAuth-App

Befolgen Sie die nachstehenden Schritte, um sich mit den Anmeldeinformationen für eine benutzerdefinierte OAuth-App zu authentifizieren. Siehe Erstellen einer benutzerdefinierten OAuth-App.

OAuth-Zugriffstoken abrufen und aktualisieren

Nachdem Sie Folgendes festgelegt haben, können Sie eine Verbindung herstellen:

  • InitiateOAuth: Setzen Sie dies auf GETANDREFRESH. Sie können InitiateOAuth verwenden, um die Wiederholung des OAuth-Austauschs und das manuelle Setzen von zu vermeiden OAuthAccessToken.
  • OAuthClientId: Setzen Sie dies auf die Client-ID, die in der JSON-Datei des UAA-Dienstes angegeben ist.
  • OAuthClientSecret: Setzen Sie dies auf das Client-Geheimnis, das in der JSON-Datei des UAA-Dienstes angegeben ist.
  • URL: Legen Sie dies auf den OData - Endpoint fest.
  • XSUAAURL: Stellen Sie dies auf den UAA- Host ein.
  • CallbackURL: Setzen Sie dies auf http://localhost:33333.

Wenn Sie eine Verbindung herstellen, öffnet der Connector den OAuth-Endpoint in Ihrem Standardbrowser. Melden Sie sich an und erteilen Sie der Anwendung Berechtigungen. Der Connector schließt dann den OAuth-Prozess ab:

  1. Extrahiert das Zugriffstoken aus der Rückruf URL und authentifiziert Anfragen.
  2. Aktualisiert den Zugriffstoken, wenn er abläuft.
  3. Speichert OAuth-Werte in OAuthSettingsLocation soll über mehrere Verbindungen hinweg bestehen bleiben.

Kennwort-Gewährungstyp verwenden

Um eine Verbindung mit SAP Hana XSA unter Verwendung des Berechtigungstyps „PASSWORD“ herzustellen, legen Sie Folgendes fest:

  • InitiateOAuth: Setzen Sie dies auf GETANDREFRESH. Sie können InitiateOAuth verwenden, um die Wiederholung des OAuth-Austauschs und das manuelle Setzen von zu vermeiden OAuthAccessToken.
  • OAuthClientId: Setzen Sie dies auf die Client-ID, die in der JSON-Datei des UAA-Dienstes angegeben ist.
  • OAuthClientSecret: Setzen Sie dies auf das Client-Geheimnis, das in der JSON-Datei des UAA-Dienstes angegeben ist.
  • URL: Legen Sie dies auf den OData - Endpoint fest.
  • OAuthGrantType: Setzen Sie dies auf PASSWORT.
  • XSUAAURL: Setzen Sie dies auf die UAA-Dienst URL.
  • User: Legen Sie den Benutzernamen Ihres Kontos fest.
  • Password: Legen Sie das Passwort Ihres Kontos fest

Kopflose Maschinen

Verwenden von OAuth auf einer Headless-Maschine

Die folgenden Abschnitte zeigen, wie Sie einen Headless-Server oder eine andere Maschine authentifizieren, auf der der Connector keinen Browser öffnen kann. Sie können sich mit einem Benutzerkonto oder einem Dienstkonto authentifizieren.

Benutzerkonten

Um sich mit einem Benutzerkonto zu authentifizieren, müssen Sie sich von einem anderen Computer aus authentifizieren. Die Authentifizierung erfolgt in zwei Schritten.

  1. Anstatt den Connector auf einem anderen Computer zu installieren, können Sie die folgenden Schritte ausführen, um den OAuthVerifier-Wert. Oder Sie können den Connector auf einem anderen Computer installieren und die OAuth-Authentifizierungswerte übertragen, nachdem Sie sich über den üblichen browserbasierten Ablauf authentifiziert haben.
  2. Anschließend können Sie den Connector so konfigurieren, dass das Zugriffstoken vom Headless-Computer automatisch aktualisiert wird.

Sie können dem Headless-OAuth-Authentifizierungsablauf mit den OAuth-Anmeldeinformationen für Ihre benutzerdefinierte OAuth-App folgen.

Verwenden der Anmeldeinformationen für eine benutzerdefinierte OAuth-App

Erstellen einer benutzerdefinierten OAuth-App

Sie müssen eine benutzerdefinierte OAuth-App erstellen, um eine Verbindung herzustellen.

Siehe Erstellen einer benutzerdefinierten OAuth-App für ein Verfahren. Sie können dann die folgenden Verfahren befolgen, um sich zu authentifizieren und eine Verbindung zu Daten herzustellen.

Besorgen Sie sich einen Prüfcode

Legen Sie die folgenden Eigenschaften auf der Headless-Maschine fest:

  • InitiateOAuth: Stellen Sie dies auf AUS.
  • 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.
  • URL: Legen Sie dies auf den OData - Endpoint fest.
  • XSUAAURL: Stellen Sie dies auf den UAA- Host ein.
  • CallbackURL: Setzen Sie dies auf http://localhost:33333.

Sie können dann die folgenden Schritte ausführen, um sich von einem anderen Computer aus zu authentifizieren und die OAuthVerifier Verbindungseigenschaft.

  1. Rufen Sie die GetOAuthAuthorizationURL auf gespeicherte Prozedur mit dem CallbackURL-Eingabeparameter, der auf die genaue Umleitungs-URI eingestellt ist, die Sie in Ihren App-Einstellungen angegeben haben.
  2. Öffnen Sie die zurückgegebene URL in einem Browser. Melden Sie sich an und erteilen Sie dem Connector Berechtigungen. Sie werden dann zur Callback-URL weitergeleitet, die den Prüfcode enthält.
  3. Speichern Sie den Wert des Prüfcodes. Sie setzen diesen in OAuthVerifier Verbindungseigenschaft.

Legen Sie auf der Headless-Maschine die folgenden Verbindungseigenschaften fest, um die OAuth-Authentifizierungswerte zu erhalten:

  • InitiateOAuth: Stellen Sie dies auf REFRESH ein.
  • OAuthClientId: Legen Sie dies in Ihren App-Einstellungen auf den Consumer-Schlüssel fest.
  • OAuthClientSecret: Legen Sie dies in Ihren App-Einstellungen auf das Verbrauchergeheimnis fest.
  • OAuthVerifier: Setzen Sie dies auf den Prüfcode.
  • OAuthSettingsLocation: Legen Sie dies fest, um die verschlüsselten OAuth-Authentifizierungswerte am angegebenen Speicherort beizubehalten.
  • URL: Legen Sie dies auf den OData - Endpoint fest.
  • XSUAAURL: Stellen Sie dies auf den UAA- Host ein.

Nachdem die OAuth-Einstellungsdatei generiert wurde, legen Sie die folgenden Eigenschaften fest, um eine Verbindung zu Daten herzustellen:

  • InitiateOAuth: Stellen Sie dies auf REFRESH ein.
  • OAuthClientId: Legen Sie dies in Ihren App-Einstellungen auf den Consumer-Schlüssel fest.
  • OAuthClientSecret: Legen Sie dies in Ihren App-Einstellungen auf das Verbrauchergeheimnis fest.
  • OAuthSettingsLocation: Legen Sie hier den Speicherort fest, der die verschlüsselten OAuth-Authentifizierungswerte enthält. Stellen Sie sicher, dass dieser Speicherort dem Anbieter Lese- und Schreibberechtigungen erteilt, um die automatische Aktualisierung des Zugriffstokens zu ermöglichen.
  • URL: Legen Sie dies auf den OData - Endpoint fest.
  • XSUAAURL: Stellen Sie dies auf den UAA- Host ein.

OAuth-Einstellungen übertragen

Befolgen Sie die nachstehenden Schritte, um den Connector auf einem anderen Computer zu installieren, zu authentifizieren und dann die resultierenden OAuth-Werte zu übertragen.

Installieren Sie den Connector auf einem zweiten Computer und stellen Sie eine Verbindung mit den folgenden Eigenschaften her:

  • InitiateOAuth: Setzen Sie dies auf GETANDREFRESH.
  • OAuthSettingsLocation: Legen Sie hier einen beschreibbaren Ort fest.
  • OAuthClientId: Legen Sie hier die Client-ID fest, die Ihnen bei der Registrierung Ihrer App zugewiesen wurde.
  • OAuthClientSecret: Setzen Sie dies auf das Client-Geheimnis, das Ihnen bei der Registrierung Ihrer App zugewiesen wurde.
  • CallbackURL: Setzen Sie dies auf http://localhost:33333.
  • URL: Legen Sie dies auf den OData - Endpoint fest.
  • XSUAAURL: Stellen Sie dies auf den UAA- Host ein.

Testen Sie die Verbindung zur Authentifizierung. Die resultierenden Authentifizierungswerte werden verschlüsselt an den durch angegebenen Speicherort geschrieben OAuthSettingsLocation. Nachdem Sie die Verbindung erfolgreich getestet haben, kopieren Sie die OAuth-Einstellungsdatei auf Ihren Headless-Rechner. Legen Sie auf dem Headless-Rechner die folgenden Verbindungseigenschaften fest, um eine Verbindung zu Daten herzustellen:

  • InitiateOAuth: Stellen Sie dies auf REFRESH ein.
  • OAuthClientId: Legen Sie dies in Ihren App-Einstellungen auf den Consumer-Schlüssel fest.
  • OAuthClientSecret: Legen Sie dies in Ihren App-Einstellungen auf das Verbrauchergeheimnis fest.
  • OAuthSettingsLocation: Legen Sie hier den Speicherort Ihrer OAuth-Einstellungsdatei fest. Stellen Sie sicher, dass dieser Speicherort dem Connector Lese- und Schreibberechtigungen erteilt, um die automatische Aktualisierung des Zugriffstokens zu ermöglichen.
  • URL: Legen Sie dies auf den OData - Endpoint fest.
  • XSUAAURL: Stellen Sie dies auf den UAA- Host ein.

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 SAP HANA XSA-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.

Abfrageverarbeitung

Der Connector verlagert die Verarbeitung der SELECT-Anweisung so weit wie möglich auf SAP HANA XSA und verarbeitet den Rest der Abfrage dann im Speicher (clientseitig).

Benutzerdefinierte Ansichten

Mit dem Jitterbit Connector für SAP HANA XSA 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 SampleTable WHERE MyColumn = 'value'"
    },
    "MyView2": {
        "query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
    }
}

Verwenden Sie die UserDefinedViews Verbindungseigenschaft zur Angabe des Speicherorts Ihrer JSON-Konfigurationsdatei. Beispiel:

"UserDefinedViews", "C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json"

Definieren von Ansichten mit DDL-Anweisungen

Der Connector kann das Schema auch über DDL-Anweisungen wie CREATE LOCAL VIEW, ALTER LOCAL VIEW und DROP LOCAL VIEW erstellen und ändern.

Erstellen einer Ansicht

Um eine neue Ansicht mit DDL-Anweisungen zu erstellen, geben Sie den Ansichtsnamen und die Abfrage wie folgt an:

CREATE LOCAL VIEW`[MeinAnsichtsname] `AS SELECT * FROM Customers LIMIT 20;

Wenn keine JSON-Datei vorhanden ist, erstellt der obige Code eine. Die Ansicht wird dann in der JSON-Konfigurationsdatei erstellt und ist nun erkennbar. Der Speicherort der JSON-Datei wird durch angegeben UserDefinedViews Verbindungseigenschaft.

Ändern einer Ansicht

Um eine vorhandene Ansicht zu ändern, geben Sie den Namen der vorhandenen Ansicht zusammen mit der neuen Abfrage an, die Sie stattdessen verwenden möchten:

ALTER LOCAL VIEW`[MeinAnsichtsname] `AS SELECT * FROM Customers WHERE TimeModified > '3/1/2020';

Die Ansicht wird dann in der JSON-Konfigurationsdatei aktualisiert.

Löschen einer Ansicht

Um eine vorhandene Ansicht zu löschen, geben Sie den Namen eines vorhandenen Schema neben der neuen Abfrage an, die Sie stattdessen verwenden möchten.

DROP LOCAL VIEW [MyViewName]

Dadurch wird die Ansicht aus der JSON-Konfigurationsdatei entfernt. Sie kann nicht mehr abgefragt werden.

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 festlegen 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

Überblick

In diesem Abschnitt werden die verfügbaren API Objekte angezeigt und weitere Informationen zur Ausführung von SQL für SAP HANA XSA- APIs bereitgestellt.

Hauptmerkmale

  • Der Connector modelliert den SAP HANA XSA OData-Dienst als relationale Tabellen und Ansichten, sodass Sie SQL schreiben können, um SAP HANA XSA-Daten Abfrage.
  • Gespeicherte Prozeduren ermöglichen Ihnen, Vorgänge für SAP HANA XSA auszuführen.
  • Die Live-Konnektivität zu diesen Objekten bedeutet, dass alle Änderungen an Ihrem SAP HANA XSA-Konto bei Verwendung des Connectors sofort berücksichtigt werden.

Tabellen

Der Connector ruft Tabellenmetadaten dynamisch vom SAP HANA XSA OData Dienst ab. Siehe Metadatenerkennung für weitere Informationen.

Ansichten

Der Connector erhält dynamisch schreibgeschützte Ansichtsmetadaten vom SAP HANA XSA OData Dienst. Siehe Metadatenerkennung für weitere Informationen.

Gespeicherte Prozeduren

Gespeicherte Prozeduren sind funktionsähnliche Schnittstellen zu SAP HANA XSA. Gespeicherte Prozeduren ermöglichen Ihnen die Ausführung von Vorgängen in SAP HANA XSA, einschließlich des Herunterladens von Dokumenten und des Verschiebens von Umschlägen.

Gespeicherte Prozeduren

Gespeicherte Prozeduren sind funktionsähnliche Schnittstellen, die die Funktionalität des Connectors über einfache SELECT/INSERT/DELETE-Operationen mit SAP HANA XSA hinaus erweitern.

Gespeicherte Prozeduren akzeptieren eine Liste von Parametern, führen ihre vorgesehene Funktion aus und geben dann alle relevanten Antwortdaten von SAP HANA XSA zurück, zusammen mit einer Angabe, ob die Prozedur erfolgreich war oder fehlgeschlagen ist.

Jitterbit-Connector für gespeicherte SAP HANA XSA-Prozeduren

Name Beschreibung
GetOAuthAccessToken Ruft ein Authentifizierungstoken von SAPHanaXSA ab.
GetOAuthAuthorizationURL Ruft die Autorisierungs URL ab, die vom Benutzer separat geöffnet werden muss, um Zugriff auf Ihre Anwendung zu gewähren. Wird nur bei der Entwicklung von Web-Apps benötigt. Sie fordern den OAuthAccessToken von dieser URL an.
RefreshOAuthAccessToken Aktualisiert den OAuth-Zugriffstoken, der für die Authentifizierung bei verschiedenen Basecamp Diensten verwendet wird.

GetOAuthAccessToken

Ruft ein Authentifizierungstoken von SAPHanaXSA ab.

Eingang
Name Typ Erforderlich Beschreibung
AuthMode String Falsch Der zu verwendende Authentifizierungsmodustyp. Wählen Sie „App“, um Authentifizierungstoken über eine Desktop-App abzurufen. Wählen Sie „Web“, um Authentifizierungstoken über eine Web-App abzurufen. Die zulässigen Werte sind APP, WEB. Der Standardwert ist APP.
Scope String Falsch Eine durch Kommas getrennte Liste von Berechtigungen, die vom Benutzer angefordert werden sollen. Eine Liste der verfügbaren Berechtigungen finden Sie in der SAPHanaXSA API.
CallbackUrl String Falsch Die URL, zu der der Benutzer nach der Autorisierung Ihrer Anwendung weitergeleitet wird. Dieser Wert muss mit der Weiterleitungs URL übereinstimmen, die Sie in den SAPHanaXSA-App-Einstellungen angegeben haben. Nur erforderlich, wenn der Authmode-Parameter „Web“ ist.
Verifier String Falsch Der von SAPHanaXSA zurückgegebene Verifizierer, nachdem der Benutzer Ihrer App den Zugriff auf seine Daten gestattet hat. Dieser Wert wird als Parameter an die Rückruf-URL zurückgegeben.
State String Falsch Gibt einen beliebigen Status an, der für Ihre Anwendung nach Erhalt der Antwort nützlich sein kann. Ihre Anwendung erhält denselben Wert, den sie gesendet hat, da dieser Parameter einen Hin- und Rückweg zum SAPHanaXSA-Autorisierungsserver und zurück durchführt. Zu den Verwendungsmöglichkeiten gehören die Umleitung des Benutzers zur richtigen Ressource auf Ihrer Site, Nonces und die Abwehr von Cross-Site-Request-Forgery.
Ergebnissatzspalten
Name Typ Beschreibung
OAuthAccessToken String Der für die Kommunikation mit SAPHanaXSA verwendete Zugriffstoken.
OAuthRefreshToken String Das OAuth-Refresh-Token. Dies ist dasselbe wie das Zugriffstoken im Fall von SAPHanaXSA.
ExpiresIn String Die verbleibende Lebensdauer des Zugriffstokens. Eine -1 bedeutet, dass es nicht abläuft.

GetOAuthAuthorizationURL

Ruft die Autorisierungs URL ab, die vom Benutzer separat geöffnet werden muss, um Zugriff auf Ihre Anwendung zu gewähren. Wird nur bei der Entwicklung von Web-Apps benötigt. Sie fordern den OAuthAccessToken von dieser URL an.

Eingang
Name Typ Erforderlich Beschreibung
CallbackUrl String Falsch Die URL, zu der der Benutzer nach der Autorisierung Ihrer Anwendung weitergeleitet wird. Dieser Wert muss mit der Weiterleitungs-URL in den SAPHanaXSA-App-Einstellungen übereinstimmen.
Scope String Falsch Eine durch Kommas getrennte Liste von Bereichen, die vom Benutzer angefordert werden sollen. Eine Liste der verfügbaren Berechtigungen finden Sie in der SAPHanaXSA- API Dokumentation.
State String Falsch Gibt einen beliebigen Status an, der für Ihre Anwendung nach Erhalt der Antwort nützlich sein kann. Ihre Anwendung erhält denselben Wert, den sie gesendet hat, da dieser Parameter einen Hin- und Rückweg zum SAPHanaXSA-Autorisierungsserver und zurück durchführt. Zu den Verwendungsmöglichkeiten gehören die Umleitung des Benutzers zur richtigen Ressource auf Ihrer Site, Nonces und die Abwehr von Cross-Site-Request-Forgery.
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.

Aktualisieren Sie das OAuthAccessToken

Aktualisiert den OAuth-Zugriffstoken, der für die Authentifizierung bei verschiedenen Basecamp-Diensten verwendet wird.

Eingang
Name Typ Erforderlich Beschreibung
OAuthRefreshToken String True Das Aktualisierungstoken wurde mit dem vorherigen Zugriffstoken zurückgegeben.
Ergebnissatzspalten
Name Typ Beschreibung
OAuthAccessToken String Das von Basecamp zurückgegebene Authentifizierungstoken. Dieses kann in nachfolgenden Aufrufen anderer Vorgänge für diesen bestimmten Dienst verwendet werden.
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 SAP HANA XSA zurück:

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:

  • 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 SampleTable-Tabelle zurück:

SELECT ColumnName, DataTypeName FROM sys_tablecolumns WHERE TableName='SampleTable'
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.
IsReadOnly Boolean Ob die Spalte schreibgeschützt ist.
IsKey Boolean Gibt an, ob ein von sys_tablecolumns zurückgegebenes Feld der Primärschlüssel der Tabelle ist.

Sys_procedures

Listet die verfügbaren gespeicherten Prozeduren auf.

Die folgende Abfrage ruft die verfügbaren gespeicherten Prozeduren ab:

SELECT * FROM sys_procedures
Spalten
Name Typ Beschreibung
CatalogName String Die Datenbank, die die gespeicherte Prozedur enthält.
SchemaName String Das Schema, das die gespeicherte Prozedur enthält.
ProcedureName String Der Name der gespeicherten Prozedur.
Description String Eine Beschreibung der gespeicherten Prozedur.
ProcedureType String Der Typ der Prozedur, z. B. PROZEDUR oder FUNKTION.

Sys_procedureparameters

Beschreibt Parameter gespeicherter Prozeduren.

Die folgende Abfrage gibt Informationen zu allen Eingabeparametern für die gespeicherte Prozedur SampleProcedure zurück:

SELECT * FROM sys_procedureparameters WHERE ProcedureName='SampleProcedure' AND Direction=1 OR Direction=2
Spalten
Name Typ Beschreibung
CatalogName String Der Name der Datenbank, die die gespeicherte Prozedur enthält.
SchemaName String Der Name des Schema, das die gespeicherte Prozedur enthält.
ProcedureName String Der Name der gespeicherten Prozedur, die den Parameter enthält.
ColumnName String Der Name des gespeicherten Prozedurparameters.
Direction Int32 Eine Ganzzahl, die dem Typ des Parameters entspricht: Eingabe (1), Eingabe/Ausgabe (2) oder Ausgabe (4). Parameter vom Typ Eingabe/Ausgabe können sowohl Eingabe- als auch Ausgabeparameter sein.
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 Anzahl der für Zeichendaten zulässigen Zeichen. Die Anzahl der für numerische Daten zulässigen Ziffern.
NumericPrecision Int32 Die maximale Genauigkeit für numerische Daten. Die Spaltenlänge in Zeichen für Zeichen- und Datums-/Uhrzeitdaten.
NumericScale Int32 Die Anzahl der Ziffern rechts vom Dezimalkomma in numerischen Daten.
IsNullable Boolean Ob der Parameter Null enthalten kann.
IsRequired Boolean Ob der Parameter zur Ausführung der Prozedur erforderlich ist.
IsArray Boolean Ob der Parameter ein Array ist.
Description String Die Beschreibung des Parameters.
Ordinal Int32 Der Index des Parameters.

Sys_keycolumns

Beschreibt die Primär- und Fremdschlüssel.

Die folgende Abfrage ruft den Primärschlüssel für die SampleTable-Tabelle ab:

SELECT * FROM sys_keycolumns WHERE IsKey='True' AND TableName='SampleTable'
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_primarykeys

Beschreibt die Primärschlüssel.

Die folgende Abfrage ruft die Primärschlüssel aus allen Tabellen und Ansichten ab:

SELECT * FROM sys_primarykeys
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.
KeySeq String Die Sequenznummer des Primärschlüssels.
KeyName String Der Name des Primärschlüssels.

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:saphanaxsa: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 Verbindung erforderlich ist.
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 Diverse sonstige Informationen zum Objekt.

Sys_sqlinfo

Beschreibt die SELECT- Abfrage, die der Connector an die Datenquelle auslagern kann.

Entdecken der SELECT-Funktionen der Datenquelle

Nachfolgend sehen Sie einen Beispieldatensatz mit SQL-Funktionen. 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.

Metadatenermittlung

Verfügbarmachen von Entitäten und Navigationseigenschaften

Der Connector modelliert den SAP HANA XSA OData-Dienst als relationale Tabellen und Ansichten.

Der OData-Dienst hat Beziehungen zu anderen Objekten in den Tabellen, die durch Fremdschlüssel ausgedrückt werden.

Der Connector ruft die Metadaten dynamisch vom OData-Dienst ab, der von der Multi Target SAP Hana XS Advanced-Anwendung bereitgestellt wird.

Nehmen Sie zum Beispiel den folgenden OData-Dienst:

service {
"tinyworld.tinydb::tinyf.world" as "Continents" navigates ("Continet_Countries" as "Country");
"tinyworld.tinydb::tinyf.Country" as "Countries";
"tinyworld.tinydb::tinyf.pollution_data" as "pollution_data";
association "Continet_Countries" principal "Continents"("continent") multiplicity "1" dependent "Countries"("partof.continent") multiplicity "*";
}

Der Connector stellt 3 Tabellen und 1 Ansicht bereit, wie in der .xsodata-Datei angegeben. Die bereitgestellten Tabellen wären: Kontinente, Länder und Verschmutzungsdaten, und die bereitgestellte Ansicht wäre: Kontinente_Land. Jede an der .xsodata-Datei vorgenommene Konfiguration wirkt sich auf den OData-Dienst und die vom Connector bereitgestellten Daten aus.

Verfügbarmachen parametrisierter Berechnungsansichten

Abgesehen von den standardmäßigen OData Entitäten stellt unser Connector parametrisierte Berechnungsansichten bereit und unterstützt die Abfrage von diesen, die als separate Entitätssätze und auch als Navigationseigenschaften eines anderen Entitätssatzes konfiguriert sind.

Die Eingabeparameter werden als Standardtabellenspalten angezeigt und ihr Wert kann als WHERE-Klauselbedingung bereitgestellt werden. Die Eingabeparameterspalte kann leicht identifiziert werden, da der Connector dem Spaltennamen das Präfix „Parameters_“ anfügt. Beachten Sie, dass der einzige serverseitig unterstützte Operator für Eingabeparameter EQUAL (=) ist.

SELECT * FROM Orders WHERE Parameters_InputRegion='US'

Die Eingabeparameter sind in der WHERE-Klausel nur erforderlich, wenn zur Entwurfszeit in der XSA Web IDE kein Standardwert festgelegt ist. Dies bedeutet, dass die folgende Abfrage korrekt ausgeführt werden sollte, ohne einen Wert für die Eingabeparameter anzugeben, wenn für den Parameter InputRegion ein Standardwert konfiguriert ist.

SELECT * FROM Orders

Betrachten wir das folgende Beispiel eines OData-Dienst:

service {
"tinyworld.tinydb::LocalOrders" as "Orders" keys("No") parameters via entity;
"tinyworld.tinydb::ThresholdOrders" as "LocalThresholdOrders" keys("No") parameters via entity "ThresholdParams" results property "Execute";
"tinyworld.tinydb::tinyf.Customer" as "Customers" navigates ("customer_res" as "CustomerReservations");
"tinyworld.tinydb::ReservationView" as "Reservations" key ("resno") parameters via key and entity;
association via parameters "customer_res" principal "Customer"("CustomerId") multiplicity "1" dependent "Reservations"("InputCustomerId") multiplicity "*";
}

Die erste angezeigte parametrisierte Ansicht ist die Ansicht „Bestellungen“. Da sie die Standardkonfiguration verwendet, können Sie sie ohne zusätzliche Konfiguration direkt Abfrage.

Wie beim zweiten, „LocalThresholdOrders“, wird ein benutzerdefinierter umbenannter Parameter-Entitätssatz „ThresholdParams“ verwendet. Damit der Connector ihn korrekt als parametrisierte Ansicht identifiziert, müssen Sie den Parameter-Entitätsnamen über angeben ParametersEntitySets Verbindungseigenschaft. Wenn Sie mehr als einen umbenannten Parameterentitätssatz haben, können Sie für jede freigegebene parametrisierte Ansicht eine durch Kommas getrennte Liste der umbenannten Parameterentitätssätze angeben.

Der Connector stellt außerdem parametrisierte Ansichten bereit, die als Navigationseigenschaften einer anderen Entität konfiguriert sind, und bietet die Möglichkeit, diese Abfrage. Diese Art von Navigationsansicht unterstützt keine Erweiterung. Um sie Abfrage, müssen Sie daher den Schlüssel der Basisentität angeben. Sie sollten keinen Wert für die Eingabeparameter angeben. Sie sind weder erforderlich noch werden sie serverseitig unterstützt, da ihre Werte an die entsprechenden Felder der Basisentität gebunden sind.

In diesem Beispiel wird die Berechnungsansicht „Reservierungen“ als Navigationseigenschaft „Kundenreservierungen“ der Entität „Kunden“ konfiguriert. Die folgende Abfrage gibt die „Kundenreservierungen“ für den Kunden mit dem Schlüsselwert 1001 zurück.

SELECT * FROM Customers_ CustomerReservations WHERE CustomerId = '1001'

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.

Authentifizierung

Eigenschaft Beschreibung
AuthScheme Der bei der Verbindung mit SAP HANA XSA zu verwendende Authentifizierungstyp.
XSUAAURL Die URL, von der das OAuth-Zugriffstoken abgerufen werden soll.
URL Der OData-Service Endpoint.
User Das zur Authentifizierung verwendete SAP HANA XSA-Benutzerkonto.
Password Das zur Authentifizierung des Benutzers verwendete Kennwort.

OAuth

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.
OAuthSettingsLocation Der Speicherort der Einstellungsdatei, in der OAuth-Werte gespeichert werden, wenn InitiateOAuth auf GETANDREFRESH oder REFRESH gesetzt 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.
OAuthGrantType Der Berechtigungstyp für den OAuth-Flow.
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.

SSL

Eigenschaft Beschreibung
SSLServerCert Das vom Server zu akzeptierende Zertifikat bei einer Verbindung per TLS/SSL.

Schema

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.

Verschiedenes

Eigenschaft Beschreibung
MaxRows Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder GROUP BY verwendet wird. Dies hat Vorrang vor LIMIT-Klauseln.
ODataVersion Die zu verwendende OData-Version. Standardmäßig versucht der Anbieter, die Version automatisch zu erkennen.
Other Diese versteckten Eigenschaften werden nur in bestimmten Anwendungsfällen verwendet.
Pagesize Die maximale Anzahl der Ergebnisse, die pro Seite von SAP HANA XSA zurückgegeben werden sollen.
ParametersEntitySets Die durch Kommas getrennte Liste der umbenannten Parameter-Entitätssätze für die freigegebenen parametrisierten berechneten Ansichten.
PseudoColumns Diese Eigenschaft gibt an, ob Pseudospalten als Spalten in die Tabelle aufgenommen werden sollen oder nicht.
SupportsExpand Ob Sie den Schlüssel der Basisentität angeben müssen, um Navigationseigenschaftsansichten Abfrage.
SupportsFormulas Ein Boolescher Wert, der angibt, ob der OData-Dienst serverseitige Formeln unterstützt.
Timeout Der Wert in Sekunden, bis der Timeout-Fehler auftritt und der Operation abgebrochen wird.
UseClientSidePaging Ob der ADO.NET-Provider für SAP HANA XSA clientseitiges Paging verwenden soll oder nicht.
UseEtags Ob die OData Quelle Etags verwendet oder nicht.
UserDefinedViews Ein Dateipfad, der auf die JSON-Konfigurationsdatei verweist, die Ihre benutzerdefinierten Ansichten enthält.
UseSimpleNames Boolescher Wert, der bestimmt, ob für Tabellen und Spalten einfache Namen verwendet werden sollen.

Authentifizierung

Dieser Abschnitt enthält eine vollständige Liste der Authentifizierungseigenschaften, die Sie konfigurieren können.

Eigenschaft Beschreibung
AuthScheme Der bei der Verbindung mit SAP HANA XSA zu verwendende Authentifizierungstyp.
XSUAAURL Die URL, von der das OAuth-Zugriffstoken abgerufen werden soll.
URL Der OData-Service Endpoint.
User Das zur Authentifizierung verwendete SAP HANA XSA-Benutzerkonto.
Password Das zur Authentifizierung des Benutzers verwendete Kennwort.

AuthScheme

Der beim Herstellen einer Verbindung mit SAP HANA XSA zu verwendende Authentifizierungstyp.

Mögliche Werte

Basic, OAuth, OAuthPassword

Datentyp

string

Standardwert

Basic

Hinweise
  • Basic: Stellen Sie dies ein, um die grundlegende Benutzer-/Passwortauthentifizierung zu verwenden.

  • OAuth: Stellen Sie dies ein, um die OAuth-Authentifizierung mit dem Code-Grant-Typ durchzuführen.

  • OAuthPassword: Stellen Sie dies ein, um die OAuth-Authentifizierung mit dem Passwort-Grant-Typ durchzuführen.

Abonnieren

Die URL, von der das OAuth-Zugriffstoken abgerufen werden soll.

Datentyp

string

Standardwert

""

Hinweise

In OAuth 1.0 wird unter dieser URL der autorisierte Anforderungstoken gegen den Zugriffstoken ausgetauscht.

URL

Der OData-Service-Endpoint.

Datentyp

string

Standardwert

""

Hinweise

Sie finden diesen Endpoint in Ihren Webmodulkonfigurationen. Überprüfen Sie die Datei, in der Sie alle Ihre Routen definiert haben. Setzen Sie diese Verbindungseigenschaft auf eine URL, die auf eine OData Dienstdatei verweist, z. B.: http://hxehost.com/euro.xsodata

Benutzer

Das zur Authentifizierung verwendete SAP HANA XSA-Benutzerkonto.

Datentyp

string

Standardwert

""

Hinweise

Zusammen mit Passwort, wird dieses Feld zur Authentifizierung gegenüber dem SAP HANA XSA-Server verwendet.

Passwort

Das zur Authentifizierung des Benutzers verwendete Passwort.

Datentyp

string

Standardwert

""

Hinweise

Der Benutzer Und Password werden zusammen zur Authentifizierung beim Server verwendet.

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.
OAuthSettingsLocation Der Speicherort der Einstellungsdatei, in der OAuth-Werte gespeichert werden, wenn InitiateOAuth auf GETANDREFRESH oder REFRESH gesetzt 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.
OAuthGrantType Der Berechtigungstyp für den OAuth-Flow.
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:

  1. OFF: Gibt an, dass der OAuth-Flow vollständig vom Benutzer gehandhabt wird. Zur Authentifizierung ist ein OAuthAccessToken erforderlich.
  2. 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.
  3. 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 per 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.

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://'.

Datentyp

string

Standardwert

%APPDATA%\CData\Acumatica Data Provider\OAuthSettings.txt

Hinweise

Wenn InitiateOAuth ist auf gesetzt GETANDREFRESH oder REFRESH, der Treiber speichert OAuth-Werte, damit der Benutzer die OAuth-Verbindungseigenschaften nicht manuell eingeben muss und die Anmeldeinformationen über Verbindungen oder Prozesse hinweg gemeinsam genutzt werden können.

Anstatt einen Dateipfad anzugeben, können Sie auch den Speicherort angeben. Speicherorte werden durch einen Wert angegeben, der mit 'memory://' gefolgt von einer eindeutigen Kennung für diesen Satz von Anmeldeinformationen (z. B. memory://user1). Die Kennung können Sie frei wählen, sie sollte jedoch für den Benutzer eindeutig sein. Im Gegensatz zur dateibasierten Speicherung, bei der die Anmeldeinformationen über Verbindungen hinweg bestehen bleiben, werden die Anmeldeinformationen bei der Speicherspeicherung in den statischen Speicher geladen und die Anmeldeinformationen werden für die Dauer des Prozesses unter Verwendung derselben Kennung zwischen Verbindungen geteilt. Um die Anmeldeinformationen außerhalb des aktuellen Prozesses beizubehalten, müssen Sie die Anmeldeinformationen vor dem Schließen der Verbindung manuell speichern. Auf diese Weise können Sie sie in der Verbindung festlegen, wenn der Prozess erneut gestartet wird. Sie können OAuth-Eigenschaftswerte mit einer Abfrage an abrufen sys_connection_propsSystemtabelle. Wenn mehrere Verbindungen mit denselben Anmeldeinformationen bestehen, werden die Eigenschaften aus der zuvor geschlossenen Verbindung gelesen.

Der Standardspeicherort ist „%APPDATA%\CData\ Acumatica Data Provider\OAuthSettings.txt“ mit %APPDATA% auf das Konfigurationsverzeichnis des Benutzers gesetzt. Die Standardwerte sind

  • Windows: "register://%DSN"
  • Unix: "%AppData%..."

wobei DSN der Name des aktuellen DSN ist, der in der offenen Verbindung verwendet wird.

Die folgende Tabelle listet den Wert von auf %APPDATA% nach Operationssystem:

Plattform %APPDATA%
Windows Der Wert der Umfeld APPDATA
Linux ~/.config

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

http://localhost:33333

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.

OAuthGrantType

Der Berechtigungstyp für den OAuth-Flow.

Mögliche Werte

CODE, PASSWORD

Datentyp

string

Standardwert

PASSWORD

Hinweise

Folgende Optionen stehen zur Verfügung: CODE, PASSWORT

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 am angegebenen Speicherort. Setzen Sie InitiateOAuth zu GETANDREFRESH, um den Austausch 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 per 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%\SAPHanaXSA 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 nichts angegeben wird, ist der Standardspeicherort „%APPDATA%\SAPHanaXSA 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
MaxRows Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder GROUP BY verwendet wird. Dies hat Vorrang vor LIMIT-Klauseln.
ODataVersion Die zu verwendende OData-Version. Standardmäßig versucht der Anbieter, die Version automatisch zu erkennen.
Other Diese versteckten Eigenschaften werden nur in bestimmten Anwendungsfällen verwendet.
Pagesize Die maximale Anzahl der Ergebnisse, die pro Seite von SAP HANA XSA zurückgegeben werden sollen.
ParametersEntitySets Die durch Kommas getrennte Liste der umbenannten Parameter-Entitätssätze für die freigegebenen parametrisierten berechneten Ansichten.
PseudoColumns Diese Eigenschaft gibt an, ob Pseudospalten als Spalten in die Tabelle aufgenommen werden sollen oder nicht.
SupportsExpand Ob Sie den Schlüssel der Basisentität angeben müssen, um Navigationseigenschaftsansichten Abfrage.
SupportsFormulas Ein Boolescher Wert, der angibt, ob der OData-Dienst serverseitige Formeln unterstützt.
Timeout Der Wert in Sekunden, bis der Timeout-Fehler auftritt und der Operation abgebrochen wird.
UseClientSidePaging Ob der ADO.NET-Provider für SAP HANA XSA clientseitiges Paging verwenden soll oder nicht.
UseEtags Ob die OData Quelle Etags verwendet oder nicht.
UserDefinedViews Ein Dateipfad, der auf die JSON-Konfigurationsdatei verweist, die Ihre benutzerdefinierten Ansichten enthält.
UseSimpleNames Boolescher Wert, der bestimmt, ob für Tabellen und Spalten einfache Namen verwendet werden sollen.

MaxRows

Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder GROUP BY verwendet wird. Dies hat Vorrang vor LIMIT-Klauseln.

Datentyp

int

Standardwert

-1

Hinweise

Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder GROUP BY verwendet wird. Dies hat Vorrang vor LIMIT-Klauseln.

ODataVersion

Die zu verwendende OData-Version. Standardmäßig versucht der Anbieter, die Version automatisch zu erkennen.

Mögliche Werte

AUTO, 2.0, 4.0

Datentyp

string

Standardwert

AUTO

Hinweise

Die zu verwendende OData-Version. Standardmäßig versucht der Connector automatisch, die vom Dienst verwendete Version zu ermitteln. Wenn eine Version nicht aufgelöst werden kann, wird 3.0 verwendet. Dies kann optional manuell eingestellt werden.

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.

Seitengröße

Die maximale Anzahl der Ergebnisse, die pro Seite von SAP HANA XSA zurückgegeben werden sollen.

Datentyp

int

Standardwert

1000

Hinweise

Der Pagesize Die Eigenschaft beeinflusst die maximale Anzahl von Ergebnissen, die pro Seite von SAP HANA XSA zurückgegeben werden. Das Festlegen eines höheren Wertes kann zu einer besseren Leistung führen, allerdings auf Kosten des zusätzlichen Speichers, der pro verbrauchter Seite zugewiesen wird.

ParameterEntitySets

Die durch Kommas getrennte Liste der umbenannten Parameterentitätssätze für die freigegebenen parametrisierten berechneten Ansichten.

Datentyp

string

Standardwert

""

Hinweise

Sie können die Namen der Parameter-Entitätssätze als durch Kommas getrennte Liste für die angezeigten berechneten Ansichten angeben, für die Sie entweder einen umbenannten Parameter-Entitätssatz oder eine umbenannte Ergebnisnavigationseigenschaft verwenden.

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. „*=*“.

UnterstütztExpand

Ob Sie den Schlüssel der Basisentität angeben müssen, um Navigationseigenschaftsansichten Abfrage.

Datentyp

bool

Standardwert

true

Hinweise

Diese Verbindungseigenschaft wird hauptsächlich mit eingeschränkten OData APIs verwendet. Sie bestimmt, ob Navigationseigenschaften aus dem Basisentitätssatz abgerufen werden können. In OData verknüpfen Navigationseigenschaften eine Basisentität mit einer verwandten Entität oder einer Sammlung verwandter Entitäten.

Weitere Informationen zu Navigationseigenschaften finden Sie unter Datenmodell.

Arbeiten mit eingeschränkten APIs

In OData ist die $expand Parameter wird verwendet, um angegebene Navigationseigenschaften zu erweitern, wenn Daten aus einem bestimmten Entitätssatz angefordert werden. In SQL ermöglicht dies die Ausführung eines SELECT *zu einer Navigationseigenschaftsansicht.

Wenn $expand nicht unterstützt wird, muss eine andere Anfrage gestellt werden, um eine Navigationseigenschaft abzurufen, die den Primärschlüssel des Basisentitätssatzes angibt. Diese API Einschränkung spiegelt sich in SQL wider: Sie müssen den Primärschlüssel der Basisentität in der WHERE-Klausel angeben.

Betrachten Sie beispielsweise zwei Entitäten mit einer 1:n-Beziehung im Northwind-Beispieldienst, Kategorien und Produkte. In OData könnten die einer bestimmten Kategorie zugeordneten Produkte als Navigationseigenschaft im Basis-Kategorie-Entitätssatz dargestellt werden. Der Connector modelliert die Navigationseigenschaft Produkte als Ansicht „Kategorien_Produkte“.

Wenn $expand nicht unterstützt wird, verwenden Sie für diese Ansicht eine Abfrage wie die folgende:

SELECT       *
FROM         Categories_Products
WHERE        (Categories_CategoryID = 1)

UnterstütztFormeln

Ein Boolescher Wert, der angibt, ob der OData-Dienst serverseitige Formeln unterstützt.

Datentyp

bool

Standardwert

false

Hinweise

OData verfügt über viele serverseitige Formeln, die in die Spezifikationen integriert sind. Viele Dienste unterstützen sie jedoch nicht nativ und geben Fehler zurück, wenn diese Formeln an den Parameter $filter angehängt werden. Wenn sie unterstützt werden, können serverseitige Formeln verwendet werden, um bestimmte Abfragen viel schneller auszuführen. Wenn Ihr OData Dienst Formeln unterstützt, setzen Sie diese Verbindungseigenschaft auf „true“. Andernfalls belassen Sie sie auf „false“.

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.

Clientseitiges Paging verwenden

Ob der ADO.NET-Provider für SAP HANA XSA clientseitiges Paging verwenden soll oder nicht.

Datentyp

bool

Standardwert

true

Hinweise

Einige Quellen unterstützen keine serverseitige Paging. Setzen Sie in diesen Fällen UseClientSidePaging auf true. Andernfalls belassen Sie es auf false. Einstellung UseClientSidePaging auf true bei einer Quelle, die bereits Paginierung unterstützt, kann zu unvollständigen Ergebnissen führen.

UseEtags

Ob die OData Quelle Etags verwendet oder nicht.

Datentyp

bool

Standardwert

false

Hinweise

Einige OData Quellen verwenden keine Etags. Setzen Sie in diesen Fällen UseEtags auf False.

BenutzerdefinierteAnsichten

Ein Dateipfad, der auf die JSON-Konfigurationsdatei verweist, die Ihre benutzerdefinierten Ansichten enthält.

Datentyp

string

Standardwert

""

Hinweise

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 SampleTable WHERE MyColumn = 'value'"
    },
    "MyView2": {
        "query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
    }
}

Verwenden Sie die UserDefinedViews Verbindungseigenschaft, um den Speicherort Ihrer JSON-Konfigurationsdatei anzugeben. Beispiel:

"UserDefinedViews", C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json

Beachten Sie, dass der angegebene Pfad nicht in Anführungszeichen steht.

UseSimpleNames

Boolescher Wert, der bestimmt, ob einfache Namen für Tabellen und Spalten verwendet werden sollen.

Datentyp

bool

Standardwert

false

Hinweise

SAP HANA XSA-Tabellen und-Spalten können Sonderzeichen in Namen verwenden, die in Standarddatenbanken normalerweise nicht zulässig sind. UseSimpleNames macht den Connector mit herkömmlichen Datenbanktools einfacher zu verwenden.

Einstellung UseSimpleNames auf true vereinfacht die Namen der zurückgegebenen Tabellen und Spalten. Es wird ein Benennungsschema erzwungen, sodass nur alphanumerische Zeichen und der Unterstrich für die angezeigten Tabellen- und Spaltennamen gültig sind. Alle nicht alphanumerischen Zeichen werden in einen Unterstrich umgewandelt.