"SAP verisine doğal dille soru sor" vaadi duyulduğunda akla gelen ilk itiraz genelde şu olur: SQL yazmak zaten işin kolay kısmı. Doğru. Bir SAP sisteminde asıl zorluk SELECT cümlesini kurmak değil, o cümlenin hangi tablodan okuyacağına karar vermektir. Bu yazıda doğal dilde veri analizinin bu can alıcı adımını — tablo seçimini — ve sorunun çalıştırılabilir bir sorguya dönüşene kadar geçtiği yolu ele alıyoruz.
1. Asıl darboğaz SQL değil, tablo bulmak
SAP'te bir iş sorusunun cevabı neredeyse hiçbir zaman tek bir tabloda durmaz. "Geçen ay hangi müşteriye ne kadar sevkiyat yaptık" sorusu; sipariş başlığı, kalem, teslimat ve fatura tablolarının hangi alan üzerinden birbirine bağlandığını bilmeyi gerektirir. Muhasebe tarafına geçtiğinizde durum daha da zorlaşır — kalem verisinin yapısı, sistemin sürümüne ve şirketin kullandığı modüllere göre değişebilir.
Deneyimli bir danışman bu haritayı kafasında taşır. Ama ekipteki herkes taşımaz; ve kimse müşteriye özel Z-tablolarını, append yapılarını, yıllar içinde eklenmiş özel alanları ezbere bilmez. Pratikte olan şudur: SE16'da tablo aranır, alan listesine bakılır, "acaba bu mu" diye içerik açılır, olmadıysa bir başkası denenir. Sorunun cevabına giden yolun büyük kısmı bu arama turlarında geçer.
Doğal dilde veri analizinin kazandırdığı zaman, aslında tam olarak bu turların kısalmasıdır. Sorgunun kendisi zaten birkaç dakikalık iştir; kaybedilen saatler doğru tabloyu ve doğru bağlantı alanını bulmakta harcanır.
2. AI tabloyu ezberden değil, sizin sisteminizden bulur
Genel amaçlı bir sohbet botuna "sevkiyat verisi hangi tabloda" diye sorduğunuzda, eğitim verisinden hatırladığı standart bir yanıt alırsınız. Bu yanıt çoğu zaman yanlış değildir — ama sizin sisteminiz için doğru olduğunun garantisi de yoktur.
mdp/aigui'de veri analizi bu noktada ayrışır: tablo ve alan bilgisi ADT (ABAP Development Tools) REST API üzerinden o an bağlı olduğunuz sistemin veri sözlüğünden okunur. AI "bu tabloda şu alanlar vardır" derken kendi belleğine değil, sizin sisteminizin SE11 sözlüğüne bakar. Z-tablolarınız, müşteriye özel alanlarınız ve sisteminizin sürümüne özgü farklılıklar bu sayede tabloya dahil olur.
Bağlantının kendisi ekstra bir kurulum gerektirmez: SAP NetWeaver 7.40 ve üzeri sürümlerde ADT servisleri varsayılan olarak etkindir. Yani veri analizi için sisteminize yeni bir bileşen kurmanız, ayrı bir veri kopyası çıkarmanız veya veriyi dışarı taşımanız gerekmez — sorgu, kendi sisteminizde ve kendi yetkilerinizle çalışır.
3. Sorudan sorguya: doğal dil nasıl SQL'e dönüşür
Tablo netleştikten sonra sıra sorunun sorguya çevrilmesine gelir. Burada AI'ın yaptığı iş üç parçadan oluşur: hangi alanların seçileceğine karar vermek, tabloları doğru anahtar üzerinden birleştirmek ve sorudaki koşulu (tarih aralığı, şirket kodu, malzeme grubu) filtreye dönüştürmek. "Toplam", "en çok", "ortalama" gibi ifadeler de karşılığı olan gruplama ve sıralamaya çevrilir.
Sonuç, size kapalı bir kutu olarak sunulmaz. Üretilen sorgu okunabilir haldedir; hangi tablodan hangi alanların çekildiği, filtrenin ne olduğu görünür durumdadır. SQL bilmeniz gerekmez, ama biliyorsanız sorguyu okuyup doğrulayabilirsiniz — ki bir üretim sisteminde çalışacak bir sorgu için bu, göz ardı edilecek bir ayrıntı değildir.
Veri geldikten sonra AI yorum aşamasına geçer: sonucu özetler, dikkat çeken bir eğilim veya aykırı bir değer varsa işaret eder. Bu yorumu bir denetim raporu gibi değil, veriye ilk bakışta gözünüze çarpacak şeyleri hızla önünüze koyan bir özet olarak düşünmek doğru olur — nihai değerlendirme her zaman sizindir.
4. Her sorgu çalışmadan önce onayınıza gelir
Canlı bir SAP sisteminde otomatik çalışan bir AI fikri, haklı olarak, tedirginlik yaratır. mdp/aigui'nin veri analizi akışındaki temel sınır şudur: AI'ın ürettiği her sorgu, çalıştırılmadan önce size gösterilir ve onayınızı bekler. Onaylamazsanız sorgu hiç çalışmaz.
İkinci sınır daha da nettir: AI veri analizi akışında otomatik olarak veri silmez veya yazmaz. Bu akış okuma amaçlıdır; "yanlış anlaşılan bir istek yüzünden kayıt güncellendi" senaryosu tasarımın dışında bırakılmıştır. Kod tarafındaki yazma ve aktivasyon işlemleri ise ayrı bir akıştır ve onlar da yine yalnızca sizin onayınızla ilerler.
Kurumsal dağıtımlarda bu sınır kullanıcı bazında da çekilebilir: rol tabanlı erişimle bir kullanıcıya tam erişim, yalnızca veri analizi veya production sistemleri için salt okunur mod atanabilir. Yani "analistler veriye baksın, ama kimse production'da kod değiştirmesin" gibi bir politika araç seviyesinde uygulanabilir hale gelir.
5. Tek seferlik sorgudan sürekli izlenen panoya
Veri sorularının önemli bir kısmı tek seferlik değildir. "Bu hafta bekleyen sipariş sayısı kaç" sorusunu bir kez soran kişi, büyük ihtimalle önümüzdeki hafta da soracaktır. Her seferinde aynı soruyu baştan tarif etmek, kazanılan zamanı geri verir.
Bunun için sorgu sonuçları panoya sabitlenebilir: sonuç, otomatik yenilenen bir grafik veya KPI widget'ına dönüşür. Böylece bir kez kurduğunuz soru, tekrar sormanıza gerek kalmadan güncel kalır. Pratikte bu, birkaç düzenli sorunun küçük bir izleme ekranına dönüşmesi anlamına gelir — hazır bir raporlama aracı kurmadan, sorunun kendisinden yola çıkarak.
6. AI hafızası: aynı soruyu iki kez tarif etmemek
Her SAP sisteminin kendine özgü bir bağlamı vardır: hangi şirket kodu hangi ülkeyi temsil eder, hangi Z-tablo ne için kullanılır, hangi alan aslında başka bir amaç için doldurulmuştur. Bu bilgi hiçbir standart dokümantasyonda yazmaz; ekibin kafasında durur.
AI hafızası tam da bunu kalıcı hale getirmek içindir: sorgu kalıpları, tablo notları ve tercihler oturumlar arasında saklanır. Bir kez "bizde iptal edilen siparişler şu alanla işaretlenir" dediğinizde, bu not sonraki sorgularda bağlam olarak kullanılabilir.
Bu hafıza yerel cihazda tutulur. Yani sisteminize dair biriken bağlam, harici bir yerde toplanan bir bilgi havuzuna değil, kendi makinenize yazılır. Aynı ilke güvenlik modelinin genelinde de geçerlidir: AI çağrıları doğrudan sizin cihazınızdan seçtiğiniz sağlayıcıya gider, mdp/aigui sunucuları aracı konumda değildir ve API anahtarlarınız bu sunuculara hiçbir zaman iletilmez.
7. Pratikte iyi bir soru nasıl sorulur?
Doğal dil, "ne yazarsam yazayım anlar" demek değil. Aracı birkaç gün kullanan herkesin fark ettiği birkaç basit alışkanlık, sonucun kalitesini belirgin biçimde değiştirir:
- Zaman aralığını belirtin. "Geçen ay" veya "2026 ilk çeyrek" gibi bir sınır, hem sorguyu netleştirir hem de gereksiz büyük sonuç kümelerini önler.
- Organizasyon bağlamını verin. Şirket kodu, satış organizasyonu veya tesis bilgisi, birden fazla ülke/şirket barındıran sistemlerde sonucu tümüyle değiştirir.
- Bildiğiniz tabloyu söyleyin. Doğru tablo aklınızdaysa yazın — AI'ın arama turunu tamamen atlatırsınız. Bilmiyorsanız da sorun değil; bulunması gereken zaten budur.
- Sonucun biçimini tarif edin. "Müşteri bazında toplam" ile "sipariş sipariş liste" çok farklı iki sorgudur; hangisini istediğinizi baştan söylemek bir turu kısaltır.
- Üretilen sorguyu okuyun. Onay adımı bir formalite değil; filtrenin beklediğiniz gibi olduğunu gördüğünüz an orasıdır.
Belirsiz bıraktığınız yerde süreç durmaz — eksik bağlam sorguyu imkânsız kılmaz, sadece ilk denemenin isabet oranını düşürür. Sonucu gördükten sonra "bunu şirket koduna göre ayır" diyerek devam etmek de tamamen geçerli bir kullanım biçimidir.
Sonuç
Doğal dilde SAP veri analizi, SQL yazma zahmetini ortadan kaldırdığı için değil, doğru tabloyu bulma turunu kısalttığı için işe yarar. Bu turu kısaltan şey de modelin genel bilgisi değil, sorunun sizin sisteminizin veri sözlüğüyle birlikte ele alınmasıdır.
Geriye kalan kısım tanıdık bir disipline dayanır: üretilen sorgu görünürdür, çalışmadan önce onayınızdan geçer, okuma sınırının dışına çıkmaz ve tekrar eden sorular panoya sabitlenerek kalıcı hale gelir. SE16'da tablo aramakla geçen zaman kısalır; verinin ne anlama geldiğine karar veren kişi ise değişmez — o hâlâ sizsiniz.
Kendi SAP sisteminizde canlı bir demo görmek ister misiniz? 30 dakikalık görüşmede kendi kodunuz ve verinizle deneyimleyin.
Demo Talep Et