ABAPとは? よく開発する機能や勉強方法などをわかりやすく解説(vol.94)

  • 公開日:2023.05.08

SAPシステムの開発に用いられるプログラミング言語であるABAPについて、その概要・用途や、よく開発する機能、最低限覚えておくべき構文ルール/トランザクションコード、勉強方法などをわかりやすく解説します。
これからABAPを学習したいという方は、是非、本ブログ記事をご覧ください。
*本ブログ記事の「SAPシステム」は、「SAP ERP」 及び 「SAP S/4HANA」を指します。

ABAPとは? ~概要・用途~

ABAP(Advanced Business Application Programming)とは、SAPシステムを構成するプログラミング言語のことです。
主に、SAPシステムのアドオンを開発する際に用いられます

SAPシステムはパッケージ製品のため、標準機能とユーザーの業務を照らし合わせてパラメーター設定を行うことでシステム導入するのですが、標準機能では満たせない要件が発生した場合は、アドオンを開発することで機能を補完することがあります。このアドオンを開発する際に用いられるのが、ABAPというSAP特有の言語です。

なお、最近は必ずしもSAPシステムの拡張やアドオン開発にABAPを用いるとは限りません
例えば、SAP S/4HANAになって登場した新たなUI(ユーザーインターフェース)である「Fiori」を開発する際は、バックエンドの開発にはABAPを、フロントエンドの開発にはSAP UI5を用います。
また、ABAPを用いずとも標準機能を補完するアプリケーションの開発ができる環境として、SAP BTP(Business Technology Platform)が提供されており、こちらではJAVAをベースとしたアプリケーション開発も可能です。

ABAPとは? ~よく開発する機能~

一般的にABAPで開発することが多い機能は、大きく次の3つに分けられます。

  1. レポート(REPORT)
    レポートとは、伝票や売上などのデータを一覧でレポートする機能のことです。
    SAPシステムの標準機能でもレポートは存在しますが、ABAPを使用して追加開発することで、ユーザーの要望に合致するレポート(を表示できる機能)を提供できます。
  2. バッチインプット(Batch Input)
    バッチインプットとは、ユーザによるトランザクションコードを介した入力/更新作業を模した動きをプログラム化して大量のデータをシステムに自動で入力/更新させる方法・機能のことです。これにより、膨大な入力業務を一括処理できるため、業務を省力化することができます。
    膨大なデータを一括で入力するとなると、サーバーへの負荷が大きくなることが懸念されるかと思いますが、夜間に処理を実行することにより、日常業務への影響を抑えることができます。
  3. Dynpro(Dynamic programming)
    Dynproとは(「Dynamic programming」の略称で)、ユーザーとの対話を通じて動くプログラム・機能のことです。ユーザーの入力内容に応じて表示画面を変更するような動的なプログラム・機能を提供できます。

ABAPによるアドオン開発は、これら3つの機能をユーザーの要件に合わせて使い分けながら進めていきます。

ABAPとは? ~最低限覚えておきたい開発知識~

ABAPによる開発を行う上で、最低限覚えておきたい構文ルールとトランザクションコードを解説します。

ABAP開発で最低限覚えておきたい構文ルール

  • 命令文は半角英字
  • 個々の単語は半角スペースで区切る
  • 命令は”ABAPキーワード”で始まり”ピリオド”で終わる
  • 大文字と小文字は区別されない
  • 同じABAPキーワードが続く場合は、チェーン命令を利用する
  • コメント文は「*」が行頭
  • 行の途中からコメント文は” “でくくる
  • 複数の命令の群はキーワード毎にピリオドを付ける

ABAP開発で最低限覚えておきたい開発系トランザクションコード

  • SE11 テーブルやデータエレメントなどの追加・照会
  • SE24 クラスの作成・照会
  • SE37 汎用モジュールの作成・照会
  • SE38 プログラムの作成
  • SE80 オブジェクトナビゲータ
  • SE91 メッセージ

特に、「SE38(プログラムの作成)」は、開発系のメインのトランザクションコードなので、必ず覚えておきましょう
また、「SE11(テーブルやデータエレメントなどの追加・照会)」も、頻繁に使用するトランザクションコードなので、こちらも併せて覚えておきましょう。

SAP S/4HANA や RISE with SAP って、正直何ができるの?
~ “変わる良さ” と “変わらない安心” を徹底分析!! ~

ABAPエンジニアの需要・価値とは?

「2025年の崖」や「2027年問題」の影響を受け、SAP S/4HANAの導入・移行案件は、今後さらに増加するものと思います。そのような状況において、ABAPに精通していると、自身の市場価値を大幅に向上させることができると言えます。
そもそも2023年現在でもSAPエンジニア/コンサルタントが不足していることに加え、アドオン開発は開発専門の会社に外注する場合も多く、SAP認定コンサルタント有資格者であっても、業務(業務フローやユーザー側がよく使用するトランザクションコードなど)とABAPのどちらにも精通している人はそれほど多くないためです。

  • 2025年の崖
    2025年の崖とは、高齢化によりIT人材(保守運用担当)が不足することで、セキュリティ事故やシステムトラブル、データ損失などのリスクが高まるであろうという懸念のことです。
    経済産業省が発行している「DXレポート~ITシステム「2025年の崖」の克服とDXの本格的な展開~」によると、2025年には現用の基幹システムの導入から21年以上経過する企業が国内で6割に上ると述べられており、2025年をターニングポイントに現用システムを刷新する企業が多くなると予想されます。今後、これらの企業が、日本でも主流なERPパッケージ製品であるSAPシステムを導入する機会は必然的に増えていくと考えられますので、「2025年の崖」により、SAPエンジニアの需要も高まると考えています。
  • 2027年問題
    2027年問題は、もともとSAP社が提供するERPパッケージ(SAP ERP)のメインストリームサポート期限が2025年末に設定されていたことに端を発しています。世界的なシェアが高いサービスであり、日本国内でも2,000社以上が導入しているため、SAP ERPのサポート終了は、導入企業にとって大きな影響を及ぼす懸念がありました。
    しかし、「これを機にDXを推し進めるための時間がほしい」といったユーザーの声を反映し、2020年2月に、SAP社はメインストリームサポート期限を2年間延長し、2027年末までとすることを発表しました。
    そのため、現在これらの問題は「2027年問題」と呼ばれています。
    2027年までに、多くのSAP ERPユーザー企業がSAP S/4HANAへの移行プロジェクトを発足すると考えられるので、SAPエンジニアの需要は、今後ますます増加すると予想されます。

ABAPの勉強方法とは?

これからABAPを学ぶには、大きく3つの勉強方法があります。

  1. 書籍を用いて学習する
    JavaやPythonのように広く普及している言語ではないため、書籍の数は非常に少ないですが、ABAPの基礎であれば、現在出版されている書籍で十分に身に着けることができます。
  2. SAP主催セミナーに参加する
    SAP主催セミナーに参加することで、ABAPに精通したエンジニアから直接レクチャーしてもらえる貴重な機会を得ることができます。企業に所属している方であれば、受講したいセミナーを調べて、上長に相談してみるとよいでしょう。ただし、参加費用が高額なセミナーもあるので、注意が必要です。
  3. ABAP関連のWebサイト(ブログなど)を見る
    ある程度 基礎を理解した後の学習方法となりますが、ピンポイントで知りたい内容が決まっている際には、ABAP関連のWebサイト(ブログなど)を見るというのも学習手段の一つです。検索の際のポイントとしては、日本にはABAP関連のWebサイト(ブログなど)が少ないので、英語で検索を行うことです。英語が苦手な方には多少ハードルが高いかもしれませんが、世界中で多くのSAPエンジニアが情報発信しているため、根気強く探していけば、自分が探している情報を掲載しているページに辿り着くことができるかと思います。

この3つは、実際に弊社の新入社員がABAPを学習する際に行っている勉強方法です。
基礎を身に付けた後は、実際の開発プロジェクトで経験を積んでいくことが成長する一番の方法と言えます。

まとめ

さてここまで、ABAPの概要・用途や、ABAPでよく開発する機能、最低限覚えておくべき構文ルール/トランザクションコード、勉強方法などを解説して参りました。
「2027年問題」に関する考察の通り、SAP ERPのメインストリームサポートが終了する2027年に向けてSAPエンジニアの人材不足が顕在化していくと予想されるため、ABAPに精通しているエンジニアの需要・価値は今後さらに向上するものと思います。
今後、SAPシステムのアドオン開発に携わる予定がある場合は、是非、本ブログ記事をご参考にしていただければと存じます。

電通総研では、ABAPに精通したSAP認定コンサルタント資格を保有している技術者による「SAP S/4HANA移行トータル支援サービス」をご提供しています。SAP S/4HANAへの移行に伴うアドオン改修でお悩みの方は、是非、電通総研へお声掛けください。
https://erp.dentsusoken.com/inquiry/