merhaba, bu yazımda abap ile xml dosyasını nasıl parse edeceğimizi anlatacağım. öncelikle örnek olarak belirlediğimiz tcmb‘nin bize sağladığı today.xml dosyasını cl_http_client sınıfını kullanarak içeriğini string formatında çekeriz. daha sonra bu veriyi xstring formatına çevirip abap xml parser‘ın kullanımına hazır hale getiririz. if_ixml_parser arayüzünün parse metodunu kullanarak xml verimizin hiyerarşik yapısını çıkarmış oluruz. burada bir hata çıkarsa xml dosyası standartlara uygun değil demektir. bu adımdan sonra tek yapmamız gereken bize gerekli …
sap abap seçim parametreleri ve alv grid bir arada dinamik ekran tasarımı
istersek seçim ekranından “AT SELECTION-SCREEN OUTPUT” yardımıyla “EXECUTE” butonunu kaldırabiliriz ve raporumuzun “AT SELECTION-SCREEN” yardımıyla “ENTER” tuşuna basıldığında oluşmasını sağlayabiliriz. daha sonra rapor alv gridimizin büyüklüğünü belirleyip bir “DOCKING CONTAINER” oluşturabiliriz. istersek bu container’ı “SPLITTER CONTAINER” ile parçalara ayırabiliriz. ama ben aşağıdaki örnekte bu “DOCKING CONTAINER” içerisine tek parça halinde bir alv grid ekledim. alv gridime “TOOLBAR” ekleyip buradan basılacak herhangi bir butonu handle etmek için ise “EVENT LISTENER” oluşturdum. …
sap abap programlarını indirme programı (download sap program)
merhabalar, vakit bulup da anlatılacaklar listeme bir türlü el atamadım ama şimdilik bir abap danışmanının işini en çok kolaylaştıracak olan sistemde yapılmış örnek programları bilgisayarınıza yükleyebileceğiniz programı aşağıda paylaşıyorum. güle güle kullanın!
sap işlem kodu ile user exit bulma ve user exit implementasyonu (badi, enhancement, program exit, bte, workflow)
sap’de eğer standart kodların çalışmasına müdahele etmek istiyorsak bunu user exit kullanarak yapabiliriz. sap bize standart akışa müdahele edebileceğimiz çeşitli noktalar sunmuştur fakat bunu mümkün olduğunca karışık yapmıştır ki herkes olaya müdahil olamasın : ) standart akışa 4 farklı yöntemle müdahele edebiliriz bunlar; badi (business add ins) implementasyonu, enhancement implementasyonu (CMOD), program exit (SE38), business transaction event (FIBF), workflow (SWO1) dur. aşağıda vermiş olduğum Z_USEREXIT abap raporunu sap sisteminize yükleyerek bir …
sap malzeme ana verisine alan ekleme – mm01-mm02-mm03 screen exit implementasyonu
bu yazımda sap’de malzeme ana verisine ek alan açıp bu ek alanları malzeme ana verileri bakım ekranlarına yerleştirmeyi baştan sona bütün adımlarıyla anlatacağım. şu ana kadar aramalarım sonucunda bu konuyu tam anlamıyla anlatan bir kaynağa henüz rastlamadım ve bu konuya değinmem gerektiğini düşündüm. hemen konuya hızlıca girecek olursam öncelikle SE11 işlem koduyla MARA tablosuna girip “append structure” butonuna basarak yeni bir Z’li structure yaratıyoruz. Ve bu yapıya eklemek istediğimiz alanları …
sap abap bcs ile mail gönderme fonksiyonu (business communication service)
abap programlarımızda birden çok kişiye mail gönderebileceğimiz, mail içerisine birden çok ek dosya ekleyebileceğimiz bir mail gönderme fonksiyonu. bu fonksiyonda business communication service kullanılmıştır. nesne tabanlı abap programlamaya güzel bir örnektir.
sap abap ile ole nesnesi kullanılarak gelişmiş excel dosyası oluşturma (creating an advanced excel file with abap ole object)
abap ile gelişmiş seviyede bir excel dosyası oluşturmak istiyorsak abap ole nesnesini kullanırız. ole nesnesi kullanarak excel dosyasındaki her hücreyi tek tek biçimlendirebiliriz. istersek yazı tipini değiştirebiliriz, istersek hücreyi renklendirebiliriz, istersek hücre genişliğini ayarlayabiliriz hatta bir hücreye formül bile atayabiliriz. mesela aşağıdaki örnekte kod yardımıyla 3 adet malzeme oluşturdum ve bunların fiyatlarının toplamını satırların bitişine formül ile yazdırdım. bazı hücreleri koyu yaparken bazılarının arka plan renklerini değiştirdim. REPORT zexcel_ole. …
sap smartform print preview üzerinden pdf oluşturma (create pdf from print preview of smartform)
sap sisteminde oluşturulan çıktıların pdf olarak alınması için genelde abap danışmanına kod yazdırılır. fakat çıktı smartform ile oluşturulmuş ise çıktıyı pdf olarak görüntülemek ve kaydetmek için kod yazmaya gerek yoktur. çıktının öngörünümü aldığımız ekranda aşağıdaki örnekte olduğu gibi işlem kodu yazdığımız alana PDF! yazarsak otomatik olarak pdf öngörünüm ekranı açılır. ve bu ekrandan çıktıyı pdf olarak kaydedebiliriz.
sap abap fonksiyonu ile web servis yaratma ve soap ile bu web servise ulaşma (creating web service in abap with rfc)
sap haricinde herhangi bir dış kaynaktan sap verisi çekmek istiyorsak web servise ihtiyaç duyarız. sap’de web servis üretmek için iki yol vardır. bunlardan birincisi ve sap’nin bizden beklediği SOAMANAGER işlem kodu yardımıyla web servis üretmektir. fakat ben daha pratik olan diğer yöntemi anlatacağım. öncelikle SE37 işlem kodu ile ZSD_F_GET_MATNR diye bir remote enabled fonksiyon yaratıyoruz. daha sonra import parametresi olarak malzeme numarası alıp export parametresi olarak mara yapısını kullanıcıya gönderiyoruz. …
sap abap malzeme ana verisindeki ekleri listeleme (list material master attachments)
sap’de mm03 ile malzeme anaverisine girip malzemenin üzerinde gördüğümüz eklerin listesini program ile çekmek için aşağıdaki kodu kullanabilirsiniz. ‘BUS1001006’ malzeme ana verisine ait anahtardır. isterseniz kendi ek mekanizmanızı SWO1 işlem kodundan z’li bir business object oluşturarak yaratabilirsiniz. eğer bu yöntemi uygularsanız ‘BUS1001006’ yerine oluşturduğunuz z’li kodu yazmanız gerekir. PARAMETERS: p_matnr TYPE mara-matnr. DATA: lv_resimobj TYPE borident, lv_document_id TYPE sofolenti1-doc_id, lv_deg_tarihi LIKE sood-chdat, lv_resim_adi LIKE sood-objdes, lv_resim_uzanti LIKE sood-file_ext. …