LİSTEME KOMUTLARI

Listeleme komutları kullanılarak metin çıktısı oluşturmak mümkündür.

WRITE

Veri nesnesinin içeriğini biçimlendirmek ve yazdırmak için kullanılır.

WRITE {[AT] [/][pozisyon][(uzunluk|*|**)]} veri_nesnesi

[UNDER diger_veri_nesnesi]

[NO-GAP]

[dahili_bicimlendirme_secenekleri]

[harici_bicimlendirme_secenekleri]

[liste_elemanları]

[QUICKINFO bilgi].

Ekler:

AT: Yazdırma pozisyonunu ve uzunluğunu belirtmek için kullanılır.

/: Bir sonraki satıra geçmek için kullanılır.

pozisyon: Yazdırma pozisyonu belirlemek için kullanılır. Tamsayı değerdir.

uzunluk: Veri nesnesinin çıktı uzunluğunu belirtir. Tamsayı değerdir.

* | **: Farklı veri tipleri için farklı veri tipi uzunluğuna bağlı seçenekler sunar.

Veri_nesnesi: Yazdırılacak veri nesnesidir.

UNDER diger_veri_nesnesi: Direkt olarak diger_veri_nesnesi ile belirtilen veri nesnesinin altına yazdırmak için kullanılır.

NO-GAP: İmleç direkt olarak çıktı bitimine konumlandırılır. Boşluk bırakılmaz.

dahili_bicimlendirme_secenekleri: Çıktıyı biçimlendirmek için ek seçenekler içerir.

… [LEFT-JUSTIFIED|CENTERED|RIGHT-JUSTIFIED]

{ { [EXPONENT exponent]

[NO-GROUPING]

[NO-SIGN]

[NO-ZERO]

[CURRENCY para_birimi]

{ { [DECIMALS ondalik_hane]

[ROUND olcek] }

| [UNIT birim] } }

| { [ENVIRONMENT TIME FORMAT]

[TIME ZONE zaman_dilimi]

[STYLE stil] }

[USING { {NO EDIT MASK}|{EDIT MASK maske} }]

[ DD/MM/YY | MM/DD/YY

| DD/MM/YYYY | MM/DD/YYYY

| DDMMYY | MMDDYY

| YYMMDD ] … .

harici_bicimlendirme_secenekleri: Çıktıyı biçimlendirmek için ek seçenekleri belirtir.

… [COLOR {{{color [ON]}|OFF}|{= renk}}]

[INTENSIFIED [{ON|OFF}|{= flag}]]

[INVERSE [{ON|OFF}|{= flag}]]

[HOTSPOT [{ON|OFF}|{= flag}]]

[INPUT [{ON|OFF}|{= flag}]]

[FRAMES [{ON|OFF}|{= flag}]]

[RESET] … .

list_elements: Özel liste elemanları kullanılmasını sağlar.

… {AS CHECKBOX}
| {AS ICON}
| {AS SYMBOL}
| {AS LINE} … .

QUICKINFO bilgi: Fare imleci veri nesnesi üzerine konumlandırıldığında görüntülenecek bilgi metnidir. 40 karakter uzunluğunda olabilir.

WRITE Komutu Çıktı Biçimleri

Bütün veri tipleri için geçerli olanlar.

Opsiyon Fonksiyonu
LEFT-JUSTIFIED Çıktıyı sola dayalı olacak şekilde biçimlendirir.
CENTERED Çıktıyı ortalanmış olarak biçimlendirir.
RIGHT-JUSTIFIED Çıktıyı sağa dayalı olacak şekilde biçimlendirir.
UNDER diger_veri_nesnesi Çıktı direkt diger_veri_nesnesi alanının altından başlar.
NO-GAP İmleç direkt olarak çıktı bitimine konumlandırılır. Boşluk bırakılmaz.
USING EDIT MASK maske Çıktıya şablon uygulamak için kullanılır.
USING NO EDIT MASK ABAP Dictionary’ de belirlenmiş bir formatın devralınmamasını sağlar.
NO-ZERO Eğer bir alan sadece sıfır içeriyorsa, sıfırlar boşluk (space) ile değiştirilir. C ve N tipi alanlar için baştaki sıfırlar otomatik olarak boşlukla karakteri ile değiştirilir.
 
Sayısal veri tipi için geçerli olanlar.

Opsiyon Fonksiyon
NO-SIGN Nümerik alanın işaretlerini kaldırır.
DECIMALS ondalik_hane Ondalık hane sayısını belirtmek için kullanılır.
EXPONENT exponent F tipi alanlar için, üs değeri exponent ile ayarlanır.
ROUND olcek P tipi alanlar 10**(-olcek) ile çarpılır daha sonra yuvarlanır.
CURRENCY para_birimi TCURX tablosuna göre para alanlarını biçimler
UNIT birim P tipi alanlar için T006 tablosundaki birime göre desimal alanları sabitler.
NO-GROUPING S, i, p, decfloat16, decfloat34 veri tiplerini biçimlendirirken binlik ayracı gizler.

 

Tarih veri tipi için geçerli olanlar biçimlendirmeler.

Opsiyon Fonksiyon
DD/MM/YY Kullanıcının tanımında olan ayraça göre gün, ay, yıl (son iki hane) şeklinde biçimler.
MM/DD/YY Kullanıcının tanımında olan ayraca göre ay, gün, yıl (son iki hane) şeklinde biçimler.
DD/MM/YYYY Kullanıcının tanımında olan ayraça göre gün, ay, yıl şeklinde biçimler.
MM/DD/YYYY Kullanıcının tanımında olan ayraça göre ay, gün, yıl şeklinde biçimler.
DDMMYY Ayraç olmadan, gün, ay, yıl şeklinde biçimler.
MMDDYY Ayraç olmadan, ay, gün, yıl şeklinde biçimler.
YYMMDD Ayraç olmadan, yıl (son iki hane), ay, gün şeklinde biçimler.
 

WRITE İfadesi Biçimlendirme Örnekleri

1. Bir sonraki satıra geçmeyi ve pozisyon kullanımını gösteren örnek.
WRITE ‘İlk satır.’.
WRITE ‘Hala ilk satır.’.
WRITE / ‘İkinci satır.’.
WRITE /13 ‘Üçüncü satır’.

2. AT eki kullanımını gösteren örnek.

DATA: uzunluk  TYPE i VALUE 10,
pozisyon  TYPE i VALUE 8,
metin(10) TYPE c VALUE ‘1234567890’.
WRITE ‘Metin ———— boşlukta belirecek.’.
WRITE AT pozisyon(uzunluk) metin.

3. Farklı veri tiplerine sahip nesnelerin uzunluk eki kullanımını gösteren örnek.

DATA: numerik   TYPE i VALUE  1234567890,
metin(10) TYPE c VALUE ‘abcdefghij’.
WRITE: (5) numerik, /(5) metin.

Nümerik alan sol taraftan kırpılmıştır. Alan uzunluğu yetmediği için ilk karakteri yıldız (*) yapılmıştır. Metin alanında ise kırpma işlemi sağ taraftan yapılmıştır.

4. Sola, sağa dayalı ve ortalanmış çıktı örnekleri.

DATA gv_sayi TYPE p DECIMALS 2 VALUE ‘123.56’.
WRITE ‘Sayısal değer’.
WRITE / gv_sayi.
WRITE / ‘Sola dayalı sayısal değer’.
WRITE / gv_sayi LEFT-JUSTIFIED.
WRITE /(80) ‘Ortalanmış yazı’ CENTERED.
WRITE /(80) ‘Sağa Dayalı yazı’ RIGHT-JUSTIFIED.

5. Under parametresi kullanımı.

DATA: a TYPE c LENGTH 20,
b TYPE c LENGTH 20.
a = ‘birinci değişken’.
b = ‘ikinci değişiken’.
WRITE: a, b.
WRITE: /40 a,
/ b UNDER a.

6. NO-GAP örneği.

DATA : gv_metin1(9) TYPE c VALUE ‘İlk metin’,
gv_metin2(30) TYPE c VALUE ‘İkinci metin’.

WRITE: gv_metin1, gv_metin2.
WRITE:/ gv_metin1 NO-GAP, gv_metin2.

7. USING EDIT MASK örneği.

DATA gv_saat(10) TYPE c.
gv_saat = ‘203020’.
WRITE / gv_saat.
WRITE / gv_saat USING EDIT MASK ‘__:__:__’.

8. Değişkenin başındaki sıfırları kaldıran bir örnek.

DATA: a TYPE c LENGTH 10,
b TYPE c LENGTH 10.
a = ‘0023’.
b = ‘0001’.
WRITE : /10 a NO-ZERO,
/10 b NO-ZERO.

9. No-SIGN ve DECIMALS örnekleri

DATA : gv_number TYPE p DECIMALS 4 VALUE ‘-22.2445’.
WRITE :/ ‘Değişkenin ilk hali’, 25 gv_number RIGHT-JUSTIFIED.
WRITE :/ ‘İşareti kaldırıldı’, 25 gv_number NO-SIGN RIGHT-JUSTIFIED.
WRITE :/ ‘İki ondalık hane’, 25 gv_number DECIMALS 2 RIGHT-JUSTIFIED.

10. Renk COLOR biçimlendirme ekini kullanan örnek.

WRITE / ‘Arka plan’ COLOR COL_BACKGROUND.
WRITE / ‘Başlık’ COLOR COL_HEADING.
WRITE / ‘Normal’ COLOR COL_NORMAL.
WRITE / ‘Toplam’ COLOR COL_TOTAL.
WRITE / ‘Anahtar’ COLOR COL_KEY.
WRITE / ‘Pozitif’ COLOR COL_POSITIVE.
WRITE / ‘Negatif yazı’ COLOR COL_NEGATIVE.
WRITE / ‘Grup’ COLOR COL_GROUP.
SKIP.
WRITE / ‘Metin Renk kodu 1’ COLOR 1.
WRITE / ‘Metin Renk kodu 2’ COLOR 2.
WRITE / ‘Metin Renk kodu 3’ COLOR 3.
WRITE / ‘Metin Renk kodu 4’ COLOR 4.
WRITE / ‘Metin Renk kodu 5’ COLOR 5.
WRITE / ‘Metin Renk kodu 6’ COLOR 6.
WRITE / ‘Metin Renk kodu 7’ COLOR 7.

11. Tarih biçimlendirmelerini gösteren örnek.

DATA A TYPE D VALUE ‘20130313’.
WRITE / A.
WRITE / A DD/MM/YY.
WRITE / A MM/DD/YY.
WRITE / A DD/MM/YYYY.
WRITE / A MM/DD/YYYY.
WRITE / A DDMMYY.
WRITE / A MMDDYY.
WRITE / A YYMMDD.

12. Checkbox kullanımını gösteren örnek.

DATA: cbox1 TYPE c LENGTH 1,
cbox2 TYPE c LENGTH 1,
cbox3 TYPE c LENGTH 1.
cbox1 = ‘X’.
WRITE:/ ‘Checkbox1’, cbox1 AS CHECKBOX,
/ ‘Checkbox2’, cbox2 AS CHECKBOX,
/ ‘Checkbox3’, cbox3 AS CHECKBOX.

13. Çizgi kullanımını gösteren örnek.

ULINE AT /(21).
DO 5 TIMES.
WRITE:/ sy-vline, ‘Satır’, sy-index, sy-vline.
ENDDO.
ULINE AT /(21).

Sembol ve Simge Yazdırma

Sembol ve ikon yazdırmak için <SYMBOL> veya <IKON> include’ unun dahil edilmesi gereklidir veya sadece <LIST> include’ u dahil edilmelidir. Kullanımı aşağıdaki şekildedir.

WRITE <symbol-name> AS SYMBOL.

WRITE <icon-name> AS ICON.

WRITE İfadesi Sembol ve Simge Yazdırma Örneği

1. Telefon sembolü ve alarm simgesi yazdıran örnek.

INCLUDE <symbol>.
INCLUDE <icon>.
WRITE:  ‘Telefon sembolü’, sym_phone AS SYMBOL.
SKIP.
WRITE:/ ‘Alarm simgesi’, icon_alarm AS ICON.

BOŞLUK SATIRLARI ve ÇİZGİLER

ULINE

Alt çizgi ekler. AT anahtar kelimesi ile aldığı parametreler WRITE komutundakiler ile aynıdır.

ULINE {[AT] [/][pozisyon][(uzunluk)]} [NO-GAP].

[AT]: Çizgi belirtilen sütun pozisyonundan başlatmak için kullanılır.

[/]: Yeni bir satıra geçmek için kullanılır.

[pozisyon]: Pozisyonu (sütun numarası) gösteren numaradır.

[(uzunluk)]: Değişkenin çıktı uzunluğunu belirtir.

ULINE Örnekler

1. ULINE kullanımını gösteren örnek.

ULINE.
WRITE AT 12 ‘Başlık metni’.
ULINE AT /10(15) .
WRITE AT :/12  ‘Detay metni 1’,
/12  ‘Detay metni 2’.
ULINE AT /10(15) .
ULINE.

DİKEY ÇİZGİ

WRITE [AT [/][<pos>]] SY-VLINE.

Veya

WRITE [AT [/][<pos>]] ‘|’.

Cümleleri ile dikey çizgi elde yazdırılabilir.

SKIP

Belirtilen satır kadar kursor aşağıya gider.

SKIP [<n>].

[<n>]: Eğer bu parametre verilmezse kursor bir satır aşağıya gider.

SKIP TO LINE

Kursor belirlenen satıra gider.

SKIP TO LINE <n>.

<n>: Satır numarası