C ODI SAPアダプタのコンポーネント、互換性およびアップグレード
この付録の内容は次のとおりです。
C.1 コンポーネント
ODI SAP ABAPアダプタは3つのコンポーネントで構成されています。
-
ODI SAP LKMおよびODI SAP RKM
-
ODI SAP OpenTool (
odi-sap.jar
) -
ODI SAPコンポーネント
KMはSAP JCoまたはODI SAP OpenTool (内部的にSAP JCoが使用されます)を介してSAPシステムに接続します。KMは直接的または間接的にSAPシステムに接続し、ODI SAPコンポーネントの一部として配布されたRFCを呼び出します。
ノート:
次の事項に注意してください。
-
KMはODIソフトウェアまたはパッチとともに出荷され、ODIリポジトリの中心にインストールされます。
-
ODI SAP OpenTool (
odi-sap.jar
)は、各ローカルODIソフトウェア・インストール環境の一部です。これは、ODI Studioのインストール環境およびODIエージェントのインストール環境に適用されます。OpenToolはODIソフトウェアの一部です。 -
ODI SAPコンポーネントは、ODIが接続するすべてのSAPシステムにインストールする必要があります。このインストールは、ODI SAPアダプタのインストールの一部として行われます。
C.2 互換性
互換性に関するいくつかの規則を次に示します。
-
新しいKMでは新しいOpenToolバージョンが必要となることがあります。必要な最低限のOpenToolバージョンは、KMの説明に記載されています。OpenToolのバージョンは、
java -jar odi-sap.jar
を使用してodi-sap.jar
を実行することによって確認できます。 -
新しいKMでは新しいODI SAPコンポーネントが必要となることがあります。アップデートの必要性については、それぞれのリリースまたはパッチのノートに記述されています。
-
ODI OpenToolsには後方互換性があります。OpenToolは、既存のODIマッピングまたはODIシナリオに影響を与えることなく、新しいバージョンにアップグレードできます。
-
既存のODIシナリオは、新しいODI SAPコンポーネント・バージョンおよび新しいOpenToolバージョンとともに動作します。
C.3 ODI SAPアダプタのアップグレード
ノート:
アップグレード・ステップの主な情報源は、製品またはパッチのリリース・ノートです。次に示すステップだけではなく、他のステップが必要となることがあります。
疑問がある場合は、Oracle製品サポートに連絡してください。
特に示されていない場合、新しいODI SAP Adapterバージョンへのアップグレードは次のステップで構成されています。
-
OpenToolのアップグレード
OpenToolはODIソフトウェアまたはパッチの一部として出荷されるため、手動でアップグレードする必要はありません。必要な場合は、
odi-sap.jar
を置き換えることによって、OpenToolをアップグレードします。 -
ODI SAPコンポーネントのアップグレード
ODI SAPコンポーネントのアップグレードについては、ODI SAPコンポーネントの更新で説明します。
-
KMのアップグレード
SAPアダプタのアップデートがODIのアップデートの一部として行われた場合、「KMを必須更新で置換」が選択されていると、Upgrade AssistantによってKMがすでに置き換えられていることがあります。選択されていない場合、リポジトリでKMを手動でアップデートする方法は2つあります。要件に基づいて選択してください。両方の方法は組み合せることができます。たとえば、いくつかのマッピングを方法1で開始し、テストが成功した場合、方法2を適用できます。
ノート:
どのKMアップデート方法を使用する場合も、すべてのマッピングをテストすることをお薦めします。
C.3.1 方法1: 新しいKMとして追加
このアップデート・パスでは、既存のKMは変更されずにそのまま残り、更新されたKMが新しいKMとしてインポートされます。すべての既存のマッピングおよび既存のODIシナリオは変更されません。このアプローチでは、ステップごとに新しいKMにアップデートできますが、新しいKMを使用するにはすべてのマッピング/モデルをアップデートする必要があります。
-
複製モードですべての新しいKMファイルをプロジェクト内またはグローバルKM (使用しているほう)にインポートします。これにより、新しいKMオブジェクト情報が作成されます。
-
各KMの名前を
Copy of <KM Name>
から<KM Name>
に変更します。たとえば、Copy of LKM SAP ERP to SQL
からLKM SAP ERP to SQL v38
に変更します。 -
すべてのマッピング/モデル(アップデートされたKMを使用する)でL/RKMをv38に切り替えます。たとえば、
LKM SAP ERP to SQL
からLKM SAP ERP to SQL v38
に切り替えます。
ノート:
既存のODIシナリオは再生成されるまで変更されません。
C.3.2 既存のKMの置換え
このアップデート・パスでは、リポジトリ内のアクティブなKMが新しいバージョンに置き換えられます。古いKMを使用しているマッピングまたはモデルは、アップデートされたKMをすぐに使用するようになります。既存のODIシナリオは再生成されるまで変更されません。
すべてのKMで繰り返すステップ:
-
既存のKMのバックアップを取得します。たとえば、KMを右クリックして「エクスポート」をクリックします。
-
KMを右クリックして、「置換のインポート...」を選択して対応する新しいKMファイルを選択し、「OK」をクリックします。
-
マッピングまたはモデルを変更する必要はありません。
ノート:
既存のODIシナリオは再生成されるまで変更されません。
C.4 ODI 11gからODI 12cへのアップグレード
ODI 12cでは、リポジトリ・オブジェクトを識別するGUID (ODI 11gでは内部ID)とマッピング(ODI 11gのインタフェースにはなかった)が導入されています。GUIDを導入したため、12cリポジトリがレガシー・モードである場合を除いて、内部IDを使用したodiRef APIコールは失敗します。11g ODI SAPのシナリオは、内部IDを使用しているため、12cレガシー・リポジトリ・モードでしか動作しません。GUIDへの移行に伴って、デフォルトのABAP_PROGRAM_NAME
がアップグレード中に変わります。このデフォルトのABAP_PROGRAM_NAME
は、開発中の便宜のためにのみ用意されています。詳細は、「ODI SAPのトランスポート・リクエストの管理」を参照してください。
ノート:
明示的に設定されるABAP_PROGRAM_NAME
KMオプションは変わりません。
11gのインタフェースから12cのマッピングへの移行に伴って、アップグレード中に、11gインタェースは新しい12cマッピング・オブジェクトに変換されます。つまり、新しいマッピングでもデータ変換はまったく同じですが、12cではセマンティクスが新しくなるため、同じSAP KMバージョンを使用する場合でも異なるABAPコードが生成されるということです。
アップグレード・パス
アップグレード・パスでは、まず既存のODI SAPシナリオがすべてODI 11gで実行されます(フェーズ1)。その次のステップバイステップの移行で、ODI SAPシナリオを再生成/再デプロイしてから、これらのシナリオの実行がODI 11gからODI 12cに切り替わります(フェーズ2)。アップグレード・パスは、汎用のODIアップグレードの推奨事項に合致しています。
このアップグレード・パスには、次のような利点があります。
-
フェーズ1でABAPの再デプロイが不要
-
フェーズ1でODIシナリオの再生成が不要
-
フェーズ2でアップグレードされるマッピングには、SAP KM (最新フィックス/機能)を使用
ご不便をおかけするのは、ODI 11gとODI 12c (リポジトリとエージェントがまったく別)を並行して使用する点のみです。
フェーズ1: ODI 11gを使用
フェーズ1では、既存のODI 11gリポジトリと実行環境を保持し、並行して新しいODI 12c環境を設定します。このフェーズは次のステップで構成されます。
-
標準のODIアップグレード手順に続いて、すべてデフォルトのオプション(KMを置換え)を使用してODI 11gからODI 12cにアップグレードします。
-
ODI 11g環境を保持します。ODI 11g環境は使用し続けるので、インプレース・アップグレードは実行しないでください。
-
ODI SAPジョブの実行については、引き続きODI 11gを使用します。
フェーズ2: 12cへの移行
最終的には、すべてのODI SAPインタフェースシナリオを再生成し、再デプロイする必要があります。ODI 12cを使用してインタフェース/マッピング/シナリオを再デプロイして以降は、ジョブがODI 12cで実行されるため、11gのインタフェース/マッピング/シナリオの実行は無効にする(たとえば、11gのスケジューラを無効にする)必要があります。フェーズ2は、次のステップで構成されています。
-
ODI SAPコンポーネントのアップグレード手順に従います。詳細は、「ODI SAPコンポーネントの更新」を参照してください。このステップを実行する必要があるのは、アップグレードする最初のSAPインタフェースのみです。
-
ODI SAPマッピング/シナリオを再生成します。
-
ABAP_UPLOAD = true
を使用して、再生成したSAP ABAPコードを再デプロイします。詳細は、「本番環境でのABAPのアップロードおよびABAPコードの制御」を参照してください。 -
標準の手順に従って、ODIシナリオを本番環境にデプロイします。SAP固有の詳細は、「開発から本番へのODIおよびSAPコンポーネントの移行」を参照してください。
-
ODI 11g環境の実行を無効にし、ODI 12c環境からの実行を有効にします(スケジューラを更新するなど)。
ODI SAPマッピング/シナリオがすべて移行されたら、ODI 11g環境をオフにできます。