SAP での RFC 操作のメタデータの参照、検索、取得
このセクションでは、アダプター サービス参照プラグインの追加、アダプター メタデータの追加ウィザード、またはアダプター サービス アドインの使用を使用して、RFC 操作のために SAP からメタデータを参照、検索、および取得する方法について説明します。 ほとんどの手順は、3 つのユーザー インターフェイスすべてで同じです。 該当する場合は、関連するユーザー インターフェイスに対して個別の手順が提供されます。
次のセクションで説明する手順を実行する前に、以下が必要です。
Visual Studio プロジェクトを作成しました。
アダプター サービス アドインの使用、アダプター メタデータの追加ウィザード、またはアダプター サービス参照プラグインの追加を使用して SAP システムに接続されています。 手順については、「 Visual Studio で SAP システムに接続する」を参照してください。
SAP システムでの RFC の参照
アダプター サービス アドインの使用、アダプター メタデータの追加ウィザード、または SAP アダプター サーフェスでのアダプター サービス参照プラグインの追加を使用してメタデータを参照する場合:
SAP システムで呼び出すことができる操作としての RFC。
RfcGetAttributes 操作。これにより、アダプター クライアントは RFC 接続パラメーターに関する情報を取得できます。
SAP メタデータの参照の詳細については、「 WCF LOB アダプター SDK を使用してアダプター設定をバインド プロパティとして公開する」を参照してください。
アダプター サービス アドインの使用、アダプター メタデータの追加ウィザード、またはアダプター サービス参照プラグインの追加を使用して、SAP システムの RFC を参照するには、次の手順を実行します。
SAP システムで RFC を参照するには
アダプター サービス アドインの使用、アダプター メタデータの追加ウィザード、またはアダプター サービス参照プラグインの追加を使用して、SAP サーバーに接続します。 手順については、「 Visual Studio で SAP システムに接続する 」を参照してください。
[ コントラクトの種類の選択 ] ドロップダウン リストから、アダプターを使用して受信操作と送信操作のどちらを実行するかに基づいて、コントラクトの種類を選択します。
[ カテゴリの選択 ] ボックスで、[RFC] ノードをクリックして、[ 利用可能なカテゴリと操作 ] ボックスに RFC 機能グループを表示します。 または、RFC ノードを展開して RFC 機能グループを確認することもできます。
ヒント
ツリー内の "イミディエイト" カテゴリ ノードまたはサブカテゴリ ノードに直接移動するには、[ カテゴリの選択 ] ボックスに、ツリー ビューにフォーカスがある間に成果物の名前を入力します。 たとえば、 基礎 RFC 機能グループにジャンプするには、 RFC ノードにフォーカスを置き、「」と入力
Basis
します。次の図は、RFC 機能グループの一覧を示すアダプター サービス アドインの使用を示しています。
RFC 機能グループをクリックすると、関連する RFC が表示されます。 次の図は、特定の RFC 機能グループの RFC でアダプター サービス アドインを使用する方法を示しています。
での RFC の参照
SAP システムでの RFC の検索
アダプター サービス アドインの使用、アダプター メタデータの追加ウィザード、または SAP アダプターへのアダプター サービス参照プラグインの追加を使用して、SAP システム内の RFC のメタデータを検索する場合:
検索式でワイルドカード文字をサポートします。
検索操作が実行されるノードのすぐ下で検索を有効にします。
次の表に、検索に使用できる特殊文字と、SAP アダプターによる解釈を示します。
特殊文字 | 解釈 |
---|---|
+ (プラス) | 1 文字に一致します。 たとえば、A+ は AB、AC、AD と一致します |
* (アスタリスク) | 0 個以上の文字と一致します。 たとえば、A* は A、AB、ABC と一致します。 |
アダプターでサポートされる特殊文字の詳細については、「 WCF LOB アダプター SDK を使用してアダプター設定をバインド プロパティとして公開する」を参照してください。
アダプター サービス アドインの使用、アダプター メタデータの追加ウィザード、またはアダプター サービス参照プラグインの追加を使用して、SAP システム内の RFC を検索するには、次の手順を実行します。
SAP システムで RFC を検索するには
アダプター サービス アドインの使用、アダプター メタデータの追加ウィザード、またはアダプター サービス参照プラグインの追加を使用して、SAP サーバーに接続します。 手順については、「 Visual Studio で SAP システムに接続する 」を参照してください。
[ Select contract type ]\(コントラクトの種類の選択\) ドロップダウン リストから、アダプターを使用して受信操作と送信操作のどちらを検索するかに基づいて、コントラクトの種類を選択します。
[ カテゴリの選択 ] ボックスで、検索する RFC を含む RFC 機能グループをクリックします。 検索する機能グループがわからない場合は、ルート RFC ノードをクリックします。
[ カテゴリで検索 ] テキスト ボックスに、特定の RFC を検索する検索式を入力します。 たとえば、名前に "RFC_CUST" がある RFC を検索するには、テキスト ボックスに「*RFC_CUST*」と入力します。
右矢印アイコンが表示されたボタンをクリックして、検索を開始します。 検索が完了すると、[ 利用可能なカテゴリと操作 ] ボックスに、検索条件を満たす RFC が一覧表示されます。
次の図は、RFC 検索結果の一覧を示すアダプター サービス アドインの使用を示しています。
で RFC を検索する
BizTalk プロジェクトのスキーマの生成
アダプター サービス アドインまたはアダプター メタデータの追加ウィザードを使用して、選択した SAP 成果物のスキーマを生成できます。 呼び出す成果物を参照して検索したら、それらの成果物のスキーマを生成し、スキーマに準拠して SAP システムにメッセージを送信できます。
Note
カテゴリ ノードを選択すると、そのカテゴリのサブツリー内のすべての操作を返すことができます。たとえば、RFC 機能グループ全体を選択するか (そのグループ内のすべての RFC のスキーマを生成する場合)、特定の RFC を選択して、それらの RFC のみのスキーマを生成できます。 ノードの詳細については、「 メタデータ ノード ID」を参照してください。
RFC のメタデータを取得するには
アダプター サービス アドインの使用またはアダプター メタデータの追加ウィザードを使用して、SAP サーバーに接続します。 手順については、「 Visual Studio で SAP システムに接続する 」を参照してください。
[ コントラクトの種類の選択 ] ドロップダウン リストから、アダプターを使用して受信操作と送信操作のどちらを実行するかに基づいて、コントラクトの種類を選択します。
[ カテゴリの選択 ] ボックスで、メタデータを生成する RFC を含む RFC 機能グループをクリックします。
特定の RFC を検索することもできます。 たとえば、名前に "RFC_CUST" を含む RFC を検索するには、RFC ノードをクリックし、[ カテゴリで検索 ] テキスト ボックスに「*RFC_CUST*」と入力します。 右矢印アイコンが表示されたボタンをクリックして、検索を開始します。 [ 利用可能なカテゴリと操作 ] ボックスには、名前に "RFC_CUST" を持つすべての RFC が一覧表示されます。
[ 利用可能なカテゴリと操作 ] ボックスで、メタデータを生成する RFC を選択し、[ 追加] をクリックします。 選択した RFC が [ 追加されたカテゴリと操作 ] ボックスに一覧表示されます。
次の図は、選択した RFC を一覧表示するアダプター サービス アドインの使用を示しています。
のメタデータを取得する
複数の操作のスキーマを生成する場合は、BizTalk プロジェクトのコンパイルでエラーが発生する可能性のある、これらのスキーマの中に重複する要素定義が存在する可能性があります。 たとえば、操作 "Op1" のスキーマを生成するシナリオを考えてみましょう。 "Op1" のスキーマには、複合データ型 "CT1" のパラメーターが含まれています。 "Op1" のスキーマを生成した後、アダプター サービス アドインを使用して再度開き、別の操作 "Op2" のスキーマを生成します。 "Op2" には、複合データ型 "CT1" のパラメーターも含まれているとします。 アダプター サービス アドインの使用を終了してプロジェクトをコンパイルすると、複合データ型 "CT1" が異なる XSD ファイルで 2 回定義されているため、コンパイル エラーが発生します。 このような場合は、次のことをお勧めします。
アダプター サービス アドインの 1 回の実行ですべての操作のスキーマを生成します。 これにより、アダプター サービス アドインを使用して、複合データ型 "CT1" の定義が 1 つだけ生成されるようになります。
アダプター サービス アドインを使用するさまざまな実行で複数の操作のスキーマを生成する場合は、生成された XSD ファイルに複合データ型 "CT1" の一意の名前空間が含まれるように、[一意のスキーマの種類をチェック生成する] ボックスを選択してください。
[OK] をクリックします。 スキーマ ファイルは、BizTalk プロジェクトと同じ場所に拡張子 .xsd と共に保存されます。
Note
アダプター サービス アドインを使用している場合、既定では、ファイルは名前付け規則 "SAPBinding<n.xsd>" で作成されます。ここで、'n' は作成されたスキーマ ファイルの数に応じて 1、2 などになります。 または、[ ファイル名プレフィックス ] テキスト ボックスに名前を入力して、スキーマ ファイルにカスタム名を指定することもできます。 アダプター サービスアドインを使用すると、名前付け規則 <のファイル名プレフィックス><n.xsd> を使用してスキーマ ファイルが作成されるようになりました。
Note
また、アダプター サービス アドインを使用すると、操作のスキーマの生成時に指定したバインド プロパティと、操作を呼び出す SOAP アクションを含むバインド ファイル (XML ファイル) も作成されます。 このバインド ファイルをBizTalk Server管理コンソールにインポートして、接続 URI、バインド プロパティ、SOAP アクション セットを含む WCF-Custom ポートを作成できます。 詳細については、「 SAP へのポート バインド ファイルを使用して物理ポート バインドを構成する」を参照してください。
[ファイル] メニューの [すべてを保存] をクリックします。
アダプター サービス参照の追加プラグインを使用した RFC 操作用の WCF クライアントの生成
アダプター サービス参照の追加プラグインを使用して、RFC を SAP システムに送信する WCF クライアント コード、または SAP システムから RFC (RFC サーバー) を受信する WCF サービス コントラクトとコードを生成できます。
RFC 用の WCF クライアントまたは WCF サービス コントラクトを生成するには
[アダプター サービス参照プラグインの追加] の [コントラクトの 種類の選択 ] ドロップダウン リストから、受信 (RFC サーバー) 操作と送信操作のどちらを実行するかに基づいてコントラクトの種類を選択します。
[ カテゴリの選択 ] ボックスで[ RFC ] ノードを展開し、WCF クライアントまたは WCF サービス コントラクトを生成する RFC を含む RFC 機能グループをクリックします。
RFC を検索することもできます。 たとえば、名前に "RFC_CUST" を含む RFC を検索するには、 RFC ノードをクリックし、[ カテゴリで検索 ] テキスト ボックスに「*RFC_CUST*」と入力します。 右矢印アイコンが表示されたボタンをクリックして、検索を開始します。 [ 利用可能なカテゴリと操作 ] ボックスには、名前に "RFC_CUST" を持つすべての RFC が一覧表示されます。
[ 利用可能なカテゴリと操作 ] ボックスで、WCF クライアント (または WCF サービス コントラクト) を生成する操作またはカテゴリ (RFC 機能グループ) を選択し、[ 追加] をクリックします。 選択した操作が [追加された カテゴリと操作 ] ボックスに一覧表示されます。 [ 利用可能なカテゴリと操作 ] ボックスに一覧表示されている任意のノードを選択できます。 カテゴリ ノードを選択すると、そのノードとそのサブノードで使用できるすべての操作が追加されます。
ほとんどのシナリオでは、既定のシリアル化オプションで十分です。ただし、必要に応じて、生成されるコードと使用されるシリアライザーの種類に関するいくつかの側面を制御できます。 これらのオプションを設定するには:
[ 詳細オプション] を クリックして、[ 詳細オプション] ボックスを 開きます。
[ 詳細オプション] ボックスの [ 生成されたプロキシのオプションの選択] で、目的のオプションを選択します。 たとえば、WCF クライアントに対して非同期メソッドを生成するか、構成ファイルの生成を無効にするかを選択できます。
[ シリアライザー ] で、使用するシリアライザーを選択します。
次の図は、既定の選択項目を含む [詳細オプション] ボックスを示しています (シリアライザーでは [自動 ] が選択されており、その他のオプションは選択されていません)。
[ 詳細オプション] ボックスで構成できるオプションは、ServiceModel メタデータ ユーティリティ ツール (svcutil.exe) を使用するときに使用できるオプションの一部と同じです。 これらのオプションの詳細については、「 ServiceModel メタデータ ユーティリティ ツール (Svcutil.exe)」を参照してください。
[OK] をクリックします。 アダプター サービス参照の追加プラグインは、プロジェクト ディレクトリで選択した操作とカテゴリの WCF クライアント クラス (または WCF サービス インターフェイス) とヘルパー コードを保存します。 既定では、構成ファイルも保存されます。 受信操作と送信操作では、若干異なるファイルが生成されます。詳細については、「 SAP ソリューション成果物の WCF クライアントまたは WCF サービス コントラクトを生成する」を参照してください。