Kendi S/4HANA 2025 sandbox'ımda, OData ve SAPUI5'ten RAP, draft ve ABAP Unit'e uzanan tam bir geliştirme zinciri kurdum. Her adım çalışır halde doğrulandı ve abapGit ile arşivlendi. On my own S/4HANA 2025 sandbox I built a complete development chain, from OData and SAPUI5 through RAP, draft handling and ABAP Unit. Every step was verified working and archived with abapGit.
21 yılı aşkın klasik ABAP deneyimi sonrasında soru şuydu: RAP tabanlı geliştirmeyi "bilmek" yerine, sıfırdan kurup uçtan uca çalıştırabilir miyim? Amaç bir demo değil, gerçek projelerde karşılaşılan zincirin tamamını (yetki, servis, önyüz, iş mantığı, test, versiyonlama) kendi elimle kurmak ve her kararın gerekçesini yazılı hale getirmekti.
After more than 21 years of classic ABAP, the question was: rather than "knowing" RAP-based development, could I build it from scratch and run it end to end? The aim was not a demo, but the whole chain met in real projects (authorization, services, UI, business logic, tests, version control), built by hand with the reasoning behind every decision written down.
Üç kitapla başladım; kitaplar bitince 21 konuluk bir müfredatı kendim kurguladım. Her konu aynı döngüyle ilerledi: kısa teori → sandbox'ta uygulama → ayrı bir son kullanıcı hesabıyla doğrulama → öz değerlendirme → GitHub'a push. Öz değerlendirmelerde cevaplar "ne" değil, "neden → hangi mekanizma → sonuç" zinciri olarak yazıldı; zayıf kalan cevaplar bir sonraki oturumun açılışında yeniden soruldu.
I started with three books; when they ran out, I designed a 21-topic curriculum myself. Every topic followed the same loop: brief theory → hands-on in the sandbox → verification with a separate end-user account → self-assessment → push to GitHub. Self-assessment answers were written not as "what" but as chains of "why → which mechanism → what result"; weak answers were re-asked at the start of the next session.
OData V2
SEGW ile servisler; Gateway Client ve ERROR_LOG ile hata ayıklama, DPC debug.
Services with SEGW; debugging via Gateway Client and ERROR_LOG, DPC debugging.
SAPUI5
Elle yazılmış uygulama: MVC, routing, i18n (TR/EN), arama, filtreleme, sıralama.
Hand-written app: MVC, routing, i18n (TR/EN), search, filtering, sorting.
Fiori Launchpad
Katalog, hedef eşleme, statik ve dinamik tile, space/page, PFCG rol ve servis yetkileri.
Catalog, target mappings, static and dynamic tiles, spaces/pages, PFCG role and service authorizations.
CDS + Fiori Elements
Aynı iş nesnesi üzerinde V2 ve V4 List Report / Object Page; metadata extension, value help, criticality.
V2 and V4 List Report / Object Page on the same business object; metadata extensions, value help, criticality.
RAP (Managed)
Early numbering, determination, validation, instance action, feature control, instance ve global authorization.
Early numbering, determinations, validations, instance action, feature control, instance and global authorization.
Draft & Composition
Draft tabloları, etag / total etag, kilit; parent-child composition ve create-by-association.
Draft tables, etag / total etag, locking; parent-child composition and create-by-association.
Additional Save
Kayıt sonrası değişiklik log'u, T100 mesaj sınıfı.
Post-save change log, T100 message class.
KaliteQuality
ABAP Unit (EML + test double), ATC (ABAP Cloud varyantı), abapGit ile GitHub'a export.
ABAP Unit (EML + test doubles), ATC (ABAP Cloud variant), export to GitHub with abapGit.
FE V4 Flexible Programming Model
Custom section, custom header action, controller extension.
Custom section, custom header action, controller extension.
%is_draft geri döndürülmediğinde alınan dump, projenin en öğretici hatasıydı.
It changes everything from the data model to numbering, from locking to validation. The dump caused by not returning %is_draft in early numbering was the most instructive mistake of the project.
Kalıcı çıktı: her konusu belgelenmiş, çalışır halde doğrulanmış ve abapGit ile arşivlenmiş bir RAP uygulaması; yetki, servis ve önyüz katmanları için yeniden kullanılabilir kontrol listeleri; ve müşteri projelerinde doğrudan uygulanabilecek V2/V4, draft ve test pratikleri.
Lasting output: a RAP application with every topic documented, verified working and archived with abapGit; reusable checklists for the authorization, service and UI layers; and V2/V4, draft and testing practices that apply directly to customer projects.
Klasik ABAP'ten RAP ve Fiori'ye geçişte mimari, yetki tasarımı ve geliştirme desteği için konuşalım.Let's talk about architecture, authorization design and development support for moving from classic ABAP to RAP and Fiori.
E-Posta Gönder Send an Email Ana Sayfa Home