
はじめに
企業の基幹システムでは、複数のソリューションが連携して稼働しているケースが少なくありません。そのため、ソリューション間のデータ連携は不可欠な要素です。
今回、私が携わった案件では、SAP Integration Suiteを用いてソリューション間のデータ連携を担う「iFlow」を数多く作成しました。しかし、iFlowの数が増えるにつれて、その管理の煩雑さが課題となってきます。
特に、開発環境から本番環境へiFlowを移送する際には、「どのiFlowを、いつ、どのバージョンで移送したのか」を正確に把握することが極めて重要です。
今回の案件では、iFlowの移送管理を効率化するために、SAP Cloud Transport Management(以下、cTMS)を導入しました。その経験をもとに、この記事では具体的な移送の内容と、メリットについてご紹介します。
SAP Cloud Transport Managementの利用を検討されている方や、技術調査を進めている方のご参考になれば幸いです。
iFlowとは?
iFlowとは、SAP Integration Suiteが提供する機能の一つで、異なるシステムやアプリケーション間のデータ連携やプロセス統合を、視覚的なフローとして設計・自動化する機能です。オンプレミスとクラウド、SAPと非SAPシステムといった多様な環境を安全かつ確実に接続するために利用されます。

詳細については、公式ドキュメント「SAP Integration Suite とは」もご参照ください。
SAP Cloud Transport Management (cTMS) とは?
cTMSはSAP BTPサービスの1つで、開発成果物やアプリケーション固有のコンテンツの移送を管理するための、クラウドベースのソリューションです。
cTMSを利用することで、異なる環境(例:開発、検証、本番)のアカウント間でソフトウェアの成果物を一元管理し、ソースシステムからターゲットシステムへ安全に移送できるようになります。
詳細については、公式ドキュメント「SAP Cloud Transport Management の概要」もご参照ください。
従来のiFlow移送が抱える課題
これまでcTMSを利用せずにSAP Integration SuiteのみでiFlowを移送する場合、以下の手順をすべて手作業で行う必要がありました。
- 移送元の環境(開発環境)から、移送したいiFlowをエクスポートします。
- 移送先の環境(本番環境)に、対象のiFlowがすでに存在する場合、一度iFlowを削除します。
※事前に削除しておかないと、インポート時に重複エラーが発生します - 移送先の環境(本番環境)に、1でエクスポートしたiFlowをインポートします。
- 3でインポートしたiFlowの外部パラメータを、移送先の環境(本番環境)に合わせて再設定します。
これらの手順はすべて手作業のため、移送対象の選択ミスやパラメータの設定漏れといったオペレーションミスが発生しやすいという大きな課題があり、プロジェクトが大規模化するほどリスクになります。
cTMSを利用したiFlowの移送
cTMSを導入すると、SAP BTP環境で移送ルートを設定することで、SAP Integration Suiteで作成したiFlowをソース環境(開発)からターゲット環境(本番)へスムーズに移送できるようになります。(下図参照)

また、接続設定を追加すれば、
開発環境 → 検証環境 → 本番環境
といった3ランドスケープ構成での段階的な移送も可能です。
※cTMSの設定はCloud Foundry環境ベースのサブアカウントで行う必要があります。
実際の移送手順
1. 移送元の環境(開発環境)にあるSAP Integration Suiteで、移送したいiFlowを選択します。
iFlowの選択方法には以下があります。
①パッケージ単位:パッケージに含まれる全てのiFlowを移送します。
②iFlow単位:選択した1つのiFlowのみを移送します。
③任意のiFlow:チェックを入れた複数のiFlowを移送します。

2. 移送を実行し、移送IDを発行します。
移送実行時のComments欄には以下の入力制限があるため、ご注意ください。
・ラテン文字、数字、スペースおよび次の文字のみが使用可能です: '-._~:\/?#[]@!$&()*+,;=%'
・最大長は512文字です。
・改行はサポートされていません。


3. cTMSへアクセスし、移送キューから対象の移送IDを選択して、移送先の環境(本番環境)へインポートを実行します。成功するとステータスが「Succeeded」となり、移送履歴の行をクリックすれば詳細なログも確認できます。


4. 移送先の環境(本番環境)にあるSAP Integration Suiteへアクセスし、iFlowが移送されていることを確認します。
移送後は以下の点に注意が必要です。
・外部パラメータを設定している場合、初回移送時のみ環境にあわせた設定変更が必要です。
・デプロイは毎回手動で行う必要があります。デプロイを行わないと、移送したiFlowは有効になりません。

cTMS導入によるメリット
cTMSの導入を実際に体験して感じた主なメリットは以下の通りです。
- 安全性の向上
従来の手動移送では、エクスポート、削除、インポート、外部パラメータの再設定といった煩雑な手順が必要で、オペレーションミスが起こりやすい状況でした。cTMSでは、これらの手順が自動化されるため、人為的なミスを大幅に削減できます。初期設定こそ手間がかかるものの、一度設定すれば、あとは安全かつ柔軟に移送が可能です。
- 移送履歴の可視化とトレーサビリティの向上
「どのバージョンのiFlowを、いつ移送したか」といった履歴がすべて記録され、簡単に確認できるようになります。移送時のステータス(成功/エラー)も一目瞭然で、エラー発生時にはその内容も確認可能です。これにより、移送後に問題が発生した場合でも、原因調査が格段にしやすくなるというメリットもあります。
まとめ
本記事では、SAP Cloud Transport Managementを用いてiFlowの移送を効率化・標準化する方法を紹介しました。
iFlowの移送管理は、数が増えるほどに複雑化し、手動での作業には限界があります。
SAP Cloud Transport Managementを導入することで、これまで課題だったオペレーションミスを削減し、移送履歴を正確に管理できるようになります。iFlowの移送作業にお困りの方や、より安全で効率的な管理方法を模索している方は、ぜひ導入を検討してみてはいかがでしょうか。
KYOSOは今後も、SAP BTP × cTMSを活用した開発運用のベストプラクティス を発信し、エンジニアの皆さまの効率化と品質向上に貢献していきます。
投稿者プロフィール

-
2018年に中途入社。前職より一貫してWebアプリケーション開発を経験しています。
KYOSO入社後はSAPBTP・SAPFioriを軸とした開発、特にフロントエンド・API開発を専門としています。
現在はSAP BTPの最新技術を調査・研究中。
培った知見は技術記事として発信し、お客様のDX推進に貢献します。