$show=home

ABAP Programlarında Hata Ayıklama (Debugging)

Alanların sayısı yönetilemez seviyelere ulaştığında ve işlemler giderek karmaşık hale geldiğinde, artık alanların çalışma sırasında doğru...

Alanların sayısı yönetilemez seviyelere ulaştığında ve işlemler giderek karmaşık hale geldiğinde, artık alanların çalışma sırasında doğru içeriğe sahip olduğundan emin olamayabilirsiniz. Neyse ki bundan emin olmanıza gerek yoktur çünkü sizin için bu görevi yürüten bir araç vardır: ABAP Debugger. Bu araç programlarınızı çeşitli hatalardan uzak tutmanızı sağlar, çünkü programın arka planına hızlıca göz atabilir ve program süreçlerini detaylı olarak takip edebilirsiniz.
ABAP ile ilgili yayınlar birbirlerini takip eden konular içerir. Tüm ABAP yayınlarının listesine ulaşmak için tıklayınız.
Şimdiye kadar, alanların ve bunların değişikliklerinin açık olduğunu kabul ettik. Dolayısyla ekrandaki  listeden sonuçları kontrol ettiniz ve karşılaştırdınız. Ancak tüm alan içerikleri liste çıktısında yer almaz ve özellikle programların karmaşıklığı sürekli artarken muhtemelen tüm girdilerin izini kafanızdan süremezsiniz. Bu durumda sizin için, herhangi bir kaynak kodunu detaylı analiz etmeye ve izlemeye izin veren ABAP Debugger programıyla tanışma zamanı gelmiş demektir.

Genel Bakış

ABAP Debugger program mantığını satır satır kontrol etmenizi, bir seferde bir komutu çalıştırmanızı, alan içeriğini ve sonucun program mantığını anında doğrulamanızı sağlar. Adım adım ilerleyen bu prosedür program sorunlarını gidermeyi çok daha kolaylaştırır.

Programı en başından itibaren izleyebilir, kritik ifadelerden önce kesme noktaları (breakpoints) ayarlayabilir ve önceden tanımlanmış içeriğe sahip alanlar tespit ettiğinde süreci durduran watchpoints'ler kullanabilirsiniz. ABAP Debugger çok daha yeteneklidir, ancak bizim burada anlattıklarımız tanıtım için yeterli olacaktır.
  • [message]
    • Klasik and Yeni ABAP Debugger
      • Sürüm 6.40 itibariyle, sürüm 4.7'den itibaren mevcut olan klasik ABAP Debugger ile çalışabilir ya da yeni ABAP Debugger'ı kullanabilirsiniz. Klasik Debugger izlenen program ile aynı pencere içinde çalışır, bu ise ileri düzey geliştiriciler için bazı kısıtlamalar doğurur. Yeni Debugger ayrı bir pencerede ayrı bir oturumda çalışır. İzlenen program bu oturum ile yakından bağlıdır. Debugger için ayrı oturum yaklaşımı ileri düzey geliştiriciler için çok daha fazla izleme ve analiz seçenekleri sağlar. Örneğin, program durumunu farklı perspektiflerden analiz edebilir, aynı anda birden çok araç kullanabilir ve sonuçları karşılaştırabilirsiniz.
Sitenin bu bölümü, başlangıç seviyesinde ABAP için gerekli olan ölçüde yeni Debugger'ı açıklamaktadır. Sürüm 7.0 itibariyle yeni ABAP Debugger varsayılan hata ayıklayıcısıdır. Sürüm 7.0 EHP2 itibariyle, yeni ABAP debugger bir dizi yeni özellik kazanmıştır. Bu yeni özelliklerin en önemlisi (layer-aware debugging) sonraki bölümlerde açıklanacaktır. Tabi ki, size uygun gelen yerlerde, klasik ve yeni debugger'lar arasında geçiş yapabilirsiniz. Bu ABAP Editor'de Utilities - Settings menüsü üzerinden  yapılabilir. ABAP Debugger'ı, ABAP Editörü için kullanıcıya özgü ayarlarda Debugging sekmesinde seçebilirsiniz (Şekil 1).
Şekil 1. ABAP Debugger Seçilmesi

ABAP Debugger'ın Tetiklenmesi

ABAP Workbench içinde Debugger'ı iki şekilde  başlatabilirsiniz. Program akışını -bizim örneğimizde, Z_MEMBERLIST01- hemen izlemek istiyorsanız, ABAP Editör başlangıç ekranından Hata ayıklama (Shift+F5) düğmesini kullanarak Debugger'ı başlatın. (Şekil 2)
Şekil 2. ABAP Hata Ayıklayıcısının Başlangıç Ekranından Tetiklenmesi
Sonra, ABAP Debugger ekranı görüntülenir. Sistem programdaki ilk yürütülebilir ifadeden önce durur. Bizim örneğimizde bu REPORT ifadesidir ve komutun yanında sarı okla gösterilir.
Şekil 3. Programın Debug Modda Yürütülmesi
ABAP Workbench içinden ABAP Debugger başlatmak için ikinci yöntem, dinamik veya statik olarak, kesme noktaları (breakpoints) kullanmaktır. Kesme noktalarını ABAP Editörde kaynak kodunda kendiniz ayarlayabilirsiniz. Statik kesme noktaları için, sadece kaynak koduna BREAK-POINT komutunu yazın. Dinamik kesme noktalarını kaynak koduna müdahale etmeden ayarlayabilir ve yönetebilirsiniz. Bu özellik, statik kesme noktalarına göre önemli bir avantaj sağlar.
  • [message]
    • Oturum Kesme Noktaları (Session Breakpoints)
      • Tüm dinamik kesme noktaları kullanıcıya özgüdür ve yalnızca mevcut oturum için geçerlidir. Yeni ABAP Debugger'da, bu kesme noktalarına oturum kesme noktaları (session breakpoints) denir. Oturum kesme noktaları diğer kullanıcılara görünmezler ve ilgili kullanıcı SAP sisteminde tekrar oturum açtığında veya oturum sona erdikten sonra kullanılamazlar.
ABAP Düzenleyicide 19. satırdan önce bir kesme noktası ayarlamak istediğinizi varsayalım. Bunu yapmak için, imleci 19. satıra konumlandırın ve Set/Delete Session Breakpoint tuşuna tıklayın (Ctrl+Shift+F12) (Şekil 4).
Şekil 4. Breakpoint Ayarlanması
Sistem ABAP Düzenleyicide ilgili satırın yanında STOP simgesi görüntüler. (Şekil 5) Şimdi, mevcut oturum sırasında programı bu modda veya diğer herhangi bir modda başlatırsanız, sistem (STOP simgesi ile belirtilen) komuttan önce durur, hata ayıklama moduna geçer ve sonraki talimatlar için bekler. (Şekil 6) Artık yavaş yavaş ve tasarlayarak sistemdeki tüm alanların ve tablespace'lerin içeriğini kontrol edebilirsiniz.
Şekil 5. ABAP Düzenleyicide Session Breakpoint
Şekil 6. Sistem Debug Modda Breakpoint Öncesinde Durur

YORUM

Ad

/N/SAPTR/KDVB,1,AB03,1,AB08,1,ABAP,24,ABAVN,1,AFAB,1,AR02,1,AR03,1,AS01,1,AS02,2,AS03,1,AS11,1,AW01N,1,CO Kullanıcı,1,CO Uyarlama,1,CONCATENATE,1,CONDENSE,1,e-book,3,EC01,1,Excel,3,F-02,7,F-22,1,F-32,1,F-43,1,F-44,1,F-90,1,F-92,1,F110,2,FAGLL03,1,FB01,1,FB02,1,FB03,2,FB08,2,FB50,1,FB60,3,FB70,2,FBCJ,8,FBCJ3,1,FBCJC0,1,FBCJC1,1,FBCJC2,1,FBKP,1,FBL1N,3,FBL3N,1,FBL5N,4,FBN1,1,FBRA,2,FBV0,2,FBV2,1,FBV3,1,FBZP,1,FD01,1,FD08,1,FD09,1,FGI3,1,FI Kullanıcı,73,FI Uyarlama,41,FI01,1,FICO,1,FIT_DUE_DATE_SEL,1,FK01,1,FK02,1,FK08,1,FK09,1,FK10N,1,FS00,2,FS10N,1,FTXP,1,Gallery,4,LSMW,1,MIRO,2,Muhasebe,1,Nasıl,10,OB05,1,OB13,2,OB16,1,OB22,1,OB29,2,OB37,1,OB40,1,OB41,1,OB45,1,OB52,2,OB53,1,OB62,1,OB96,1,OBA0,1,OBA3,1,OBA4,1,OBA7,2,OBAR,1,OBAS,2,OBB8,1,OBB9,1,OBBO,1,OBBP,1,OBBU,1,OBC4,2,OBC5,1,OBCL,1,OBD2,1,OBD3,1,OBD4,1,OBWS,1,OBWW,1,OBXR,1,OBXT,1,OBXY,1,OBY6,1,OBYM,1,OBYN,1,OBYR,1,OKB2,1,OKB3,1,OLMRLIST,1,OX03,1,OX15,1,PFCG,1,REPLACE,1,S_ALR_87010175,1,S_ALR_87011965,1,S_ALR_87011990,1,S_ALR_87012004,1,S_ALR_87012050,1,S_ALR_87012052,1,S_ALR_87012082,1,S_ALR_87012090,1,S_ALR_87012172,1,S_ALR_87012183,1,S_ALR_87012357,1,SAP,3,SE11,5,SE38,6,SE71,1,SHCD,1,SHIFT,1,SKIP,1,SM30,1,SM35,1,SPLIT,1,Stopaj,3,ULINE,1,VN01,1,VOFA,1,WRITE,1,XD01,1,XDN1,1,XKN1,1,
ltr
item
SAP Muhasebe: ABAP Programlarında Hata Ayıklama (Debugging)
ABAP Programlarında Hata Ayıklama (Debugging)
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjraFg45BTG_W4CKQw0L2XGISoPtZwANud17Xa_FrM2kBCaavA1iLMx3Oj9a3iEo_IUb30nMsi5IGfBxQ8k61_CWXPeNIf8VAsormw4VpfCLJYIIwtTa8L3ZmhhAKfQ-PygGBwVaUtfKz0/s1600/Depositphotos_95681034_m-2015.jpg
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjraFg45BTG_W4CKQw0L2XGISoPtZwANud17Xa_FrM2kBCaavA1iLMx3Oj9a3iEo_IUb30nMsi5IGfBxQ8k61_CWXPeNIf8VAsormw4VpfCLJYIIwtTa8L3ZmhhAKfQ-PygGBwVaUtfKz0/s72-c/Depositphotos_95681034_m-2015.jpg
SAP Muhasebe
https://www.sapmuhasebe.com/2017/11/abap-programlarnda-hata-ayklama.html
https://www.sapmuhasebe.com/
https://www.sapmuhasebe.com/
https://www.sapmuhasebe.com/2017/11/abap-programlarnda-hata-ayklama.html
true
2532429962024234885
UTF-8
Loaded All Posts Not found any posts TÜMÜNÜ GÖSTER Devamı Yanıtla Cancel reply Sil By Ana Sayfa SAYFALAR KAYITLAR Tümünü Göster BENZER YAYINLAR ETİKET ARŞİV SEARCH TÜM KAYITLAR İsteğinize Uygun Kayıt Bulunamadı Ana Sayfaya Dön Pazar Pazartesi Salı Çarşamba Perşembe Cuma Cumartesi Paz Pzt Sal Çrş Prş Cum Cmt Ocak Şubat Mart Nisan Mayıs Haziran Temmuz Ağustos Eylül Ekim Kasım Aralık Oca Şub Mar Nis Mayıs Haz Tem Ağu Eyl Eki Kas Ara az önce 1 dakika önce $$1$$ minutes ago 1 saat önce $$1$$ hours ago Dün $$1$$ days ago $$1$$ weeks ago 5 haftadan fazla Takipçiler Takip Et THIS PREMIUM CONTENT IS LOCKED STEP 1: Share to a social network STEP 2: Click the link on your social network Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy Table of Content