色々なアドオンプログラム
4.2 色々なアドオンプログラム
プログラムの種類
ABAP言語で作れるアドオンプログラムの種類の特長と、
実際の画面をいくつか見てみましょう。
- レポートプログラム
- Dynproプログラム
- 汎用モジュール
- その他(チェック&代入)
レポートプログラム
レポートプログラムは、必要な条件を指定してデータを抽出し、結果を一覧(ALVや帳票形式など)として出力するタイプのプログラムです。
多くの場合、最初に選択画面 が表示され、条件を入力して実行すると 結果画面に遷移します。
レポートプログラムは、「一覧の表示」に限らず、次のような用途でも使われます。
・自動実行するバッチ処理
・他システムとデータをやり取りするインターフェース処理
・運用担当者が使うツール系プログラム
2章で操作したような、選択画面→結果画面へ一方通行で処理が流れるイメージです。
Dynproプログラム
Dynproプログラムは、画面遷移を伴いながらユーザーが対話的に操作するタイプのプログラムです。
画面内にタブを配置したり、一覧表示(テーブル形式)を埋め込んだりと、レポートよりも複雑な画面構成を作れます。
S/4HANAでは、ユーザーが直感的に操作できるWebアプリ(Fiori)が推奨され、新規の画面開発はFiori中心になる傾向があります。
ただし、既存のSAP標準機能や過去に作られた資産にはDynproが多く、現場では引き続きDynpro画面を扱うケースもあります。
※Dynproプログラムは、S/4HANAでは完全廃止ではないですが、S/4 HANA化に伴い、縮小傾向です。
Dynpro画面はレイアウトが固定されていたり、モバイルに対応できなかったりと古い設計のためです。
現在は、どのデバイスからも直感的に操作できるSAPのWebアプリケーション「Fiori」が推奨されます。
汎用モジュール
汎用モジュールは、他のプログラムから呼び出して使う「部品(共通処理)」です。
例えば、「チェック処理」「データ取得」「メッセージ表示」など、複数のプログラムで共通して使いたい処理をまとめておくことで、汎用性や保守性を高めることができます。
汎用モジュールでは、呼び出し元と値を受け渡すためのパラメータとしてImport(入力)、Export(出力)、Changing(入出力)、Table(入出力)が使われます。
また、処理中に問題が起きた場合に備えて、例外を定義し、呼び出し元へ通知できるようにします。
汎用モジュールの管理は、汎用モジュールビルダー「SE37」で行います。
汎用モジュールの登録に関する具体的な手順は、22章:モジュール化で詳しく説明します。