SAP BW/4HANA
SAP BW/4HANAのプロセスチェーン基礎:作成・スケジュール・エラー対応の実務手順
SAP BW/4HANAのプロセスチェーンについて、処理設計、作成、スケジュール設定、監視、エラー調査、再実行までを実務で使える手順として解説します。
SAP BW/4HANAのプロセスチェーンは、データロード、変換、データストアオブジェクトの有効化、マスターデータ更新、後続処理などを順序付けて自動実行するための運用オブジェクトです。単独の処理を手動で実行するのではなく、依存関係、実行時刻、エラー時の分岐、監視方法までを一つの流れとして管理できます。
実務では、最初にデータの到着条件と処理の完了条件を整理し、その後にチェーンを設計します。対象のADSOや変換だけを並べるのではなく、抽出、ロード、変換、アクティベーション、後続集計という業務上の境界を明確にすると、障害発生時の切り分けが容易になります。
プロセスチェーンの役割と全体設計
プロセスチェーンは、開始条件を起点に複数のプロセスを順に、または条件に応じて実行する仕組みです。代表的な構成は、データ取得、インフォパッケージまたはデータ転送処理、変換、ADSOへのロード、データの有効化、後続の集計や通知です。
設計時には、まず一つのチェーンが担当する業務範囲を決めます。日次の販売データロードと月次の再集計を同じチェーンに詰め込むと、実行時間と障害範囲が大きくなります。日次、月次、再処理用など、運用上の目的が異なる処理は分けて管理する方が安定します。
データモデルとの関係も確認します。ADSOの構造や有効化手順を確認する場合は、SAP BW/4HANAのAdvanced DataStore Objectを参照し、変換やルーチンの実行順序を設計する場合は、SAP BW/4HANAの変換処理と合わせて確認します。
チェーンの粒度は、障害時に再実行する単位で決めると運用しやすくなります。データ取得から最終更新までを一つの巨大なチェーンにすると、途中の一処理だけを再実行しにくくなります。一方、細かく分けすぎるとスケジュールや依存関係の管理が複雑になります。業務上の再処理単位と監視単位を基準に、適切な粒度を選びます。
プロセスチェーンの作成手順
プロセスチェーンの作成では、名称、説明、開始プロセス、後続プロセスの順に定義します。名称には、対象業務、頻度、処理区分が分かる規則を設けます。例えば、日次販売データ、月次在庫集計、マスターデータ更新など、運用担当者が一覧から用途を判別できる名前にします。
作成の基本手順は次の通りです。
- プロセスチェーンの管理画面で新しいチェーンを作成する
- 技術名称と説明を登録する
- 開始条件を設定する
- データロードに必要なプロセスを追加する
- 変換、ADSOの有効化、後続処理を依存関係に沿って配置する
- 各プロセスの対象オブジェクトとバリアントを割り当てる
- チェーンを保存して整合性を確認する
- スケジュール前にテスト実行する
プロセスを追加した後は、前段の正常終了が後段の開始条件になっていることを確認します。単に画面上で左から右へ並んでいるだけでは、期待した依存関係になっているとは限りません。ロード完了後に変換を開始し、変換完了後にADSOの有効化を実行するよう、各接続を明示します。
抽出処理を含む場合は、対象のデータソース、要求、フィルター、転送方式を確認します。抽出全体の設計は、SAP BW/4HANAのデータ抽出で扱うデータ取得の前提と整合させます。チェーン側だけを変更しても、抽出元のデータ到着や要求管理が整っていなければ、安定したロードにはつながりません。
テストでは、少量の対象期間または検証用バリアントを使い、開始から終了までのステータスを追跡します。成功したプロセスだけでなく、警告終了、スキップ、後続処理の開始条件も確認します。テスト時に生成された要求やログは、後で本番運用と混同しないよう整理します。
スケジュールと開始条件の設定
プロセスチェーンは、時刻指定、定期実行、イベント連携などの開始条件で起動します。日次処理ではデータ提供側の完了時刻を基準に余裕を持たせ、月次処理では会計期間や業務締めの完了条件を考慮します。固定時刻だけでなく、前提となるデータが利用可能になっているかを運用上確認します。
スケジュール設定では、次の項目を記録しておくと引き継ぎが容易です。
- 実行頻度と予定開始時刻
- 実行対象の業務期間
- 前提となる抽出またはロード
- 後続チェーンとの依存関係
- 想定処理時間
- 遅延時の連絡先と判断基準
同時刻に複数の大量ロードを開始すると、処理資源の競合や後続処理の遅延が発生します。処理時間の実績を監視し、チェーンを時間帯で分散させます。特に、同じADSOや同じデータ領域を更新する処理は、並列実行の可否を確認してからスケジュールします。
開始条件を変更した後は、次回実行時刻だけでなく、既存のスケジュール状態も確認します。保存した設定が有効なスケジュールに反映されていること、不要になった旧スケジュールが残っていないこと、実行ユーザーの権限が維持されていることを確認します。
実行状況の監視とログ確認
運用時は、チェーン全体の状態と個別プロセスの状態を分けて確認します。チェーンが実行中でも、内部の一つのプロセスが長時間停止している場合があります。開始時刻、終了時刻、処理時間、ステータス、対象要求を記録すると、通常時との差を判断しやすくなります。
監視では、次の状態を重点的に確認します。
- 実行待ちになったまま開始されない
- 一つのプロセスが長時間実行中のままになる
- 警告終了が繰り返される
- 後続プロセスが開始されない
- 同じ要求が重複して作成される
- チェーン全体が異常終了する
ログは、チェーンのログ、個別プロセスのログ、対象要求の詳細という順に確認します。まず停止した位置を特定し、次にそのプロセスが扱ったデータ範囲と技術メッセージを確認します。最後に、前段の処理が実際に必要なデータを生成したか、後段が必要とする状態になっているかを確認します。
データフロー全体を確認するときは、SAP BW/4HANAの概要で扱うオブジェクト間の関係も参照します。ADSO、変換、CompositeProviderなどの境界を把握しておくと、チェーンのどの段階でデータ状態が変わったかを追跡できます。
監視結果は、処理時間と件数の実績として残します。処理時間の増加、ロード件数の急減、警告件数の増加は、完全な異常終了より早く兆候を示すことがあります。正常時の基準値を決め、一定の範囲を超えた場合に調査を開始します。
プロセスチェーンのエラー対応
エラー対応では、まず失敗したプロセスを特定し、同じチェーンをすぐに最初から再実行しないことが重要です。前段がすでに正常終了している場合、全体再実行によって重複要求や不要な再処理が発生する可能性があります。再実行する範囲は、失敗原因とデータ状態を確認して決めます。
典型的な調査順序は次の通りです。
- チェーンログで異常終了したプロセスを特定する
- 個別プロセスの詳細ログを開く
- 対象要求、データ期間、バリアントを確認する
- 前段処理の終了状態と生成データを確認する
- エラーメッセージに対応するマスターデータ、権限、接続、変換を調査する
- 必要な修正を行い、最小範囲で再実行する
- 後続処理が正常に完了したことを確認する
データが存在しない場合は、抽出元の到着状況、選択条件、転送処理、対象期間を確認します。変換エラーの場合は、項目マッピング、ルーチン、データ型、必須項目を確認します。ADSOの有効化で停止した場合は、重複キー、SID関連、主キーの整合性、前段データの内容を確認します。
権限エラーでは、実行ユーザーが対象のプロセス、データソース、ADSO、変換を扱えることを確認します。接続エラーでは、通信先の状態、認証情報、接続先定義、ネットワーク経路を確認します。エラーメッセージを記録するときは、発生時刻、チェーン名、プロセス名、要求ID、対象期間を併記します。
再実行前には、失敗した要求を削除、修正、再利用する運用ルールを確認します。再実行後は、件数だけでなく、対象期間、更新時刻、後続の集計結果まで確認します。エラーが解消したことと、業務データが正しく更新されたことは別の確認項目です。
安定運用のための改善ポイント
安定運用には、チェーンを作って終わりにせず、処理実績をもとに定期的に見直すことが必要です。実行時間、データ件数、警告数、再実行回数を記録し、処理量の増加やデータモデル変更の影響を評価します。
改善では、次の観点を確認します。
- 長時間処理を独立したチェーンまたはプロセスに分離する
- 不要な再ロードや重複した後続処理を削減する
- エラー時に担当者が判断できる説明をプロセス名に含める
- 本番用と再処理用のバリアントを整理する
- スケジュール変更を記録し、依存関係を定期確認する
- 成功だけでなく警告終了も監視対象にする
チェーンの変更は、関連する変換、ADSO、抽出処理、権限、スケジュールをまとめて確認してから反映します。変更後は、通常実行だけでなく、データ未着、空データ、変換エラーなどの異常ケースも検証します。
運用手順書には、チェーンの目的、開始条件、処理順序、想定時間、監視画面、代表的なエラー、再実行方法、連絡先を記載します。担当者が交代しても同じ判断ができるよう、画面上の名称だけでなく、対象オブジェクトとデータ期間を明記します。
まとめ
SAP BW/4HANAのプロセスチェーンは、データ取得から後続処理までを再現可能な運用フローとして管理するための中核です。作成時は処理順序と依存関係を明確にし、スケジュールではデータ到着と処理資源を考慮します。
障害時は、失敗したプロセス、対象要求、データ状態を確認し、必要な範囲だけを再実行します。処理時間、件数、警告、再実行履歴を継続的に記録すれば、エラー対応だけでなく、将来の処理量増加にも対応しやすくなります。