Variabel diberi nama objek data yang digunakan untuk menyimpan nilai dalam area memori yang dialokasikan dari sebuah program. Seperti namanya, pengguna bisa mengubah isi variabel dengan bantuan ABAP statements. Setiap variabel dalam ABAP memiliki tipe tertentu, yang menentukan ukuran dan tata letak memori variabel
Anda harus mendeklarasikan semua variabel sebelum bisa digunakan. Bentuk dasar deklarasi variabel adalah:
Anda harus mendeklarasikan semua variabel sebelum bisa digunakan. Bentuk dasar deklarasi variabel adalah:
DATA <f> TYPE <type> VALUE <val>
Disini <f> menentukan nama sebuah variabel. Nama variabel bisa sampai 30 karakter. <type> menentukan jenis variabel. Setiap tipe data dengan atribut teknis yang ditentukan sepenuhnya dikenal sebagai <type>. Nilai <val> menentukan nilai awal dari variabel <f>. Jika Anda menentukan variabel fixed-length dasar, DATA statement secara otomatis akan mengisi nilai variabel dengan nilai awal spesifik tipe. Nilai lain yang mungkin untuk <val> dapat berupa klausa literal, konstanta, atau klausa eksplisit, seperti INITIAL.
Baca Juga: Tutorial Lengkap SAP ABAP
Baca Juga: Tutorial Lengkap SAP ABAP
Jenis variabel yang tersedia di ABAP. Ada tiga jenis variabel dalam ABAP -
- Static Variable
- Referensi Variable
- System Variable
Static Variable
Static Variable dinyatakan dalam subrutin, modul fungsi, dan metode statis. Masa hidup terkait dengan konteks deklarasi tersebut. Dengan pernyataan 'CLASS-DATA', Anda dapat mendeklarasikan variabel di dalam class Statement 'PARAMETERS' dapat digunakan untuk mendeklarasikan objek data elementer yang terkait dengan bidang input pada layar pilihan. Anda juga dapat mendeklarasikan tabel internal yang terhubung ke bidang masukan pada layar pilihan dengan menggunakan pernyataan 'SELECT-OPTIONS'. Berikut adalah konvensi yang digunakan saat menamai variabel- Anda tidak dapat menggunakan karakter khusus seperti "t" dan "," untuk memberi nama variabel.
- Nama objek data yang telah ditentukan tidak dapat diubah.
- Nama variabel tidak boleh sama dengan kata kunci ABAP atau klausa lainnya.
- Nama variabel harus menyampaikan makna variabel tanpa perlu komentar lebih lanjut.
Berikut program bagaimana cara mendeklarasikan variabel dengan menggunakan statemen PARAMETERS :
REPORT ZTest123_01. PARAMETERS: NAME(10) TYPE C, CLASS TYPE I, SCORE TYPE P DECIMALS 2, CONNECT TYPE MARA-MATNR.Di sini, NAME mewakili parameter 10 karakter, CLASS menentukan parameter tipe integer dengan ukuran default dalam satuan byte, SCORE mewakili parameter dengan nilai hingga dua desimal, dan CONNECT mengacu pada tipe ABAP
Kode di atas menghasilkan output sebagai berikut:
Referensi Variable Sintaks untuk mendeklarasikan variabel referensi adalah sebagai berikut:
DATA TYPE REF TO VALUE IS INITIAL.
- REF TO addition mendeklarasikan variabel referensi ref
- Spesifikasi setelah REF TO menentukan tipe statis dari variabel referensi.
- Tipe statis membatasi kumpulan objek yang dapat merujuk oleh referensi.
- Tipe dinamis dari variabel referensi adalah tipe data atau kelas yang berhubungan
Contoh:
CLASS C1 DEFINITION. PUBLIC SECTION. DATA Bl TYPE I VALUE 1. ENDCLASS. DATA: Oref TYPE REF TO C1 , Dref1 LIKE REF TO Oref, Dref2 TYPE REF TO I . CREATE OBJECT Oref. GET REFERENCE OF Oref INTO Dref1. CREATE DATA Dref2. Dref2→* = Dref1→*→Bl.Dalam kode di atas, referensi objek Oref dan dua variabel referensi data Dref1 dan Dref2 dideklarasikan. Kedua variabel referensi data sepenuhnya diketik dan dapat dereferenced menggunakan operator dereferencing → * pada posisi operan
System Variable
- System Variable ABAP dapat diakses dari semua program ABAP.
- Bidang ini benar-benar diisi oleh lingkungan run-time.
- Nilai dalam bidang ini menunjukkan keadaan sistem pada suatu titik waktu tertentu.
- Anda dapat menemukan daftar lengkap variabel sistem di tabel SYST di SAP.
- Masing-masing bidang struktur SYST dapat diakses dengan menggunakan "SYST-" atau "SY-".
Contohnya:
REPORT Z_Test123_01.
WRITE:/'SY-ABCDE', SY-ABCDE,
/'SY-DATUM', SY-DATUM,
/'SY-DBSYS', SY-DBSYS,
/'SY-HOST ', SY-HOST,
/'SY-LANGU', SY-LANGU,
/'SY-MANDT', SY-MANDT,
/'SY-OPSYS', SY-OPSYS,
/'SY-SAPRL', SY-SAPRL,
/'SY-SYSID', SY-SYSID,
/'SY-TCODE', SY-TCODE,
/'SY-UNAME', SY-UNAME,
/'SY-UZEIT', SY-UZEIT.
Outpunya adalah:
SY-ABCDE ABCDEFGHIJKLMNOPQRSTUVWXYZ
SY-DATUM 12.09.2015
SY-DBSYS ORACLE
SY-HOST sapserver
SY-LANGU EN
SY-MANDT 800
SY-OPSYS Windows NT
SY-SAPRL 700
SY-SYSID DMO
SY-TCODE SE38
SY-UNAME SAPUSER
SY-UZEIT 14:25:48
EmoticonEmoticon