出典: フリ?百科事典『ウィキペディア(Wikipedia)』
| この記事は
??可能
な
?考文?や出典
が全く示されていないか、不十分です。
出典を追加
して記事の信?性向上にご協力ください。
(
このテンプレ?トの使い方
)
出典?索
?
:
"ABAP"
?
ニュ?ス
·
書籍
·
スカラ?
·
CiNii
·
J-STAGE
·
NDL
·
dlib.jp
·
ジャパンサ?チ
·
TWL
(
2023年3月
)
|
ABAP
(Advanced Business Application Programming, アバップ)とは、
R/3
や
S/4HANA
などの
SAP
システム製品の追加開?に用いられる
高級言語
である。過去の正式名?は「ABAP/4GL」(4GL:4th Generation Language)であり、「ABAP」は「ABAP/4」と同?に略?として使われていた。
言語の特?
[
編集
]
SAP SE
の製品でのみ用いられるSAP?自の
プログラミング言語
。もともとは
構造化プログラミング言語
であったが、後に
オブジェクト指向言語
として?張された。
SAPアプリケ?ション群はABAPを開?言語とし、BASIS(
SAP NetWeaver
)をアプリケ?ションサ?バに利用することで特定のオペレ?ティングシステムやデ?タベ?ス管理システムなどのプラットフォ?ムに依存することなく、開?、運用することができる。また、ABAPをSAPアプリケ?ション開?に採用することで、Javaや.NET C#などの他のITベンダ?が提供するプログラミング言語を利用する場合に比べて言語仕?の?更やランタイムのアップデ?トの影響を受けることなく、自社でリリ?スやアップグレ?ドサイクルをコントロ?ルできるメリットがある。
文法
[
編集
]
文の終了記?は、"."(ピリオッド)である。
IF文の等値判?は"="である。
テ?ブル
[
編集
]
SAP R/3
では「テ?ブル」といわれる
デ?タベ?スシステム
を用いている。テ?ブルの種類は「標準テ?ブル」「アドオンテ?ブル」の2種類が存在する。標準テ?ブルはSAP R/3およびS/4HANAに標準??されているテ?ブルであり、アドオンテ?ブルは顧客の?自要件?現などのために、エンジニアやコンサルタントが後から追加(アドオン)して作成するテ?ブルである。
ABAPでは、テ?ブルからのデ?タ取得、テ?ブルへのデ?タ(レコ?ド)?入、テ?ブルからのデ?タ削除を行う場合、
SQL
に類似した「ABAP SQL(?:OPEN SQL)」および、特定デ?タベ?スに依存したDB言語である「ネイティブSQL」の使用が可能である。
S/4HANAが主流になり、SAP HANAがプラットフォ?ムとなったことにより、使用可能デ?タベ?スシステムの限定およびデ?タベ?スからの?答時間が短縮した。それに加えABAP SQLが大きく機能?張していることから、特定デ?タベ?スに依存した方法でのデ?タ取得?操作をする事例は減少しているものと思われる。
イベント
[
編集
]
ABAPでは、それぞれの?理に?して、
イベント
が用意されている。イベントを用いて、ABAP言語を用いて?理を行う。
なお、レポ?トプログラムを作成する場合には以下のイベントが存在する。
- INITIALIZATION 初期設定を記述する。
- AT SELECTION-SCREEN ?面などで入力された結果に?する?理を記述する。
- START-OF-SELECTION 主?理を記述する。
- END-OF-SELECTION(
?止?
) ?理結果を表示、出力する。
デ?タの宣言
[
編集
]
以下の方法で??を宣言することができる。
DATA : ??名 TYPE 型名 [LENGTH 長さ].
定?の宣言
[
編集
]
以下の方法で定?を宣言することができる。
CONSTANTS : 定?名 TYPE 型名 VALUE {値|IS INITIAL}.
?部テ?ブル(Internal Table)
[
編集
]
ABAPプログラム?部で、テ?ブルと同?の2次元配列のデ?タ構造を持たせたもの。主に、テ?ブルやロ?カルファイル?サ?バファイル等の外部デ?タを取得した際の格納先として使用される。定義およびデ?タの格納?利用??更?削除はABAPプログラムからのみ?行使用可能である。
標準テ?ブル(Standard table)
[
編集
]
プライマリテ?ブルインデックスで?部的に管理され、プライマリテ?ブルキ?(プライマリキ?)を一意では持たない?部テ?ブル。
ソ?トテ?ブル(Sorted table)
[
編集
]
プライマリテ?ブルインデックスで?部的に管理され、常にプライマリキ?に?ってソ?トされる?部テ?ブル。
ハッシュテ?ブル(Hashed table)
[
編集
]
行がハッシュアルゴリズムに?って?部に格納され、一意のハッシュキ?(ハッシュテ?ブルにおけるプライマリキ?)を使用してアクセスできる?部テ?ブル。
各?部テ?ブルの特?
テ?ブル名
|
アクセス方法
|
プライマリキ?での
アクセス時?答時間
|
その他
|
標準テ?ブル
(Standard Table)
|
?プライマリテ?ブルインデックス
?テ?ブルキ?(プライマリ?セカンダリ)
|
テ?ブル?エントリ?に比例
(線形?索)
|
?プライマリキ?が非一意(Non-Unique)のみ
|
ソ?トテ?ブル
(Sorted table)
|
?プライマリテ?ブルインデックス
?テ?ブルキ?(プライマリ?セカンダリ)
|
テ?ブル?エントリ?に
??的に比例
|
?プライマリキ?は一意、非一意ともに使用可
?常にプライマリキ?でエントリがソ?トされる
|
ハッシュテ?ブル
(Hashed table)
|
?テ?ブルキ?(プライマリ?セカンダリ)
?セカンダリテ?ブルインデックス
|
常に一定
(テ?ブル?エントリ?に
影響されない)
|
?プライマリテ?ブルインデックスが存在しない
?プライマリテ?ブルキ?は一意のみ
?セカンダリテ?ブルキ?を使用して
セカンダリテ?ブルインデックスを割り?て可能
|
トランザクションコ?ド
[
編集
]
SAPでは、EASY ACCESSやIMG以外に、各?理?面へ移動する方法として、トランザクションコ?ドが存在している。アドオン開?に用いられるトランザクションコ?ドの一部として、以下のものが存在している。
- SE09 移送オ?ガナイザ
- SE11 テ?ブルやデ?タエレメントなどの追加?照?
- SE24 クラスの作成?照?
- SE37 汎用モジュ?ルの作成?照?
- SE38 プログラムの作成
- SE80 オブジェクトナビゲ?タ
- SE81 アプリケ?ション階層
- SE84 リポジトリ情報システム
- SE91 メッセ?ジ
- SE93 トランザクションコ?ドの作成?照?
?連項目
[
編集
]