次の方法で共有


SAP のプロバイダーによって使用されるカスタム RFC

DATA Provider for SAP には、SAP システムで操作を実行するために内部的に使用される次のカスタム RFC が用意されています。

  • RFC をZ_EXTRACT_DATA_OOします。 データ抽出 RFC Z_EXTRACT_DATA_OOは、SAP R/3 システムのテーブルまたはビューからデータを抽出し、データを変換して、SQL Server テーブル内のデータを同期的に返すか、データをフラット ファイルにダンプします。 Z_EXTRACT_DATA_OOは、WHERE 句で SELECT 操作を実行するために使用されます。 この RFC のパフォーマンスは、SAP システム ハードウェアによって異なります。

    RFC の .NET と SAP のデータ型のマッピング方法については、「カスタム RFC の データ型マッピングZ_EXTRACT_DATA_OO参照してください。

  • RFC をZ_EXECUTE_SAP_QUERYします。 この RFC は、SAP システムで既に定義されているクエリを実行するために、データ プロバイダー for SAP によって使用されます。 この RFC は、SAP RFC RSAQ_REMOTE_QUERY_CALLを内部的に実行します。 SAP クエリは、テーブル、列、入力パラメーター、結果セットの並べ替え順序などを選択して、SAP GUI を使用してグラフィカルに作成されるクエリです。DATA Provider for SAP を使用すると、ADO.NET クライアントからこのような SAP クエリを実行できるようになりました。

    EXECQUERY 操作によって返されるすべての値は、文字列型です。

  • Z_EXTRACT_DATA_OO RFC では、次の条件を満たすテーブルからのデータの読み取りがサポートされています。

    • テーブルの TabClass は TRANSP、CUSTER、または POOL です。

    • TabClass は VIEW で、ViewClass は D または P です。

  • Z_EXTRACT_DATA_OOでは、PCL1、PCL2、PCL3、PCL4、PCL5 などの HR クラスター テーブルはサポートされていません。

  • Z_EXTRACT_DATA_OOによって抽出できる行の数は、SAP サーバー上のハードウェア リソースによって異なります。

  • 抽出されたすべてのデータは、主キーの順序で返されます。

  • 可変長データ型 STRING、SSTRING、および RAWSTRING を含むテーブルまたはビューはサポートされていません。 これらのデータ型を含むテーブルまたはビューは抽出できません。

  • Z_EXTRACT_DATA_OOは、変換終了が割り当てられているすべてのフィールドで変換終了を実行します。 結果として得られる変換された値は、SELECT ステートメントの WHERE 句に入力する必要があります。 変換後の値も返されます。 これにより、Z_EXTRACT_DATA_OOによって返される結果と SAP データ ブラウザー (SE16) で返される結果の間に不整合が発生する可能性があります。

  • 選択したテーブルに、ABAP の予約名であるフィールド名 (CONNECTION など) を含めることはできません。

  • SAP R/3 バージョン 4.6C のクエリ プロセッサの制限により、INT4 型の整数フィールドの値は WHERE 句の -999999999 以上である必要があります。 INT4 値が -999999999 未満の行は、値を含むフィールドが選択されているかどうかに関係なく抽出されません。

  • WHERE 句内のすべてのデータ型の値は、SAP システム バージョン 4.7 以降で実行する場合、256 文字に制限されます。制限は、バージョン 4.6c では 70 文字です。 RAW データ型の値の場合、これらの制限はそれぞれ 128 文字と 35 文字に半分になります。 結果として返される RAW データ型と LCHR データ型の長さに制限はありません。

  • SAP R/3 バージョン 4.6C では、WHERE 句のフィールドは 70 文字に制限されています。

  • SAP R/3 バージョン 4.6C では、出力長が 70 文字を超える主キー フィールドを持つテーブルは抽出できません。

  • SAP R/3 バージョン 4.6c では、可変長データ型 (VARC) を含むテーブルとビューはサポートされていません。また、これらのデータ型を含むテーブルとビューは、Z_EXTRACT_DATA_OO関数呼び出しを使用してデータ ソースから抽出することはできません。

  • ファイル モードでは、Z_EXTRACT_DATA_OO関数呼び出しでは、宛先ファイルが既に開かれているかどうか (それ自体または別のアプリケーションによって) がチェックされません。 したがって、関数は、同じファイルにデータを同時に追加しながら、開いているファイルに誤って書き込むことができます。 エラーは発生しません。

  • ファイル モードでは、Z_EXTRACT_DATA_OO関数呼び出しによって既存のファイルが上書きされる可能性があります。 Z_EXTRACT_DATA_OOを使用する SAP ユーザーが、S_DATASETを使用してファイル システム へのアクセスが制限されていることを確認します。

カスタム RFC のセキュリティに関する考慮事項

  • Security Issue: フラット ファイルに書き込まれたデータを公開する可能性があります。これらのファイルの保護に役立たない場合があります。

    Best practice: フラット ファイル モードでZ_EXTRACT_DATA_OO関数呼び出しによってデータが書き込まれるファイル共有のセキュリティを向上させます。

  • Security Issue: ファイル モードで Z_EXTRACT_DATA_OO 関数呼び出しを使用して に書き込まれた共有上のファイルを上書きする可能性があります。 これは、SAP ドメイン アカウントがアクセスできる任意の共有上の任意のファイルに対して発生する可能性があります。

    Best practice: SAP ドメイン アカウントがアクセスできるすべての共有を保護するよう努めます。

  • Security Issue: ユーザーは、ターゲットが別の物理マシン上にある場合に、SAP アプリケーション サーバーからターゲット ファイル共有への転送中にデータを検査 (または "スニッフィング" する) 機能を持ちます。

    Best practice: IPsec またはその他の適切な方法を使用して、SAP サーバーとそのターゲット間の通信のセキュリティを強化します。

参照

.NET Framework Data Provider for mySAP Business Suite について