SAP CPI の Message Mapping をドキュメント化:ワンクリックで Excel のマッピングシート
SAP CPI の Message Mapping をマッピングシートとしてドキュメント化する方法。必要な列、関数とコンテキストの書き方、そしてシートを Excel にエクスポートする方法を解説します。

マッピング仕様は、たいていインターフェースの最初のドキュメントであり、最初に古くなるドキュメントでもあります。SAP Cloud Integration(SAP CPI)の Message Mapping は構築とテストの間に変わっていきますが、それを説明したスプレッドシートは元のままです。
この記事では、マッピングシートに必要な列、読み手が追えるように関数、コンテキスト、Value Mapping を説明する方法、そしてマッピングそのものからシートをエクスポートする方法を説明します。
マッピング仕様が実態とずれていく理由
マッピング仕様は、マッピングが存在する前に、業務上の項目を知っている人が書きます。その後、開発者が、ある項目にはコンテキストの変更が必要で、ある日付には別の形式が必要で、あるコードには Value Mapping が必要だと気づきます。こうした判断はマッピングエディターのグラフィカルなビューの中にあり、シートに書き戻されることはほとんどありません。
マッピングシートに必要な列
| 列 | 内容 |
|---|---|
| ターゲット項目 | ターゲットメッセージにおける項目のフルパス |
| 出現回数 | 出現できる回数。たとえば 0..1 や 1..unbounded |
| ソース項目 | 値の元になるソースのパス |
| ルール | 平易な言葉で書いたロジック |
| 関数 | 使っている標準関数。たとえば concat、if、formatByExample |
| 定数 | マッピングに書き込まれた固定値 |
| UDF | ユーザー定義関数と、それが何をするのか |
| Value Mapping | Value Mapping で変換されるコード |
| 注記 | コンテキストの変更と、テスト担当者が知っておくべきこと |
関数、コンテキスト、Value Mapping の説明の仕方
- ルールは文章で書きます。「FirstName と LastName をスペースで連結する」のほうが、関数名の羅列よりも確認しやすくなります。
- コンテキストが変わる場合は明記します。明細ごとに 1 回埋まる項目と、ドキュメントごとに 1 回埋まる項目では動作が異なり、マッピングのエラーの多くはそこに潜んでいます。
- Value Mapping では、エージェンシーと識別子を明記して、テスト担当者がどの表を見ればよいかわかるようにします。
- ユーザー定義関数については、どう書かれているかではなく、何をいつ返すのかを書きます。
マッピングからシートをエクスポートする
- デザイナーで iFlow を開き、「Kitegra ツール」ボタンをクリックして「この iFlow をドキュメント化」を選びます。
- 「iFlow ドキュメント」のページで「マッピングシート」を開きます。iFlow の Message Mapping が、ターゲット項目ごとに 1 行、上記の列とともに一覧表示されます。
- マッピングごとに 1 シートの Excel ブックとしてダウンロードします。
- デザイナーを使わない場合は、代わりに「マッピングをアップロード (.mmap または ZIP)」を選びます。アップロードしたファイルはプランの iFlow 数にカウントされません。
シートはマッピングファイルから作られるので、マッピングが現在実際に何をしているのかがわかります。同じ iFlow から生成した技術設計書と並べて読んでください。
引き継ぐ前にシートを確認する
- いくつかの行を、テストメッセージと照らし合わせます。ソースの値、ルール、ターゲットの値です。
- iFlow を TRACE で実行し、メッセージをステップごとにトレースするの方法で、マッピングのステップの前後のボディを確認します。
- 読み手にルール以上の情報が必要な箇所では「注記」列を埋めます。ある項目がなぜ定数なのか、どのシステムがコードリストを管理しているのか、などです。
Kitegra でできること
マッピングシートは、Kitegra の iFlow Docs 領域の機能です。シートはブラウザー内で作られ、マッピングが Kitegra に送られることはありません。
Helper、Message Monitor、iFlow Inspector、iFlow Docs は、それぞれ使用した iFlow の数をカウントします。Kitegra アカウントなしではモジュールごとに 5 つ、Free プランでは 50、Starter では 100、Pro では 300 で、Business は上限なしです。Toolbox とワークスペースの追加機能は無料です。プランを比較する。
次の iFlow で試してみましょう
Kitegra が SAP Integration Suite のデザイナーに何を加えるのかを読むか、Kitegra のほかの Chrome 拡張機能と並べて確認できます。
よくある質問
SAP CPI の Message Mapping はどのようにドキュメント化すればよいですか?
ターゲット項目ごとに 1 行のマッピングシートにします。ターゲットのパス、出現回数、ソース項目、文章で書いたルール、関数、定数、UDF、Value Mapping、注記です。
Message Mapping を Excel にエクスポートできますか?
できます。「iFlow ドキュメント」のページで、「マッピングシート」をマッピングごとに 1 シートの Excel ブックとしてダウンロードできます。
デザイナーなしでマッピングをドキュメント化できますか?
できます。.mmap ファイルか、マッピングを含む ZIP をアップロードします。アップロードはプランの iFlow 数にカウントされません。
シートはユーザー定義関数を説明してくれますか?
各項目が使っている UDF を一覧にします。UDF が業務的に何をするのかは、「注記」列に 1 行書いておく価値があります。
マッピングは Kitegra に送られますか?
いいえ。シートはブラウザー内で作られ、マッピングが送られることはありません。