SAP ERPの特徴と強み
一般的なERPパッケージの強みとしては「企業内の資源を可視化し、最適化できること」が挙げられます。
SAP ERPも基幹業務から発生するデータを一元化し、企業内の資源の流れそのものを瞬時に理解し、意思決定の材料とするためのツールです。
しかし、これ以外にもSAP ERPには独自の強みがあります。
それはパッケージ製品でありながら優れたカスタマイズ性や拡張性を持つという点です。SAP ERPでは以下のような手法を用いて、ユーザー企業の要件を実現することが可能です。
汎用的な独自言語「ABAP」
ABAP(Advanced Business Application Programming)はSAP ERPシリーズの中でのみ動作する専用の言語で、アドオン開発の中心となる存在です。SAP ERPシリーズでのみ使用可能な言語であり、JavaやC言語のような汎用性はありません。しかし、SAP ERPシリーズ内に限定すればABAPでできないことはないと言えるほど汎用性の高い言語です。
ABAPは手続き型プログラミング言語として誕生し、シンプルで簡素な文法表現やABAP SQL(旧OPEN SQL)と内部テーブル(プログラム内部で動作する仮想的なデータ構造)を用いたデータ操作が特徴です。
一般的なレポーティング機能や帳票機能の大半はABAPによって実装することができます。また、動的な画面遷移を実装する「Dynpro」によって、複数の画面を行き来するような独自性の強い業務要件にも対応できるという強みがあります。
現在は機能拡張によってオブジェクト指向化が進んでおり、一般的なオブジェクト指向言語と同じようにクラスやメソッド、インスタンスを用いた開発が可能です。
追加開発、チューニングの選択肢が豊富
SAP ERPには、設定変更・チューニングの方法がいくつも用意されています。代表的な方法は以下の4つです
カスタマイズ
SAP ERPに標準で用意されている設定項目を任意のパラメータに変更し、導入先の組織体制や業務プロセスにフィットさせます。一般的にはFit&Gap分析の結果を受けて、導入の最初期に行われます。
カスタマイズ作業は専用のインターフェースで行い、変更によって生じる動作はSAP社によるサポートの対象です。
システム拡張
標準機能の中にある専用の領域にユーザー独自の処理を組み込む方法です。
SAP ERPではさまざまな業務処理に対応するために、標準機能の内部にユーザーが任意の処理を追加するための領域(サブルーチン)を確保しています。
これらは「Exit(イグジット)」と呼ばれ、主に伝票登録・変更に対する値のチェック・代入を追加するために使用されます。
例えば、伝票登録・変更処理の中に標準機能とは別に値のチェック・挿入などを行いたい場合には、Exitの一種である「チェック・代入処理」を実装します。また、会計関連の伝票処理やマスタ登録の場合には、「Open-FI」とよばれる専用のExitを使用します。
さらにモジュールを問わず、さまざまな処理に使用できるExitとして「BADI(ビジネスアドイン)」があります。
これらは「Exit(イグジット)」と呼ばれ、主に伝票登録・変更に対する値のチェック・代入を追加するために使用されます。
BADIはExitをオブジェクト指向化し、プラグインのように扱える技術です。厳密にいえばExitの代替技術ですが、同じシステム拡張の一種であるため、Exitの一種とみなされることもあります。
BADIは再利用が可能であり、旧来のExitよりも使い勝手が良いため、ECC6.0以降のSAP ERPシリーズにおけるシステム拡張の手段として中心的な存在です。
モディフィケーション
モディフィケーションとは、SAP ERPの標準機能を書き替える手法です。
具体的にはSAP ERP内に存在する標準オブジェクトに変更を加えることにより、標準機能をベースにしつつ独自の処理を可能にします。
一般的に、モディフィケーションによって書き換えられた標準機能は、SAP社のサポート対象から外れてしまいます。
したがって、標準機能に対する深い理解とモジュールごとの専門知識が欠かせません。
アドオン開発
SAP ERPの標準機能では実装できない部分を、外部プログラムとして実装する方法です。一般的には、独自言語であるABAPによる追加開発を指す言葉です。
帳票プログラムや動的な画面プログラム、バッチインプット(SAP ERP内の標準トランザクションを通した、手入力を模倣したバッチ処理)の追加などで活用されます。
標準機能からは完全に独立した存在として扱われるため、SAP社のサポート対象からは外れます。また、アドオン開発で追加されたプログラムが標準機能に変更を加えた場合も、変更箇所はサポートの対象外です。
このようにSAP ERPには、複数の設定変更・チューニングのための手法が用意されています。
これらは最新世代のERPであるSAP S/4HANAにも引き継がれており、最新のビジネス要件を満たすことも可能です。