RFC宛先タイプの概要。
RFCコールのターゲットシステムに関する情報は、RFC宛先に保存されます。RFC宛先には4つの異なるタイプがあります。
- 静的な宛先
- 動的な宛先
- 事前定義された宛先
静的な宛先
通常、AS ABAPでトランザクションSM59を使用して、宛先の特性を静的な方法で定義します。トランザクションSM59で管理される各宛先には、RFCでDESTINATIONを追加した後に指定されたときにそれを識別する一意の名前があります。
動的な宛先
ただし、トランザクションSM59での静的宛先の定義が不十分な場合があります。このような場合、動的宛先で対応する宛先特性を指定できます。この目的のためにクラスCL_DYNAMIC_DESTINATIONを使用できます。そのメソッドCREATE_RFC_DESTINATIONは、RFCのDESTINATION追加後に現在の内部セッションで指定できる対応する入力パラメータからテキストフィールドを生成し、RFCランタイム環境によって解釈されます。既存のSM59宛先をテンプレートとして使用し、それに応じて変更することもできます。生成された宛先の有効性は、最初の使用時にのみチェックされます。
動的な宛先は%%で始まります。このような動的な宛先は、クラスCL_DYNAMIC_DESTINATIONのみを使用して生成し、外部からプログラムに挿入しないでください。クラスの他のメソッドを使用すると、次のことができます。
-
現在のセッション用に生成された動的宛先を無効にする
-
外部から挿入された宛先が動的宛先であるかどうかを確認します
-
必要に応じて外部から挿入された動的宛先を無効にする
事前定義された宛先
トランザクションSM59を使用して管理する必要のない事前定義された宛先には、次の2つのタイプがあります。
-
宛先なし:RFCインタフェースを使用して、独自のコンテキストおよび個別のユーザセッションで、汎用モジュールを呼び出し元プログラムと同じアプリケーションサーバで開始します。この宛先は、すべての実行モードで使用できます。
- Destination SELF:NONEのように、この宛先タイプは呼び出し側プログラムと同じアプリケーションサーバーを指します。ただし、高速シリアル化を使用します。特別なオプション( 「通信プロトコルの選択」セクション)も参照してください。
- 宛先BACK:この宛先は、リモートで呼び出され、呼び出し元にリンクする汎用モジュールで使用することができます。これは、同期的に呼び出された汎用モジュールでのみ指定することができます。宛先BACKを使用して、3つの実行タイプすべてで呼び出し側システムの各リモート対応汎用モジュールを呼び出すことができます。同期コールバックでは、関連する関連する関数グループが、呼び出し元のプログラムの内部セッションにまだ存在しない場合は、その内部セッションにロードされます。このコールバックには、既存のRFC接続が使用されます。