次の方法で共有


SAP システム接続 URI を作成する

Microsoft BizTalk Adapter for mySAP Business Suite 接続 URI には、アダプターが SAP システムへの接続を確立するために使用するプロパティが含まれています。

Von Bedeutung

既定では、SAP クライアント ライブラリ (librfc32u.dll) では、SAP システムへの最大 100 の接続がサポートされます。 この接続数を超えると、例外がスローされます。 このため、 MAXConnectionsPerSystem バインディング プロパティを設定して、SAP アダプターが SAP システムで開こうとする接続の数を制限する必要があります。またはCPIC_MAX_CONV環境変数を設定して、SAP クライアント ライブラリでサポートされる接続の数を増やします。 CPIC_MAX_CONVを変更した場合は、コンピューターを再起動して変更を有効にする必要があります。 SAP アダプターのバインド プロパティの詳細については、「 BizTalk Adapter for mySAP Business Suite のバインド プロパティの読み取り」を参照してください。

このトピックでは、SAP 接続 URI に関する情報を提供し、さまざまなプログラミング シナリオで接続 URI を指定する方法を説明する他のトピックへのリンクも提供します。

SAP アダプターの接続 URI

一般的な WCF エンドポイント アドレス URI は、次のように表されます。

scheme://userinfoparams@hostinfoparams?query_string  

エンドポイント アドレス URI には、次のコンポーネントが含まれています。

  • scheme はスキーム名です。

  • userinfoparams は、エンドポイントによるユーザー認証に必要なパラメーターの名前と値のコレクションです。

  • hostinfoparams は、ホストへの接続を確立するために必要な情報です。たとえば、パスです。

  • query_stringは、疑問符 (?) で区切られたパラメーターの省略可能な名前と値のコレクションです。

    SAP アダプターが SAP システムに使用するエンドポイント アドレス URI は、SAP 接続 URI を使用して指定されます。 SAP アダプターは、次のようにこの接続 URI を実装します。

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]  

接続 URI のコンポーネントについては、次のセクションで説明します。

SAP 接続 URI スキーム

SAP 接続 URI のスキームは "sap" です。

SAP 接続 URI のユーザー情報

SAP 接続 URI のユーザー情報 (userinfoparams) は、ユーザー認証、クライアント識別、および言語仕様に必要なパラメーターの名前と値のコレクションとして表されます。 次の表で、これらのパラメーターについて説明します。

プロパティ 説明
ユーザー SAP システム上のユーザー名。この値では大文字と小文字が区別されます。 接続 URI でユーザー名とパスワードを指定するには、 AcceptCredentialsInUri バインド プロパティを true に設定する必要があります。 注: SAP アダプターは、SAP システムで接続を開く際に、ユーザー名として入力した値の文字の大小をそのまま保持します。
パスワード SAP システム上のユーザーのパスワード。この値では大文字と小文字が区別されます。 接続 URI でユーザー名とパスワードを指定するには、 AcceptCredentialsInUri バインド プロパティを true に設定する必要があります。 手記: SAP アダプターは、SAP システムで接続を開いたときにパスワードに入力した値の大文字と小文字を保持します。
顧客 SAP システム クライアント ID。
言語 言語。
UseSnc SAP Secure Network Communications (SNC) が有効かどうかを指定する省略可能なパラメーター。 値には True または False を指定できます。True の場合、SNC が有効になります。 既定値は False です

SNC を有効にする場合は、 SncPartnerName および SncLibrary バインド プロパティも設定する必要があります。 詳細については、「 BizTalk Adapter for mySAP Business Suite のバインド プロパティの読み取り」を参照してください。

SNC が有効で、接続 URI に資格情報が含まれている場合、アダプターは例外をスローします。 手記: UseSnc 接続パラメーターは、接続の種類 A と B にのみ適用されます。接続の種類とその重要性については、このトピックの後半で詳しく説明します。

SAP 接続 URI でクライアントと言語を指定する必要があります。

SAP アダプターは AcceptCredentialsinUri バインド プロパティを表示するので、接続 URI で SAP システム資格情報を指定できるかどうかを制御できます。 これは、資格情報が接続 URI でプレーン テキストとして表され、これが固有のセキュリティ リスクを伴うためです。 既定では、 AcceptCredentialsInUri バインド プロパティは false であり、接続 URI に資格情報が指定されている場合、アダプターは例外をスローします。

接続 URI で資格情報を指定する必要があるシナリオがいくつかあります。たとえば、WCF サービス モデルまたは WCF チャネル モデルを使用するときに SAP システムから受信操作を受け取ります。 これらのシナリオでは、 AcceptCredentialsInUri プロパティを true に設定できます。 ただし、接続 URI で資格情報を直接指定しないようにすることをお勧めします。 SAP 接続の資格情報をより安全に提供する方法の詳細については、「SAP アプリケーションのセキュリティ保護」を参照してください

Von Bedeutung

UseSnc パラメーターを true に設定して Secure Network Communications (SNC) を有効にすると、アダプターは例外をスローします。

SAP 接続 URI のホスト情報

SAP ホスト情報 (hostinfoparams) は、SAP 接続 URI の次の要素によって表されます: connectiontype/conndetail1/conndetail2。 これらのパラメーターは、SAP システムへのクライアント接続に関する詳細を指定します。 SAP クライアント接続に関する追加の詳細、および SAP RFC 宛先へのリスナーとしての接続を確立する詳細は、query_stringで指定できます。 SAP アダプターは、SAP 接続 URI で次のクライアント接続の種類をサポートしています。

  • A: 接続 URI が、SAP アダプターが SAP に接続するアプリケーション サーバーを指定する、アプリケーション ホスト ベースの接続。

  • B: SAP アダプターが SAP に接続するメッセージ サーバーを接続 URI で指定する負荷分散接続。

  • D: 接続 URI が、SAP の接続パラメーターを含む saprfc.ini ファイル内の宛先を指定する宛先ベースの接続。

    次の表では、SAP 接続 URI でこれらの接続を指定する方法について説明します。

接続タイプ Conndetail1 Conndetail2 説明
ある ASHOST (アプリケーション サーバー ホスト) SYSNR (SAP システム番号) アプリケーションホストベースの接続を指定します。 アプリケーション ホストベースの接続の場合、オプションのゲートウェイ ホストとゲートウェイ サービスをquery_stringで指定できます。
B MSHOST (メッセージ サーバー ホスト) R3NAME (SAP R3 名称) メッセージ サーバー経由の負荷分散接続を指定します。 負荷分散接続の場合、オプションのサーバー グループとメッセージ サービスをquery_stringで指定できます。
D DEST (saprfc.ini ファイル内の接続パラメーターを含む宛先) -- 宛先ベースの接続を指定します。 SAP 接続パラメーターは、saprfc.ini ファイル内の指定された宛先に含まれています。 変換先で指定できるのは、A 型接続と B 型接続のみです。

saprfc.ini ファイルで接続値を指定する場合は、ファイルにアクセスする .exe と同じフォルダー、または SAP システムの必要に応じて標準の場所にファイルが配置されていることを確認します。 詳細については、SAP ドキュメントを参照してください。

SAP 接続 URI のクエリ情報

SAP 接続 URI のクエリ情報 (query_string) には、次を指定するために含めることができる省略可能なパラメーターが含まれています。

  • アプリケーションのホストベース接続 (A) に関する追加の詳細。

  • 負荷分散接続に関する追加の詳細 (B)

  • SAP システムが RFC、TRFC、IDoc を SAP アダプターに送信できる SAP システム上の RFC 宛先を指定するリスナーの詳細。

  • SAP Secure Network Communications (SNC) を有効にするかどうか。

  • デバッグ構成を指定する詳細。

    クエリ パラメーターは省略可能です。ただし、SAP アダプターが RFC サーバーとして機能するためには、リスナーの詳細を指定する必要があります。

    次の表では、クエリ パラメーターについて説明し、有効な SAP 接続の種類を示します。

価値 有効な接続の種類 説明
GwHost ある アプリケーション ホスト ベースの接続で、オプションのゲートウェイ ホストの名前を指定します。
GwServ ある アプリケーション ホスト ベースの接続でオプションのゲートウェイ サービスの名前を指定します。
MsServ B 負荷分散接続のオプションのメッセージ サービスの名前を指定します。
グループ B 負荷分散接続内のアプリケーション サーバーの省略可能なグループを指定します。
ListenerDest (R) rfc サーバー接続の saprfc.ini ファイル内のオプションの宛先を指定します。 宛先は、R タイプの接続を指定する必要があります。
ListenerGwHost (R) rfc サーバー接続のゲートウェイ ホストを指定します。 このパラメーターは省略可能です。ただし、rfc サーバー接続が必要で、LISTENERDEST が指定されていない場合、または saprfc.ini ファイル内の宛先でゲートウェイ ホストが指定されていない場合は、LISTENERGWHOST に有効なゲートウェイ ホストが含まれている必要があります。
ListenerGwServ (R) rfc サーバー接続のゲートウェイ サービスを指定します。 このパラメーターは省略可能です。ただし、rfc サーバー接続が必要で、LISTENERDEST が指定されていない場合、または saprfc.ini ファイル内の宛先によってゲートウェイ・サービスが指定されていない場合は、LISTENERGWSERV に有効なゲートウェイ・サービスが含まれている必要があります。
リスナープログラムID (R) rfc サーバー接続のプログラム ID を指定します。 このパラメーターは省略可能です。ただし、rfc サーバー接続が必要で、LISTENERDEST が指定されていないか、saprfc.ini ファイル内の宛先でゲートウェイ サービスが指定されていない場合は、LISTENERPROGRAMID に有効なゲートウェイ サービスが含まれている必要があります。
RfcSdkTrace 全て RFC ライブラリ トレースが有効かどうかを指定する省略可能なパラメーター。 値には True または False を指定できます。True の場合、RFC ライブラリトレースが有効になります。 既定値は False です。

RfcSdkTrace パラメーターによって有効になるトレースのレベルは、環境変数RFC_TRACEによって異なります。

- RFC_TRACE存在しない場合、または 0 に設定されている場合は、トレースの最小レベルが有効になります。
- RFC_TRACEを 1 または 2 に設定すると、トレースのレベルを上げることができます。
AbapDebug 全て Visual Studio からの ABAP デバッグが有効かどうかを指定する省略可能なパラメーター。 値には True または False を指定できます。True の場合、ABAP デバッグが有効になります。 既定値は False です。 AbapDebug が True の場合、SAP GUI が開きます。
SAPROUTER 全て SAProuter がファイアウォール経由の接続に使用される場合の省略可能なパラメーター。 このパラメーターは、ホスト名とサービス名/ポート番号の形式の一覧です: /H/hostname/S/portnumber。

クエリ文字列のパラメーターは SAP パラメーターであり、それらの値は SAP によって定義されます。 これらのパラメーターの詳細については、SAP ドキュメントを参照してください。

アプリケーションホストベースの接続の接続 URI の例を次に示します。

sap://Client=800;lang=EN@A/YourSAPHOST/00  

[アダプターの構成] ダイアログ ボックスの接続 URI プロパティ

Consume Adapter Service BizTalk プロジェクト アドインまたは Add Adapter Service Reference Visual Studio プラグインを使用して SAP システムに接続する場合は、[アダプターの構成] ダイアログ ボックスの [URI プロパティ] タブから接続 URI パラメーターを設定します。 次の表に、URI プロパティ シートに URI プロパティ を表示する方法を示します。 (URI プロパティは、URI プロパティ シートに表示される順序でグループ別に一覧表示されます)。

カテゴリ URI プロパティ URI パーツ
アプリケーション サーバー アプリケーション サーバー ホスト Conndetail1 (ホスト情報接続タイプ A)
アプリケーション サーバー ゲートウェイ ホスト GwHost (クエリ文字列)
アプリケーション サーバー ゲートウェイ サービス GwServ (クエリ文字列)
アプリケーション サーバー システム番号 Conndetail2 (ホスト情報接続タイプ A)
行き先 宛先名 Conndetail1 (ホスト情報接続タイプ D)
診断 RFC トレース RfcSdkTrace (クエリ文字列)
診断 ABAP デバッグ AbapDebug (クエリ文字列)
ログイン情報 顧客 クライアント(ユーザー情報パラメータ)
ログイン情報 言語 言語 (userinfoparams)
メッセージ サーバー アプリケーション サーバー グループ名 グループ (クエリ文字列)
メッセージ サーバー メッセージ サーバー ホスト Conndetail1 (ホスト情報接続タイプ B)
メッセージ サーバー メッセージ サーバー サービス MsServ (クエリ文字列)
メッセージ サーバー R/3 システム名 Conndetail2 (ホスト情報接続タイプ B)
その他 接続タイプ 接続の種類 (ホスト情報: A、B、または D)
その他 SAP ルーター SAPROUTER (クエリ文字列)
RFC サーバー 宛先名 ListenerDest (クエリ文字列)
RFC サーバー ゲートウェイ ホスト ListenerGwHost (クエリ文字列)
RFC サーバー ゲートウェイ サービス ListenerGwServ (クエリ文字列)
RFC サーバー プログラムID ListenerProgramId (クエリ文字列)
SNC UseSnc UseSnc (ユーザー情報)

RFC サーバー接続の接続 URI を指定する方法。

SAP アダプターが RFC サーバーとして機能するエンドポイント アドレスを作成するには、SAP システムの RFC 変換先に対応する SAP プログラム ID、SAP ゲートウェイ ホスト、および SAP ゲートウェイ サービスを指定する必要があります。 SAP で RFC 変換先を設定する方法については、RFC、 RFC 変換先の作成、および SAP からの RFC の送信を参照してください。

接続 URI には、次の 2 つの方法のいずれかで、プログラム ID、ゲートウェイ ホスト、およびゲートウェイ サービスを指定できます。

  • ListenerGwHost、ListenerGwServ、ListenerProgramId クエリ パラメーターを設定する

  • R 型接続を指定する saprfc.ini ファイル内の宛先に ListenerDest クエリ パラメーターを設定します。

saprfc.ini ファイルに接続値を指定する場合は、ファイルにアクセスする .exe と同じ場所、または SAP システムの必要に応じて標準の場所にファイルが存在することを確認します。 詳細については、SAP ドキュメントを参照してください。

RFC サーバー接続の接続 URI を指定するには、次の例のように、クエリ文字列で指定された RFC 変換先を使用して通常のクライアント接続を指定します。

sap://Client=800;lang=EN@A/YourSAPHOST/00?ListenerGwHost=YourSAPHOST&ListenerGwServ=SAPGW00&ListenerProgramId=MyProgramId  

SAP アダプターは、接続 URI の userinfoparams と hostinfoparams の一部に含まれる情報を使用して SAP システムからメタデータを取得し、クエリ文字列のリスナー パラメーターによって提供される情報を使用して、SAP RFC 変換先でリスナーとして自身を登録します。

接続 URI での予約文字の使用

SAP アダプターは、パラメーター値の特殊文字を持つ接続 URI の指定をサポートしていません。 接続パラメーターの値に特殊文字が含まれている場合は、次のいずれかの操作を行ってください。

  • Add Adapter Service Reference Plug-in または Consume Adapter Service Add-in を使用して Visual Studio で URI を指定する場合は、[ URI プロパティ ] タブで as-is を指定する必要があります。つまり、エスケープ文字は使用しません。 [ URI の構成 ] フィールドで URI を直接指定し、接続パラメーターに予約文字が含まれている場合は、適切なエスケープ文字を使用して接続パラメーターを指定する必要があります。

  • BizTalk Server 管理コンソールで送受信ポートを作成するときに URI を指定していて、接続パラメーターに予約文字が含まれている場合は、適切なエスケープ文字を使用して接続パラメーターを指定する必要があります。

接続 URI を使用して SAP システムに接続する

次の場合に SAP システムへの接続を確立する方法について説明します。

こちらもご覧ください

SAP システムへの接続を作成する