Örneklerle SAP ABAP Tablo Kontrolü

Anonim

Tablo kontrolleri ve adım döngüleri, Screen Painter'da bir ekrana eklediğiniz ekran tablosu görüntüsü nesneleridir.
Programlama açısından, tablo kontrolleri ve adım döngüleri neredeyse tamamen aynıdır. Tablo kontrolleri, verileri masaüstü uygulamalarındaki tablolarla ilişkili görünüm ve izlenimle görüntüleyen basitçe geliştirilmiş adım döngüleridir.
Tablo kontrolleriyle kullanıcı şunları yapabilir:

  • Tabloda dikey ve yatay olarak ilerleyin
  • Bir sütunun genişliğini yeniden boyutlandırın
  • Bir alan içinde ilerleyin (alan içeriği alandan daha geniş olduğunda)
  • Tablo satırlarını veya sütunlarını seçin
  • Sütun sırasını yeniden sıralayın
  • Mevcut ekran ayarlarını ileride kullanmak üzere kaydedin

Tablo denetimleri ayrıca tablolara bakmayı ve kullanmayı kolaylaştıran özel biçimlendirme özellikleri (bazıları otomatik, bazıları isteğe bağlı) sunar. Masa Kontrolü şunları sağlar:

  • kullanıcı pencereyi yeniden boyutlandırdığında otomatik tablo yeniden boyutlandırma (dikey ve yatay)
  • satırlar arasında ve sütunlar arasında ayırıcı çizgiler (dikey ve yatay)
  • tüm sütunlar için sütun başlığı alanları

Adım döngülerinin bir özelliği, tablo satırlarının ekrandaki birden fazla satıra yayılabilmesidir. Öte yandan, bir tablo kontrolünün bir satırı her zaman tek bir satırda yer almalıdır (kaydırma mümkün olsa da).
Genel olarak, tablo kontrolü tarafından sağlanan özelliklerin çoğu, sisteminizin SAPgui ön ucu tarafından yerel olarak işlenir, bu nedenle bunları kendiniz programlamanıza gerek yoktur. Bunun tek dikkate değer istisnası dikey kaydırmadır .
Örnek (İşlem TZ60)


Sözdizimi
ABAP programlarında tablo kontrollerini işlemek için, aşağıdaki ifadeyi kullanarak her tablo kontrolü için programın bildirim kısmında bir kontrol bildirmelisiniz:

EKRAN  KULLANILARAK KONTROLLER  TÜR TABLOSU GÖRÜNÜMÜ

burada , ABAP programında bir ekrandaki tablo kontrolünün adıdır. Kontrol, ABAP programının tablo kontrolünün niteliklerini okumasına ve kontrolü etkilemesine izin verir. Burada , tablonun başlangıç ​​değerlerinin yüklendiği ekran numarasıdır.
Bir tablo kontrolü için İmleç Konumu aşağıdaki şekillerde ayarlanabilir:
PBO'da imleci bir tablo kontrolünün belirli bir satırının belirli bir alanına ayarlayabilirsiniz.

İMLEÇ ALANINI AYARLA  ÇİZGİ 
 [OFFSET ]

Opsiyonel OFSET ilavesini kullanarak, İmleç Konumunu Ayarlama bölümünde açıklandığı gibi alana imleç ofsetini girebilirsiniz.
PAI'de mevcut imleç konumunu okuyabilirsiniz.

İMLEÇ ALANI  ÇİZGİSİNİ AL 

İmleç Konumunu Bulma başlığı altında verilen bilgilere ek olarak, alanı tablonun hangi satırının imlecin o anda üzerinde olduğunu kontrol ettiği hakkında bilgi içerir. Ayrıca kullanabilirsin

İMLEÇ ÇİZGİSİNİ AL 
.

tablo kontrolünün sırasını belirlemek için. SY-SUBRC, imlecin bir tablo kontrolünün bir satırına yerleştirilip yerleştirilmediğini kontrol etmenizi sağlar.
Dahili tablonun ilgili satırını almak için:

CURSOR 
 satırını GET.ind = 
 -top_line + 
 - 1.Tablo  indeksini okuyun.

Sistem değişkeni stepl - bir döngüdeki geçerli tablo satır dizinini içerir… endloop. Loopc - tabloda görünen satır sayısını içerir
Bir tablo kontrolü oluşturmak için 1.
Ekranınıza bir tablo kontrol öğesi ekleyin 2. Tablo kontrolüne
bir isim verin. ABAP programında aynı yapıya sahip bir yapı bildiriniz (CONTROLS tipi TABLEVIEW KULLANILARAK EKRAN )
3. Alanlar oluşturmak için Dict./Program alanları fonksiyonuna gidin.

  • Alanlarını istediğiniz yapının adını girin. (Programınızın sözlüğünden seçmesini istiyorsanız ilgili butona tıklayın).
  • Alan listesinde istediğiniz alanları seçin ve Tamam'ı seçin.
  • Tablo kontrol alanına tıklayın

Bir seçim sütunu istiyorsanız, özniteliklerdeki uygun onay kutusunu işaretleyin ve ona bir isim verin. Alanı ABAP programında oluşturun.
PBO'da ifadeye sahip olmalısınız

KONTROL  KULLANARAK  konumunda DÖNGÜ.SON DÖNGÜ.

PAI'da sahip olmalısın.

 'da DÖNGÜ.SON DÖNGÜ.

Veri aktarımının ekran ve dahili tablo arasında gerçekleştiği döngülerin içindedir.Dahili tabloyu doldurduğunuzda, denetimdeki toplam satır sayısını saklamak için DESCRIBE TABLE LINES satırlarını kullanın. veri aktarımının ne zaman gerçekleştiğini kontrol etmek için kullanılabilir
Bireysel hücrelerin özniteliklerini değiştirmek için PBO'daki SCREEN tablosunu geçici olarak değiştirin. CONTROLS ifadesiyle oluşturulan yapının özniteliklerini değiştirebilirsiniz.

 -fixed_cols vb. kontrolün özellikleridir -cols-index vb. sütunların özellikleridir. -cols-screen-invisible vb. her bir sütunun ekran özellikleridir.