SAP BW OHDの設定
SAP BW OHD連携により、SAP Data Agentを使用してSAP BW Open Hub Destination(OHD)からデータパイプラインにデータを抽出できます。
この統合では、非同期のパッケージベース抽出方法を使用して、大規模なデータセットを安全かつ効率的に処理します。
概要
SAP Data Agent BW OHDは、SAP Data Agentを使用してOpen Hub DestinationデータをSAPからWorkatoに転送します。
パイプラインの実行時には、次の処理が行われます。
- WorkatoがSAPに抽出リクエストを送信します。
- SAP Data AgentはOpen Hub Destinationからデータを収集し、一時パッケージに保存します。
- Workatoがパッケージを順次取得します。
- SAP Data Agentが完了後に一時データを削除します。
トランザクションコードSLG1を使用してSAPでログを監視できます。
SAP Data Agentは抽出リクエストを非同期で処理します。 大規模なデータセットを効率的に処理するために、SAP内でデータを一時的にステージングし、制御されたパッケージでWorkatoに転送します。
サポートされているOpen Hub Destinationタイプ
SAP Data Agent BW OHDは、次の宛先タイプのOpen Hub Destinationをサポートしています:
- データベーステーブル
SAP Data Agent BW OHDは、次の宛先タイプのOpen Hub Destinationをサポートしていません:
- File
- サードパーティツール
SAP Data Agentのセットアップ
データパイプラインを作成する前に、SAPアプリケーションサーバーにSAP Data Agentをインストールして設定する必要があります。
SAP Data Agentは、SAPシステムにABAP移送としてインストールされます。 /WKTO/名前空間配下でODataサービスを公開し、安全なパッケージベースのデータ抽出を可能にします。
サポートされているSAPシステム
次のSAPシステムはSAP Data Agent BW OHDをサポートしています:
| SAPシステム | データベース | NetWeaverバージョン | ABAPバージョン |
|---|---|---|---|
| SAP ECC | 任意 | 7.4 EHP7 and above | 7.4以上 |
| SAP S/4HANA | SAP HANA | 1610 and above | 7.5以上 |
| SAP BW | 任意 | 7.4 EHP7 and above | 7.4以上 |
| SAP BW/4HANA | SAP HANA | 2.0 SPS07 and above | 7.5以上 |
BW OPEN HUBライセンス
SAP ECCでは、BW Open Hubライセンスが追加ライセンスとして必要です。 SAP HANAベースのシステムでは、インストールにライセンスが含まれています。 ライセンスの対象範囲を確認するには、SAPパートナーにお問い合わせください。
SAPユーザーアカウントの作成
必要な権限を持つ専用のSAPユーザーを作成する必要があります。 SAPは次のユーザータイプをサポートしています。
- 基本認証用の通信ユーザー(タイプC)
- OAuth 2.0(Authorization Code GrantまたはClient Credentials Grant)用のシステムユーザー(タイプB)
OAuth 2.0のセットアップ方法については、SAP OData OAuth 2.0認証ガイドを参照してください。
SAP CommunicationユーザーまたはSystemユーザーのSAPユーザー名とパスワードを指定します。
接続をテストする前に、必要なSAPロールと権限オブジェクトを割り当てます。
SAP Data Agentのインストール
ABAP移送依頼をSAPシステムにインポートして、SAP Data Agentをインストールする必要があります。
移送依頼が必要
ABAP移送依頼パッケージを入手するには、Workato Account ExecutiveまたはCustomer Success Managerにお問い合わせください。
インストールにより、必要なODataサービスが有効化され、ランタイムコンポーネントが割り当てられ、/WKTO/名前空間配下での抽出が可能になります。
SAP Data Agentをインストールするには、次の手順を実行します。
Workatoから提供されたSAP移送依頼をインポートします。
必要なSAP権限とロールをユーザーに割り当てます。
/WKTO/名前空間配下のSICF(SAP Internet Communication Frameworkトランザクション)サービスを有効化します。
トランザクション/IWFND/MAINT_SERVICEでサービスのローカルエイリアスを管理します。
システムユーザーを使用する場合は、OAuth設定を構成します。
トランザクション/WKTO/CONFIGで必要なパラメーターを管理します。
- CSV区切り文字を設定するには
CSV_SEPを管理します。|(パイプ)を使用します。 区切り文字のみを入力します。 - 内部マスターテーブルでパイプラインのクリーンアップまでの日数を設定するには、
BW_MSTR_CLEANUPを保守します。 推奨値として7を使用します。 - エクスポートファイルを保存する
AL11パスを設定するには、FILEPATHを管理します。 例:D:\WORKATO\EXPORT\。
SAP Data Agentをアンインストールするには、Workatoから提供されたアンインストール用移送依頼をSAPシステムにインポートします。
BW OHD用のSAPロールの設定
SAP Data Agentに使用するSAPユーザーに、必要なロールと権限を割り当てます。
このロールは、データ抽出に必要なODataサービスへのアクセス権とファイルレベルの権限を付与します。
トランザクションコードPFCGに移動します。
ロール/WKTO/BWOHDを開くか、必要な権限オブジェクトを含むカスタムロールを作成します。
Authorizationsタブに移動し、Change Authorization Dataを選択します。
ロールに次の権限オブジェクトとフィールド値が含まれていることを確認します。
ロールに含まれる権限の概要
- S_SERVICE
/WKTO/名前空間配下のSAP Data Agent BW OHD ODataサービスへのアクセスを許可します。- S_DATASET
- SAPアプリケーションサーバー上の物理ファイルへのアクセスを制御します。
S_SERVICEオブジェクトの権限フィールド値
- プログラム、トランザクション、または関数
- SRV_NAME
- 値:
- 2EBD022B6AD68064044A4209FE6283 (/WKTO/DA_BWOH_SRV)
- 3296492449AF2A0CA265701D1572AA (/WKTO/DA_BWOH_SRV_0001)
- チェックフラグのタイプ(SRV_TYPE)
- HT
- 検索ヘルプ付きプログラム名
- /WKTO/CL_DA_BWOH_DPC_EXT======CP
S_DATASETオブジェクトの権限フィールド値
- アクティビティ
- *
- 物理ファイル名
- *
権限プロファイルを生成し、ロールを保存します。
SAP Data Agentに使用するSAPユーザーにロールを割り当てます。
SAP BWオブジェクトをOpen Hub Destinationとして公開する
パイプラインでSAP BWデータを抽出できるようにするには、事前にOpen Hub Destinationを通じてそのデータを公開する必要があります。 Open Hubを通じてデータを公開するには、次の2つのオブジェクトが必要です:
- Open Hub Destination(OHD): ターゲット(データベーステーブル)と、ソースInfoProviderからのフィールドマッピングを定義します。
- Data Transfer Process(DTP): ソースInfoProviderからOpen Hub Destinationにデータを移動し、完全ロードまたは差分ロードをサポートします。
前提条件
開始する前に、次のタスクが完了していることを確認してください:
- トランザクション
RSA1(BW Modeling)とOpen Hubオブジェクトの権限を取得します。 - ソースInfoProvider(DSO、ADSO、またはInfoCube)を有効化し、データをロードします。
Open Hub Destinationの作成
Open Hub Destinationを作成するには、次の手順を実行します:
BWシステムにログオンし、トランザクションRSA1を実行します。
Modelingツリーで、公開する予定のソースInfoProviderを含むInfoAreaに移動します。
RSA1のBW Modelingツリー
InfoAreaに新しいOpen Hub Destinationを作成します。
Open Hub Destinationの技術名と説明を入力します。 例: OHD_PUR。
公開するデータを保持しているソースInfoProvider(DSO、ADSO、またはInfoCube)、InfoObject、またはDataSourceを選択します。
Destination Typeフィールドを使用して、Database Tableを選択します。 SAPは、直接のダウンストリームSQLアクセス用に、/BIC/OHOHD_PURなどの透過テーブルを生成します。
データベーステーブル宛先タイプを使用したOpen Hub Destination定義
Open Hub Destinationを保存します。 BWはソース構造に基づいてフィールド名を提案します。
フィールドのマッピング
ソースフィールドをターゲットテーブルにマッピングするには、次の手順を実行します:
Field Definitionタブで、ソースInfoObjectとターゲットフィールド間の自動提案されたマッピングを確認します。
受信側システムの要件に応じて、データ型、長さ、またはフィールド名を調整します。
任意です。 技術的なBWフィールドなど、ターゲットシステムで不要なフィールドを除外します。
マッピングを確認したら、Open Hub Destinationを有効化します。
確認済みマッピングを含むField Definitionタブ
Data Transfer Processの作成
Data Transfer Processを作成するには、次の手順を実行します:
作成したOpen Hub Destinationを右クリックし、Create Data Transfer Processを選択します。
ExtractionタブのExtraction Modeフィールドを使用して、DTPタイプを選択します:
- Fullは、実行のたびにデータセット全体を抽出します。 このタイプは、初期ロードまたは小規模な静的データセットに使用します。
- Deltaは、前回の実行以降の新規レコードまたは変更レコードのみを抽出します。 このタイプは、定期的な増分ロードに使用します。
特定の会計年度、プラント、販売組織など、データのサブセットのみを公開する予定の場合は、Extractionタブでフィルターを設定します。
DTPを有効化します。
Data Transfer Process設定
DTPタイプと同期モード
DTPタイプによって、パイプラインを設定するときに選択する同期モードが決まります。 Full DTPにはFull syncを選択し、Delta DTPにはIncremental syncを選択します。
DTPの実行と検証
Data Transfer Processを実行して検証するには、次の手順を実行します:
初回実行ではDTPを手動で実行するか、定期ロードの場合はプロセスチェーンを通じてスケジュールします。
DTPモニターで実行を監視し、レコード数が想定どおりであることを確認します。
出力を検証し、生成されたデータベーステーブルの内容を確認します。
完了した実行を示すDTPモニター
WorkatoとSAP間のOData接続性の確立
データパイプラインを作成する前に、WorkatoとSAPシステム間の接続性を設定する必要があります。
SAP Data Agentは、Workatoが認証、抽出、およびクリーンアップ操作に使用するODataサービスを公開します。
オンプレミスSAPシステムへの接続
SAPシステムがODataサービスをパブリックインターネットに公開していない場合は、Workatoオンプレミスエージェント(OPA)をデプロイします。
オンプレミスエージェントは、ネットワークからWorkatoへの安全なアウトバウンドコネクションを確立し、内部SAP ODataサービスへのアクセスを可能にします。
オンプレミスSAPシステムに接続するには、次の手順を実行します。
Workatoオンプレミスエージェントをワークスペースにインストールして登録します。
SAPシステムが/WKTO/名前空間配下で必要なODataサービスを公開していることを確認します。
オンプレミスエージェントホストとSAPアプリケーションサーバー間のネットワーク接続性を確認します。
オンプレミスエージェントなしで接続
Workatoからのインバウンドトラフィックを許可するには、SAP HTTPSポートでWorkato IPアドレスをホワイトリストに登録します。 HTTPSポートは、トランザクションSMICMまたはSAP Web Dispatcherで確認できます。
SAP ODataサービスエンドポイントがHTTPS経由で外部から引き続きアクセス可能であることを確認します。
Development Environment(オンプレミスエージェント)の設定
Development Environmentでは、接続性の問題をトラブルシューティングするために、オンプレミスエージェント設定で証明書検証を無効にできます。
OPAのconfディレクトリにあるconfig.ymlファイルを編集します。
http:
trustAll: true
verifyHost: falseHTTPプロファイル設定オプションの詳細については、オンプレミスエージェントHTTPプロファイルのドキュメントを参照してください。
この設定は非本番Environmentでのみ使用してください。
データパイプラインの作成と設定
SAP Data Agentをインストールして接続を確立したら、Open Hub Destinationからデータを抽出するデータパイプラインを作成します。
SAP ODataコネクションの作成
SAP ODataコネクションを作成するには、次の手順を実行します。
作成 > コネクションをクリックするか、Cを2回押します。
SAP ODataを検索し、アプリとして選択します。
コネクション名フィールドにコネクションの名前を入力します。
SAP ODataコネクションの作成
ロケーションドロップダウンメニューを使用して、コネクションを保存するプロジェクトを選択します。
SAP ODataコネクションを確立するには、Workatoで次のフィールドを入力します。
| フィールド | 説明 |
|---|---|
| コネクションタイプ | SAPデプロイメントに基づいてコネクションタイプを選択します。 SAPインスタンスが直接の外部コネクションを許可しないネットワーク上で実行されている場合は、On-premise(Secure Gateway経由)を選択します。 接続を試行する前に、有効なオンプレミスエージェントがあることを確認します。 SAPがODataサービスを公開している場合は、Cloudを選択します。 リクエストはWorkatoサーバーから直接送信されます。 |
| 認証タイプ | 認証方法を選択します。 サポートされている方法には、Basic、OAuth 2.0 Client Credentials、およびOAuth 2.0 Authorization Codeがあります。 SAPユーザー設定に一致する方法を選択します。 |
| ODataバージョン | OData V2を選択します。 |
| ユーザー名 | SAP Communicationユーザー(タイプC)またはSystemユーザー(タイプB)のユーザー名を入力します。 |
| パスワード | 対応するパスワードを入力します。 |
| ホストURL | SAP ODataサービスのベースパスとしてhttps://<hostname>/sap/opu/odata/を入力します。 |
| サービス | SAPで設定されたODataサービス名としてWKTO/DA_CM_SRVを入力します。 |
| SAPクライアント | ログインに使用するSAPクライアントを入力します。 たとえば、サービスURLがhttps://<hostname>/sap/opu/odata/WKTO/DA_CM_SRV?sap-client=800の場合は、800を入力します。 このフィールドは、オンプレミスSAPシステムにのみ適用されます。 |
Connectをクリックして、認証情報とコネクション設定を検証します。
コネクションが失敗した場合は、次を確認します。
- SAP認証情報
- ホストURLの形式
- サービス名
- ネットワークアクセシビリティ
一般的なエラーには、401 UnauthorizedとHost unreachableがあります。
データパイプラインの作成
新しいデータパイプラインを作成するには、次の手順を実行します。
作成 > データパイプラインを選択するか、C+Iを押します。
データパイプライン名フィールドにデータパイプラインの名前を入力します。
データパイプライン設定
ロケーションドロップダウンメニューを使用して、データパイプラインを保存するプロジェクトを選択します。
ビルドを開始をクリックします。
SAPソースの設定
SAPをソースアプリケーションとして設定するには、次の手順を実行します。
ソースアプリから新規/更新済みレコードを抽出トリガーをクリックします。 このトリガーは、パイプラインがソースアプリケーションからデータを取得する方法を定義します。
ソースアプリトリガーから新規/更新済みレコードを抽出の設定
ソースアプリケーションとしてSAP ODataを選択します。
このパイプラインで使用するSAP ODataコネクションを選択します。 または、+ 新規コネクションをクリックして新しいコネクションを作成します。
SAP ODataコネクションの選択
Add objectをクリックして、抽出するOpen Hub Destinationを選択します。
オブジェクトの追加
検索フィールドにOpen Hub Destination名の大文字を3文字以上入力します。
Open Hub Destination名では大文字と小文字が区別され、大文字が使用されます。
検索結果からOpen Hub Destinationを選択します。
Open Hub Destinationの選択
選択内容を確認するには、Addをクリックします。
同期モードの選択
選択する同期モードは、ソースシステムでOpen Hub Destinationにデータを供給するデータソースの抽出動作と一致している必要があります。
オブジェクトセクションでオブジェクトの設定を開き、同期モードを選択します:
- データソースが各抽出時に完全なデータセットを提供する場合は、Full syncを選択します。
- データソースが差分(新規または変更)レコードのみを提供する場合は、Incremental syncを選択します。
同期モードの設定
同期モードの整合
設定された同期モードが、ソースシステム内のデータソースの抽出ロジックと一致していることを確認する責任があります。
スキーマの定義
Open Hub Destinationを追加すると、パイプラインは選択した各オブジェクトのスキーマを自動的に取得します。 スキーマを確認してカスタマイズし、宛先がソースと一致するようにします。
任意のオブジェクトを展開して、使用可能なフィールドのリストを表示します。
すべてのデータを抽出するにはすべてのフィールドを選択したままにするか、特定のフィールドの選択を解除して抽出およびスキーマレプリケーションから除外します。
任意です。 各非キーフィールドのフィールドレベルデータ保護を設定します。
- そのままレプリケート(デフォルト): ソースのデータ値は宛先に同一にレプリケートされます。
- ハッシュ: 宛先に同期する前に、列内の機密データ値をハッシュ化します。
同じフローを使用してさらにオブジェクトを追加するには、もう一度オブジェクトを追加をクリックします。 この手順を繰り返して、複数のOpen Hub Destinationをパイプラインに含めることができます。
スキーマ変更の処理方法を選択します。
- スキーマ変更を自動的に検出して適用するには、新しいフィールドを自動同期を選択します。
- スキーマ変更を手動で管理するには、新しいフィールドをブロックを選択します。 このオプションを使用すると、ソーススキーマが更新された場合に宛先が同期されなくなる可能性があります。
詳細設定の構成
実行動作とSAPシステムへの影響を制御するには、パイプラインレベルの設定を構成します。
Concurrency設定を調整します。
同時実行設定の調整
同時実行は、同時に実行されるパイプラインジョブの数を定義します。
- 値を大きくすると並列実行が可能になり、スループットが向上します。
- 値を小さくするとSAPシステムの負荷が軽減され、テーブルロックやパフォーマンスの問題を防ぐのに役立ちます。
SAPシステムに過度の負荷をかけないように、同時実行を慎重に調整します。
Frequencyを設定します。
頻度の設定
頻度は、数分ごと、毎時、毎日など、パイプラインの実行頻度を定義します。 データの鮮度とSAPシステムのパフォーマンスおよび安定性のバランスが取れた頻度を選択します。
標準の時間ベースのスケジュールを選択するか、カスタムcron式を定義します。
宛先の設定
SAPソースと詳細設定を構成した後、データの宛先を選択します。
宛先アプリのターゲットテーブルにデータをロードアクションをクリックします。 このアクションでは、パイプラインが宛先でデータをレプリケートする方法を定義します。
宛先の設定
宛先アプリケーションを選択します。
既存の宛先コネクションを選択するか、+ New connectionをクリックして作成します。
保存をクリックします。
宛先固有の設定の詳細については、次のガイドを参照してください。
パイプラインの開始
データ抽出を開始するには、Start pipelineをクリックします。
パイプラインの開始
WorkatoはSAP Data Agentに抽出リクエストを送信し、パッケージでデータを取得して、そのデータを宛先にロードします。
同期完了の確認
パイプラインがデータの抽出を完了すると、SAP Data Agentはシステムパフォーマンスとデータセキュリティを保護するために抽出後のクリーンアップを実行します。
完了した同期
次の処理が行われます。
- Workatoは抽出されたデータを宛先にロードし、ダウンストリーム処理で使用できるようにします。
- SAP Data Agentは、最後に抽出されたリクエストのチェックポイントを設定します。 今後のパイプライン実行では、前回の正常な実行後に生成された新しいデータのみを取得します。
- SAP Data Agentは、
BW_MSTR_CLEANUPパラメーター値に基づいて、パイプライン実行データと一時情報を消去します。
同期モードによって、パイプラインが宛先にデータをロードする方法が決まります:
- Full sync: パイプラインは宛先の既存データを、抽出された最新のデータセットに置き換えます。
- Incremental sync: パイプラインは、新しく抽出されたレコードを宛先の既存データに追加します。
このクリーンアッププロセスにより、効率的なリソース利用状況が確保され、SAPに残存ステージングデータが蓄積されるのを防ぎます。
最終更新日:
同期頻度を設定