Erstellen des SAP-Systemverbindungs-URI
Der Verbindungs-URI des Microsoft BizTalk-Adapters für mySAP Business Suite enthält Eigenschaften, die der Adapter zum Herstellen einer Verbindung mit dem SAP-System verwendet.
Wichtig
Standardmäßig unterstützt die SAP-Clientbibliothek (librfc32u.dll) maximal 100 Verbindungen mit dem SAP-System. Wenn Sie diese Anzahl von Verbindungen überschreiten, wird eine Ausnahme ausgelöst. Aus diesem Grund sollten Sie entweder die Bindungseigenschaft MaxConnectionsPerSystem festlegen, um die Anzahl der Verbindungen zu begrenzen, die der SAP-Adapter auf dem SAP-System zu öffnen versucht. oder legen Sie die umgebungsvariable CPIC_MAX_CONV fest, um die Anzahl der verbindungen zu erhöhen, die von der SAP-Clientbibliothek unterstützt werden. Wenn Sie CPIC_MAX_CONV ändern, müssen Sie den Computer neu starten, damit die Änderung wirksam wird. Weitere Informationen zu den Eigenschaften der SAP-Adapterbindung finden Sie unter Informationen zu Den Bindungseigenschaften des BizTalk-Adapters für mySAP Business Suite.
Dieses Thema enthält Informationen zum SAP-Verbindungs-URI sowie Links zu anderen Themen, in denen erläutert wird, wie ein Verbindungs-URI in verschiedenen Programmierszenarien angegeben wird.
Verbindungs-URI für den SAP-Adapter
Ein typischer WCF-Endpunktadressen-URI wird wie folgt dargestellt:
scheme://userinfoparams@hostinfoparams?query_string
Der Endpunktadressen-URI enthält die folgenden Komponenten:
scheme ist der Name des Schemas.
userinfoparams ist eine Name-Wert-Sammlung von Parametern, die für die Benutzerauthentifizierung durch den Endpunkt erforderlich sind.
hostinfoparams sind Informationen, die zum Herstellen der Verbindung mit dem Host erforderlich sind; z. B. ein Pfad.
query_string ist eine optionale Name-Wert-Auflistung von Parametern, die durch ein Fragezeichen (?) getrennt sind.
Der Endpunktadressen-URI, den der SAP-Adapter für ein SAP-System verwendet, wird mithilfe eines SAP-Verbindungs-URI angegeben. Der SAP-Adapter implementiert diesen Verbindungs-URI wie folgt:
sap://user=[USER_NAME];passwd=[PASSWORD];Client=[CLIENT];lang=[LANGUAGE];[UseSnc]=[True|False]@connectiontype/conndetail1/conndetail2?GwHost=[GWHOST]?GwServ=[GWSERV]?MsServ=[MSSERV]?Group=[GROUP]?ListenerDest=[LISTENERDEST]?ListenerGwHost=[LISTENERGWHOST]?ListenerGwServ=[LISTENERGWSERV]?ListenerProgramId=[LISTENERPROGRAMID]?RfcSdkTrace=[true/false]?AbapDebug=[true/false]
Die Komponenten des Verbindungs-URI werden in den folgenden Abschnitten erläutert.
Das SAP-Verbindungs-URI-Schema
Das Schema für den SAP-Verbindungs-URI lautet "sap".
Benutzerinformationen im SAP-Verbindungs-URI
Die Benutzerinformationen (userinfoparams) im SAP-Verbindungs-URI werden als Name-Wert-Sammlung von Parametern dargestellt, die für die Benutzerauthentifizierung, Clientidentifikation und Sprachspezifikation erforderlich sind. In der folgenden Tabelle werden diese Parameter beschrieben.
Eigenschaft | BESCHREIBUNG |
---|---|
Benutzer | Der Benutzername im SAP-System; Bei diesem Wert wird die Groß-/Kleinschreibung beachtet. Sie müssen die AcceptCredentialsInUri-Bindungseigenschaft auf true festlegen, um den Benutzernamen und das Kennwort im Verbindungs-URI anzugeben. Hinweis: Der SAP-Adapter behält die Groß-/Kleinschreibung des Werts bei, den Sie für den Benutzernamen eingeben, wenn er eine Verbindung im SAP-System öffnet. |
Passwd | Das Kennwort für den Benutzer im SAP-System; Bei diesem Wert wird die Groß-/Kleinschreibung beachtet. Sie müssen die AcceptCredentialsInUri-Bindungseigenschaft auf true festlegen, um den Benutzernamen und das Kennwort im Verbindungs-URI anzugeben. Hinweis: Der SAP-Adapter behält die Groß-/Kleinschreibung des Werts bei, den Sie für das Kennwort eingeben, wenn er eine Verbindung im SAP-System öffnet. |
Client | Die CLIENT-ID des SAP-Systems. |
Sprache | Sprache: |
UseSnc | Optionaler Parameter, der angibt, ob SAP Secure Network Communications (SNC) aktiviert ist. Der Wert kann True oder False sein. Wenn True, ist SNC aktiviert. Der Standardwert ist False. Wenn Sie SNC aktivieren, müssen Sie auch die Bindungseigenschaften SncPartnerName und SncLibrary festlegen. Weitere Informationen finden Sie unter Informationen zu Den Bindungseigenschaften des BizTalk-Adapters für mySAP Business Suite. Wenn SNC aktiviert ist und der Verbindungs-URI Anmeldeinformationen enthält, löst der Adapter eine Ausnahme aus. Hinweis: Der UseSnc-Verbindungsparameter gilt nur für die Verbindungstypen A und B. Die verschiedenen Verbindungstypen und ihre Bedeutung werden weiter unten in diesem Thema ausführlich beschrieben. |
Hinweis
Sie müssen den Client und die Sprache im SAP-Verbindungs-URI angeben.
Der SAP-Adapter zeigt die AcceptCredentialsinUri-Bindungseigenschaft an, damit Sie steuern können, ob SAP-Systemanmeldeinformationen im Verbindungs-URI angegeben werden können. Dies liegt daran, dass die Anmeldeinformationen im Verbindungs-URI als Nur-Text dargestellt werden und dies ein inhärentes Sicherheitsrisiko darstellt. Standardmäßig ist die AcceptCredentialsInUri-Bindungseigenschaft false, und der Adapter löst eine Ausnahme aus, wenn Anmeldeinformationen im Verbindungs-URI angegeben sind.
Es gibt einige Szenarien, in denen anmeldeinformationen im Verbindungs-URI angegeben werden müssen. Beispielsweise, um die eingehenden Vorgänge vom SAP-System zu empfangen, wenn Sie das WCF-Dienstmodell oder das WCF-Kanalmodell verwenden. Sie können die AcceptCredentialsInUri-Eigenschaft für diese Szenarien auf true festlegen. Es empfiehlt sich jedoch, anmeldeinformationen nicht direkt im Verbindungs-URI anzugeben. Weitere Informationen zum sichereren Bereitstellen von Anmeldeinformationen für die SAP-Verbindung finden Sie unter Schützen Ihrer SAP-Anwendungen.
Wichtig
Wenn Sie Secure Network Communications (SNC) aktivieren, indem Sie den UseSnc-Parameter auf true festlegen, löst der Adapter eine Ausnahme aus.
Hostinformationen im SAP-Verbindungs-URI
Die SAP-Hostinformationen (hostinfoparams) werden durch die folgenden Elemente im SAP-Verbindungs-URI dargestellt: connectiontype/conndetail1/conndetail2
. Diese Parameter geben Details zur Clientverbindung mit dem SAP-System an. Weitere Details zur SAP-Clientverbindung sowie Details, die eine Verbindung als Listener mit einem SAP RFC-Ziel herstellen, können im query_string angegeben werden. Der SAP-Adapter unterstützt die folgenden Clientverbindungstypen im SAP-Verbindungs-URI:
A: Eine anwendungshostbasierte Verbindung, bei der der Verbindungs-URI einen Anwendungsserver angibt, über den der SAP-Adapter eine Verbindung mit SAP herstellt.
B: Eine Verbindung mit Lastenausgleich, bei der der Verbindungs-URI einen Nachrichtenserver angibt, über den der SAP-Adapter eine Verbindung mit SAP herstellt.
D: Eine zielbasierte Verbindung, bei der der Verbindungs-URI ein Ziel in der saprfc.ini-Datei angibt, die die Verbindungsparameter für SAP enthält.
In der folgenden Tabelle wird beschrieben, wie diese Verbindungen im SAP-Verbindungs-URI angegeben werden.
Verbindungstyp. | Conndetail1 | Conndetail2 | BESCHREIBUNG |
---|---|---|---|
Ein | ASHOST (Anwendungsserverhost) | SYSNR (SAP-Systemnummer) | Gibt eine auf dem Anwendungshost basierende Verbindung an. Für eine hostbasierte Anwendungsverbindung kann im query_string ein optionaler Gatewayhost und ein Gatewaydienst angegeben werden. |
B | MSHOST (Message Server Host) | R3NAME (SAP R3-Name) | Gibt eine Lastenausgleichsverbindung über einen Nachrichtenserver an. Für eine Lastenausgleichsverbindung können eine optionale Servergruppe und ein Nachrichtendienst im query_string angegeben werden. |
D | DEST (Ziel, das die Verbindungsparameter in der saprfc.ini-Datei enthält) | -- | Gibt eine zielbasierte Verbindung an. Die SAP-Verbindungsparameter sind im angegebenen Ziel in der saprfc.ini datei enthalten. Nur Verbindungen vom Typ A und B können im Ziel angegeben werden. |
Hinweis
Wenn Sie Verbindungswerte in der saprfc.ini-Datei angeben, stellen Sie sicher, dass sich die Datei im selben Ordner wie der .exe befindet, der auf die Datei zugreift, oder an einem Standardspeicherort, wie es für das SAP-System erforderlich ist. Weitere Informationen finden Sie in der SAP-Dokumentation.
Abfrageinformationen im SAP-Verbindungs-URI
Die Abfrageinformationen (query_string) im SAP-Verbindungs-URI enthalten optionale Parameter, die eingeschlossen werden können, um Folgendes anzugeben:
Zusätzliche Verbindungsdetails für anwendungshostbasierte Verbindungen (A).
Zusätzliche Verbindungsdetails für Lastenausgleichsverbindungen (B).
Listenerdetails, die ein RFC-Ziel auf dem SAP-System angeben, über das das SAP-System RFCs, TRFCs und IDocs an den SAP-Adapter senden kann.
Gibt an, ob SAP Secure Network Communications (SNC) aktiviert werden soll.
Details, die die Debugkonfiguration angeben.
Abfrageparameter sind optional. Listenerdetails müssen jedoch angegeben werden, damit der SAP-Adapter als RFC-Server fungiert.
In der folgenden Tabelle werden die Abfrageparameter und die SAP-Verbindungstypen beschrieben, für die sie gültig sind.
Wert | Gültiger Verbindungstyp | BESCHREIBUNG |
---|---|---|
GwHost | Ein | Gibt den Namen eines optionalen Gatewayhosts in einer anwendungshostbasierten Verbindung an. |
GwServ | Ein | Gibt den Namen eines optionalen Gatewaydiensts in einer hostbasierten Anwendungsverbindung an. |
MsServ | B | Gibt den Namen eines optionalen Nachrichtendiensts in einer Lastenausgleichsverbindung an. |
Group | B | Gibt eine optionale Gruppe von Anwendungsservern in einer Lastenausgleichsverbindung an. |
ListenerDest | (R) | Gibt ein optionales Ziel in der saprfc.ini-Datei in einer RFC-Serververbindung an. Das Ziel muss eine Verbindung vom Typ R angeben. |
ListenerGwHost | (R) | Gibt den Gatewayhost für eine RFC-Serververbindung an. Dieser Parameter ist optional. Wenn jedoch eine RFC-Serververbindung gewünscht und LISTENERDEST nicht angegeben ist oder vom Ziel in der saprfc.ini-Datei kein Gatewayhost angegeben wird, muss LISTENERGWHOST einen gültigen Gatewayhost enthalten. |
ListenerGwServ | (R) | Gibt den Gatewaydienst für eine RFC-Serververbindung an. Dieser Parameter ist optional. Wenn jedoch eine RFC-Serververbindung gewünscht und LISTENERDEST nicht angegeben ist oder vom Ziel in der saprfc.ini-Datei kein Gatewaydienst angegeben wird, muss LISTENERGWSERV einen gültigen Gatewaydienst enthalten. |
ListenerProgramId | (R) | Gibt die Programm-ID für eine RFC-Serververbindung an. Dieser Parameter ist optional. Wenn jedoch eine RFC-Serververbindung gewünscht und LISTENERDEST nicht angegeben ist oder vom Ziel in der saprfc.ini-Datei kein Gatewaydienst angegeben wird, muss LISTENERPROGRAMID einen gültigen Gatewaydienst enthalten. |
RfcSdkTrace | All | Optionaler Parameter, der angibt, ob die Ablaufverfolgung der RFC-Bibliothek aktiviert ist. Der Wert kann True oder False sein. Wenn True, ist die ABLAUFverfolgung der RFC-Bibliothek aktiviert. Die Standardeinstellung lautet „false“. Die Durch den RfcSdkTrace-Parameter aktivierte Ablaufverfolgungsebene hängt von der Umgebungsvariablen RFC_TRACE ab. - Wenn RFC_TRACE nicht vorhanden oder auf 0 festgelegt ist, ist die Mindestebene der Ablaufverfolgung aktiviert. – Sie können RFC_TRACE auf 1 oder 2 festlegen, um die Ebene der Ablaufverfolgung zu erhöhen. |
AbapDebug | All | Optionaler Parameter, der angibt, ob das ABAP-Debuggen aus Visual Studio aktiviert ist. Der Wert kann True oder False sein. Wenn True, ist das ABAP-Debuggen aktiviert. Die Standardeinstellung lautet „false“. Wenn AbapDebug auf True festgelegt ist, wird die SAP GUI geöffnet. |
SAPROUTER | Alle | Optionaler Parameter für SAProuter, wenn er für Verbindungen über eine Firewall verwendet wird. Dieser Parameter ist eine Liste von Hostnamen und Dienstnamen/Portnummern im folgenden Format: /H/hostname/S/portnumber. |
Die Parameter in der Abfragezeichenfolge sind SAP-Parameter, und ihre Werte werden von SAP definiert. Weitere Informationen zu diesen Parametern finden Sie in der SAP-Dokumentation.
Im Folgenden wird ein Beispiel-Verbindungs-URI für eine anwendungshostbasierte Verbindung gezeigt:
sap://Client=800;lang=EN@A/YourSAPHOST/00
Verbindungs-URI-Eigenschaften im Dialogfeld Adapter konfigurieren
Wenn Sie mit dem BizTalk-Projekt-Add-In "Adapterdienst nutzen" oder dem Visual Studio-Plug-In "Adapterdienstverweis hinzufügen" eine Verbindung mit dem SAP-System herstellen, legen Sie die Verbindungs-URI-Parameter auf der Registerkarte URI-Eigenschaften im Dialogfeld Adapter konfigurieren fest. Die folgende Tabelle zeigt, wie die URI-Eigenschaften im Blatt URI-Eigenschaften angezeigt werden. (Die URI-Eigenschaften werden nach Gruppe in der Reihenfolge aufgelistet, in der sie im URI-Eigenschaftenblatt angezeigt werden.)
Category | URI-Eigenschaft | URI-Teil |
---|---|---|
Anwendungsserver | Anwendungsserverhost | Conndetail1 (Hostinformationsverbindungstyp A) |
Anwendungsserver | Gatewayhost | GwHost (Abfragezeichenfolge) |
Anwendungsserver | Gatewaydienst | GwServ (Abfragezeichenfolge) |
Anwendungsserver | Systemnummer | Conndetail2 (Hostinformationsverbindungstyp A) |
Destination | Zielname | Conndetail1 (Hostinformationsverbindungstyp D) |
Diagnose | RFC-Ablaufverfolgung | RfcSdkTrace (Abfragezeichenfolge) |
Diagnose | ABAP-Debug | AbapDebug (Abfragezeichenfolge) |
Anmeldeinformationen | Client | Client (userinfoparams) |
Anmeldeinformationen | Sprache | Sprache (userinfoparams) |
Nachrichtenserver | Name der Anwendungsservergruppe | Gruppe (Abfragezeichenfolge) |
Nachrichtenserver | Nachrichtenserverhost | Conndetail1 (Hostinformationsverbindungstyp B) |
Nachrichtenserver | Nachrichtenserverdienst | MsServ (Abfragezeichenfolge) |
Nachrichtenserver | R/3-Systemname | Conndetail2 (Hostinformationsverbindungstyp B) |
Sonstiges | Verbindungstyp. | Verbindungstyp (Hostinformationen: A, B oder D) |
Sonstiges | SAP-Router | SAPROUTER (Abfragezeichenfolge) |
RFC-Server | Zielname | ListenerDest (Abfragezeichenfolge) |
RFC-Server | Gatewayhost | ListenerGwHost (Abfragezeichenfolge) |
RFC-Server | Gatewaydienst | ListenerGwServ (Abfragezeichenfolge) |
RFC-Server | Programm-ID | ListenerProgramId (Abfragezeichenfolge) |
SNC | UseSnc | UseSnc (Benutzerinformationen) |
Hier erfahren Sie, wie Sie einen Verbindungs-URI für RFC-Serververbindungen angeben.
Um eine Endpunktadresse zu erstellen, über die der SAP-Adapter als RFC-Server fungieren kann, müssen Sie eine SAP-Programm-ID, einen SAP-Gatewayhost und einen SAP-Gatewaydienst angeben, der einem RFC-Ziel im SAP-System entspricht. Informationen zum Einrichten eines RFC-Ziels in SAP finden Sie unter Erstellen eines RFC- und RFC-Ziels und Senden eines RFC von SAP.
Sie können die Programm-ID, den Gatewayhost und den Gatewaydienst im Verbindungs-URI auf zwei Arten angeben:
durch Festlegen der Abfrageparameter ListenerGwHost, ListenerGwServ und ListenerProgramId
durch Festlegen des ListenerDest-Abfrageparameters auf ein Ziel in der saprfc.ini Datei, die eine Verbindung vom Typ R angibt.
Hinweis
Wenn Sie Verbindungswerte in der saprfc.ini-Datei angeben, stellen Sie sicher, dass sich die Datei am gleichen Speicherort wie die .exe befindet, die auf die Datei zugreifen, oder an einem Standardspeicherort, wie vom SAP-System erforderlich. Weitere Informationen finden Sie in der SAP-Dokumentation.
Um einen Verbindungs-URI für eine RFC-Serververbindung anzugeben, geben Sie wie im folgenden Beispiel eine reguläre Clientverbindung mit einem RFC-Ziel an, das in der Abfragezeichenfolge angegeben ist:
sap://Client=800;lang=EN@A/YourSAPHOST/00?ListenerGwHost=YourSAPHOST&ListenerGwServ=SAPGW00&ListenerProgramId=MyProgramId
Der SAP-Adapter verwendet die in den Userinfoparams und hostinfoparams enthaltenen Informationen des Verbindungs-URI zum Abrufen von Metadaten aus dem SAP-System und verwendet die informationen, die von den Listenerparametern in der Abfragezeichenfolge bereitgestellt werden, um sich als Listener am SAP RFC-Ziel zu registrieren.
Verwenden reservierter Zeichen im Verbindungs-URI
Der SAP-Adapter unterstützt die Angabe eines Verbindungs-URI mit Sonderzeichen für einen der Parameterwerte nicht. Wenn die Verbindungsparameterwerte Sonderzeichen enthalten, stellen Sie sicher, dass Sie eine der folgenden Aktionen ausführen:
Wenn Sie den URI in Visual Studio mithilfe des Adapterdienstverweis-Plug-Ins hinzufügen oder Das Adapterdienst-Add-In nutzen angeben, müssen Sie ihn auf der Registerkarte URI-Eigenschaften angeben, d. h. ohne Escapezeichen. Wenn Sie den URI direkt im Feld URI konfigurieren angeben und die Verbindungsparameter reservierte Zeichen enthalten, müssen Sie die Verbindungsparameter mit geeigneten Escapezeichen angeben.
Wenn Sie den URI beim Erstellen eines Sende- oder Empfangsports in BizTalk Server Verwaltungskonsole angeben und die Verbindungsparameter reservierte Zeichen enthalten, müssen Sie die Verbindungsparameter mit geeigneten Escapezeichen angeben.
Verwenden des Verbindungs-URI zum Herstellen einer Verbindung mit dem SAP-System
Informationen zum Herstellen einer Verbindung mit dem SAP-System finden Sie in folgenden Fällen:
Verwenden Sie das BizTalk-Projekt-Add-In zum Nutzen des Adapterdiensts oder das Visual Studio-Plug-In Adapterdienstverweis hinzufügen. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit dem SAP-System in Visual Studio.
Konfigurieren eines Sendeports oder Empfangsports (Standort) in einer BizTalk Server-Lösung finden Sie unter Manuelles Konfigurieren einer physischen Portbindung an den SAP-Adapter.
Verwenden Sie das WCF-Kanalmodell in einer Programmierlösung. Weitere Informationen finden Sie unter Erstellen eines Kanals mit SAP.
Verwenden Sie das WCF-Dienstmodell in einer Programmierlösung. Weitere Informationen finden Sie unter Konfigurieren einer Clientbindung für das SAP-System.
Verwenden Sie das WCF ServiceModel Metadata Utility Tool (svcutil.exe). Weitere Informationen finden Sie unter Verwenden des ServiceModel-Metadatenhilfsprogramms mit dem BizTalk-Adapter für mySAP Business Suite.