[IDMC]SAPからデータを取得する(SAP ODP Extractorコネクタ)

## はじめに
Informatica Intelligent Data Management Cloud(IDMC/旧称IICS)でのちょっとしたTipsを纏めていきます。日々の活動の中で検証した結果記録であり、忘れやすい自分のためのメモですが、少しでも皆様のお役に立てればと思い公開していきます。記述方法など試行錯誤しており随時更新するかもしれません。

## この記事のゴール：IDMC データ統合における SAP への接続と連携が作成出来るようになる
この記事ではSAP(S4HANA)への接続設定とマッピング作成時の設定において、マニュアルだけでは判りづらい所をメモしています。

尚この記事の内容は、R47 で検証しています。

:::note info
SAPアカウントが有り、SAP側に接続する為の情報が入手出来る前提とさせて頂いています。
:::

### 参照情報
マニュアル：
Data Integreation Connectors:[SAP ODP Extractor Connector](https://docs.informatica.com/integration-cloud/data-integration-connectors/current-version/sap-odp-extractor-connector/preface.html)

### SAP ODP Extractor 接続設定のための事前準備
”SAP ODP Extractor”コネクタを設定する場合など、SAPへの接続を実施する場合には事前準備としてSAP側から必要なdll/jarを入手してSecureAgent上に配置する必要があります。その点分かりづらいことがありますので以下に記載してみました。

##### 1)[SAP側での作業] 以下のSAP NotesがSAPサーバーで使用可能であることを確認します。
•1931427 - ODP Data Replication API 2.0
•2232584 - ODPレプリケーション用のSAPエクストラクタのリリース（ODP SAPI）
もし適用されていない場合はSAP管理者に連絡し適用してもらってください。

##### 2)[SAP側での作業] 以下のSAPライブラリファイルを[SAPサポートポータル](https://support.sap.com/en/index.html)からダウンロードします。
SecureAgentが稼働するOSに応じて64ビットのSAP JCoライブラリの最新のバージョンをダウンロード下さい。

|オペレーティングシステム |SAP JCoライブラリ |
|---|---|
|Windows | sapjco3.jar および sapjco3.dll |
|Linux | sapjco3.jar および libsapjco3.so |


##### 3)[IDMC側での作業]SecureAgentの以下のディレクトリにダウンロードしたファイル2種を配置します。

```
<Informatica Secure Agent installation directory>\apps\Data_Integration_Server\ext\deploy_to_main\bin\rdtm-extra\tpl\sap
```
存在しない場合は、以下の部分 ”deploy_to_main\bin\rdtm-extra\tpl\sap” のディレクトリを順次作成ください。

その後、ダウンロードした2つのファイルを配置します。自分の環境では以下のようになりました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985453/c427dc21-815f-d1fd-ce7f-d1f6fd31ab1a.png)

##### 4)[IDMC側での作業]SecureAgentに以下の設定(JAVA_LIBS)を行います

［Administrator］ > ［ランタイム環境］に遷移し、設定を行うSecureAgentのリンクをクリック。
［Secure Agentの編集］をクリックし、［サービス］リストから、［Data Integration Server］を選択します。
［タイプ］リストから、［Tomcat JRE］を選択します。
Secure Agentが実行されるオペレーティングシステムに基づいてJAVA_LIBS値を入力します。
|オペレーティングシステム |JAVA_LIBSの値 |
|---|---|
|Windows | ..\bin\rdtm-extra\tpl\sap\sapjco3.jar;..\bin\rdtm\javalib\sap\sap-adapter-common.jar |
|Linux | ../bin/rdtm-extra/tpl/sap/sapjco3.jar:../bin/rdtm/javalib/sap/sap-adapter-common.jar |

:::note warn
テーブルから値を直接コピーすると、値のハイフン（-）が誤ってコピーされることがあります。値をテキストエディタにコピーし、コピーした値が破損していないことを確認下さい。
:::

設定例：
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985453/439b8054-e91c-42ba-9581-6605764668c2.png)


##### 5)[IDMC側での作業]SecureAgentに以下の設定(JVMClassPath)を行います
［Administrator］ > ［ランタイム環境］に遷移し、設定を行うSecureAgentのリンクをクリック。
［Secure Agentの編集］をクリックし、［サービス］リストから、［Data Integration Server］を選択します。
［タイプ］リストから、［DTM］を選択します。
Secure Agentが実行されるオペレーティングシステムに基づいてJVMClassPath値を入力します。

:::note warn
以下の例は事前に入力されている pmserversdk.jar に加えてsapjco3等を追記した例となっています。他に既に入力されている値がある場合はその値に追記する形を取ってください。
:::

|オペレーティングシステム |JVMClassPathの値 |
|---|---|
|Windows | pmserversdk.jar;..\..\bin\rdtm-extra\tpl\sap\sapjco3.jar;..\..\bin\rdtm\javalib\sap\sap-adapter-common.jar |
|Linux | pmserversdk.jar:../../bin/rdtm-extra/tpl/sap/sapjco3.jar:../../bin/rdtm/javalib/sap/sap-adapter-common.jar |

:::note warn
テーブルから値を直接コピーすると、値のハイフン（-）が誤ってコピーされることがあります。値をテキストエディタにコピーし、コピーした値が破損していないことを確認下さい。
:::

設定例：
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985453/9c738474-5509-d6ee-9c7b-4dffcb18ee87.png)

ここまで設定したら念のためSecureAgentを再起動しておくと良いです。

### SAP ODP Extractor 接続の設定

上記の事前設定を実施ておけば、あとは基本的にマニュアルの記載の通り設定することで接続は作成出来ます。
コネクタは ”SAP ODP Extractor”タイプを選択し、必要な情報を入力します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985453/df6b880d-f016-3625-f5b1-8bd4ca248a5f.png)

接続テストを行いエラーが出ずに成功する事を確認しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985453/aa586936-b6ad-4d43-6d37-f6bfb9e93f72.png)

## マッピングで確認：ソース設定でSAP Objectが確認できる

以下の通り、CDIのソース設定においてSAPのオブジェクトが参照出来ることが確認出来ました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985453/a2d046ec-7129-b850-7acb-2b0dfece71c6.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985453/5460e5c5-b6d4-9b71-3ede-2dee32009ff5.png)

プレビューも出来ます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985453/6fb2aead-2463-2a56-9354-1e25d268df0b.png)

これでマッピングで利用可能ですね。

以上、何かのお役に立てば幸いです。