Giriş
Kurumsal raporlamada karşılaştığım en önemli konulardan biri, verinin yalnızca bir sistemden alınması değil, doğru şekilde işlenerek kullanılabilir hâle getirilmesidir.
SAP gibi ERP sistemleri, işletmelerin satın alma, stok, üretim, finans ve lojistik süreçlerinde oldukça kapsamlı veriler üretir. Ancak bu verilerin sistemde bulunması, doğrudan doğruya sağlıklı bir analiz yapılabileceği anlamına gelmez.
Özellikle SAP üzerinden Excel’e aktarılan raporlarda veri tipleri, alan tanımları, tekrar eden kayıtlar ve manuel düzenlemeler zamanla ciddi tutarsızlıklara neden olabilir.
Benim raporlama konusundaki temel yaklaşımım şu: Önce verinin doğruluğu sağlanmalı, ardından analiz ve görselleştirme aşamasına geçilmelidir.
Bu yazıda SAP verilerinin Excel ortamında nasıl daha kontrollü, sürdürülebilir ve mümkün olduğunca otomatik bir raporlama yapısına dönüştürülebileceğini teknik açıdan ele alacağım.
1. SAP’den Veri Alırken Nelere Dikkat Edilmeli?
SAP üzerinde raporlama yaparken ilk adım, ihtiyaç duyulan verinin hangi işlemden veya veri kaynağından alınacağını doğru belirlemektir.
Örneğin stok analizi için SAP sistemlerinde yaygın olarak kullanılan işlemlerden bazıları şunlardır:
MMBE: Malzeme stok genel görünümü. MB52: Depo stoklarının listelenmesi. MB51: Malzeme hareketlerinin incelenmesi. ME2N: Satın alma siparişlerinin listelenmesi.
Bu işlemlerden alınan veriler farklı iş ihtiyaçlarını karşılar. Dolayısıyla rapor hazırlamadan önce hangi soruya cevap arandığı netleştirilmelidir.
Örneğin mevcut stok miktarını analiz etmek istiyorsak stok bakiyelerini, belirli bir dönemdeki malzeme hareketlerini incelemek istiyorsak hareket kayıtlarını kullanmamız gerekir.
Bu iki veri kümesini aynı amaçla değerlendirmek yanlış sonuçlara neden olabilir.
Ayrıca SAP sisteminin sürümüne, yetkilendirme yapısına ve kullanılan raporun özelliklerine göre erişilebilen alanlar değişebilir.
2. Excel’e Aktarılan Veriler Neden Kontrol Edilmeli?
SAP’den dışarı aktarılan dosyalar Excel’de açıldığında bazı alanlar otomatik olarak yorumlanabilir.
| SAP verisi | Excel’de oluşabilecek durum |
|---|---|
000000123456 | 123456 |
14.10.2026 | Metin veya farklı tarih biçimi |
1.250,75 | Metin veya yanlış sayı dönüşümü |
0001 | 1 |
Buradaki sorun yalnızca görsel değildir.
Bir malzeme numarasının başındaki sıfırların kaldırılması, farklı veri kaynaklarının karşılaştırılmasında eşleşme sorunlarına neden olabilir.
Benzer şekilde metin olarak aktarılan tutarlar, Excel’deki toplama ve hesaplama işlemlerini etkileyebilir.
Bu nedenle raporlama sürecinde malzeme numarası, belge numarası, üretim yeri ve depo yeri gibi alanların veri tipleri kontrol edilmelidir.
Özellikle tanımlayıcı niteliğindeki alanların sayı yerine metin olarak ele alınması çoğu durumda daha güvenlidir.
Ancak SAP’nin iç ve dış gösterim kuralları da dikkate alınmalıdır. Her alana aynı dönüşümün uygulanması doğru değildir.
3. Power Query ile Veri Hazırlama
Excel’de büyük veri kümeleriyle çalışırken tercih ettiğim yöntemlerden biri Power Query kullanmaktır.
Power Query, farklı kaynaklardan gelen verileri belirli kurallar doğrultusunda dönüştürmeye ve aynı işlemleri tekrar uygulamaya imkân sağlar.
Örneğin SAP’den alınan bir stok raporunda aşağıdaki işlemleri tanımlayabiliriz:
- Kaynak dosyayı içe aktarmak.
- Kullanılmayacak sütunları kaldırmak.
- Malzeme numaralarını metin olarak tanımlamak.
- Miktar alanlarını uygun sayısal veri tipine dönüştürmek.
- Boş veya hatalı kayıtları kontrol etmek.
- Raporlama için gerekli filtreleri ve hesaplanan alanları oluşturmak.
Bu işlemler bir kez yapılandırıldığında aynı dosya yapısına sahip sonraki raporlarda tekrar kullanılabilir.
Burada önemli bir ayrıntı var: Power Query’nin otomatik veri tipi algılamasına tamamen güvenmemek gerekir.
Özellikle malzeme kodları, belge numaraları ve farklı bölgesel biçimlerde gelen tutarlar için veri tipleri açıkça tanımlanmalıdır.
4. Örnek: SAP Stok Verisini Power Query ile Düzenlemek
Aşağıdaki örnek, SAP’den CSV olarak alınmış bir stok raporunun Power Query M diliyle işlenmesini gösterir.
Dosyada Malzeme, UretimYeri, DepoYeri ve StokMiktari sütunlarının bulunduğunu varsayalım.
let
Kaynak = Csv.Document(
File.Contents("C:\Raporlar\stok.csv"),
[Delimiter=";", Encoding=65001,
QuoteStyle=QuoteStyle.Csv]
),
Basliklar = Table.PromoteHeaders(
Kaynak,
[PromoteAllScalars=true]
),
MetinAlanlari = Table.TransformColumnTypes(
Basliklar,
{
{"Malzeme", type text},
{"UretimYeri", type text},
{"DepoYeri", type text}
}
),
MiktarDonusumu = Table.TransformColumnTypes(
MetinAlanlari,
{{"StokMiktari", type number}},
"tr-TR"
)
in
MiktarDonusumuBu örnekte malzeme, üretim yeri ve depo yeri alanlarını metin olarak koruyoruz. Stok miktarını ise Türkçe sayı biçimine göre sayısal veri tipine dönüştürüyoruz.
Kodun doğru çalışması için kaynak CSV dosyasındaki sütun adlarının ve sayı biçiminin örnekle uyumlu olması gerekir.
Örneğin kaynak dosya İngilizce sayı biçimi kullanıyorsa tr-TR yerine uygun yerel ayar seçilmelidir.
Ayrıca malzeme kodlarının başındaki sıfırların kaynak CSV dosyasında korunmuş olması gerekir. Daha önce kaybolmuş karakterler veri tipi değişikliğiyle geri getirilemez.
Bu tür bir dönüşüm yapısı, özellikle düzenli olarak alınan raporlarda manuel işlemleri azaltmak açısından faydalıdır.
- SAP ERPStok, satın alma ve operasyon verileri
- Excel / CSVKaynak dosya ve veri aktarımı
- Power QueryVeri tipi, temizleme, dönüştürme ve kontrol
- Excel / Power BI RaporlarıAnaliz, KPI, görselleştirme ve karar desteği
5. Raporlamada Veri Doğruluğu Nasıl Kontrol Edilmeli?
Veri temizleme işlemi tamamlandıktan sonra doğrudan grafik oluşturmaya geçmek doğru bir yaklaşım değildir.
Öncelikle dönüştürülen verinin kaynak sistemle tutarlı olduğundan emin olmak gerekir.
Bunun için birkaç temel kontrol uygulanabilir.
Kayıt sayısı kontrolü: SAP’den alınan satır sayısıyla Excel’e yüklenen kayıt sayısı karşılaştırılmalıdır. Bilinçli filtreleme veya birleştirme yapıldıysa oluşan fark açıklanabilir olmalıdır.
Toplam kontrolü: Miktar ve tutar alanlarında SAP raporundaki toplamlarla Excel’deki sonuçlar karşılaştırılmalıdır. Farklı ölçü birimleri veya para birimleri varsa doğrudan toplam alınmamalıdır.
Tekrarlanan kayıt kontrolü: Aynı malzemenin birden fazla satırda bulunması her zaman hata değildir. Farklı depo yerleri, partiler veya stok türleri nedeniyle aynı malzeme birden fazla kayıtta yer alabilir.
Veri tipi kontrolü: Tarih, tutar, miktar ve kod alanlarının beklenen veri tiplerinde olup olmadığı doğrulanmalıdır.
Bu kontroller tamamlanmadan hazırlanan bir rapor, görsel açıdan başarılı olsa bile güvenilir olmayabilir.
6. Excel’de Profesyonel Raporlama Yapısı Nasıl Kurulmalı?
İyi bir rapor, mümkün olduğunca az manuel işlem gerektirmelidir.
Benim önerdiğim yapı üç temel katmandan oluşur:
Veri katmanı: SAP’den alınan ham veriler burada bulunur. Ham veri mümkün olduğunca değiştirilmeden korunur.
Dönüşüm katmanı: Power Query kullanılarak veri temizleme, alan eşleştirme, veri tipi düzenleme ve gerekli hesaplamalar yapılır.
Raporlama katmanı: Pivot tablolar, grafikler, özet göstergeler ve gerektiğinde Power BI kullanılarak analiz ekranları hazırlanır.
Bu ayrımın en önemli avantajı, raporun kaynak veriden bağımsız olarak daha kontrollü yönetilebilmesidir.
Örneğin bir stok raporunda toplam stok miktarı, üretim yeri bazında dağılım, depo bazında stok durumu ve belirli malzeme gruplarına ait analizler aynı veri modeli üzerinden üretilebilir.
Böylece kullanıcıların her rapor için ayrı dosyalar oluşturması yerine, ortak ve doğrulanmış bir veri yapısı kullanması mümkün olur.
- Ham veriKaynağı değiştirmeden koru
- DönüşümVeri tiplerini ve kontrolleri tanımla
- RaporlamaDoğrulanmış veriyi analiz et
7. Raporların Otomatik Güncellenmesi
Raporlama süreçlerinde zaman kaybının önemli nedenlerinden biri aynı işlemlerin sürekli tekrarlanmasıdır.
Her gün SAP’den dosya indirmek, Excel’de sütunları düzenlemek, formülleri yeniden uygulamak ve raporları güncellemek sürdürülebilir bir yöntem değildir.
Power Query kullanılarak sabit yapılı kaynak dosyalardan veri okuyan ve tanımlı dönüşümleri yeniden uygulayan bir sistem kurulabilir.
Ancak burada iki farklı otomasyon seviyesini birbirinden ayırmak gerekir.
Birincisi, SAP’den alınmış dosyanın Excel içerisinde otomatik olarak işlenmesidir.
İkincisi ise SAP sisteminden verinin doğrudan ve zamanlanmış şekilde alınmasıdır.
İkinci yöntem için kullanılan SAP sisteminin desteklediği bağlantı yöntemleri, kullanıcı yetkileri, güvenlik politikaları ve entegrasyon altyapısı değerlendirilmelidir.
Dolayısıyla Excel’de yenileme düğmesine basmak ile SAP’den tamamen otomatik veri çekmek aynı işlem değildir.
8. Excel mi, Power BI mı Kullanılmalı?
Her raporlama ihtiyacı için Power BI kullanmak gerekli değildir.
Excel; detaylı veri inceleme, hesaplama, operasyonel listeler ve kullanıcıların üzerinde çalışması gereken raporlar için güçlü bir araçtır.
Power BI ise merkezi veri modeli, etkileşimli gösterge panelleri, farklı veri kaynaklarının bir araya getirilmesi ve geniş kullanıcı gruplarına rapor sunulması gereken senaryolarda daha uygun olabilir.
Burada karar verilmesi gereken konu hangi aracın daha popüler olduğu değil, işletmenin neye ihtiyaç duyduğudur.
Bazı süreçlerde Excel yeterli olurken, bazı projelerde Excel ve Power BI’ın birlikte kullanılması daha doğru bir mimari oluşturabilir.
Sonuç
SAP verileriyle profesyonel raporlama yapmak, yalnızca sistemden veri alıp Excel’de tablo oluşturmak değildir.
Sağlıklı bir raporlama yapısı; doğru veri kaynağı, kontrollü veri dönüşümü, doğrulama mekanizmaları ve sürdürülebilir bir güncelleme süreci gerektirir.
Özellikle stok, satın alma, üretim ve finans gibi operasyonel alanlarda küçük veri hataları yanlış değerlendirmelere neden olabilir.
Bu nedenle raporlama süreçlerinde önceliğim her zaman verinin güvenilirliği ve işlemlerin tekrar edilebilir olmasıdır.
Doğru yapılandırılmış bir rapor, yalnızca mevcut durumu göstermez. Veriyi daha anlaşılır hâle getirerek karar alma süreçlerine de katkı sağlar.
İyi raporlama, doğru veriyi doğru yöntemle işlemekle başlar.
Murat Batuhan — SAP, Excel, veri analizi ve raporlama otomasyonu


Yorumlar
Yazı hakkında yorumunu veya sorunu paylaşabilirsin. Mesajın önce bana iletilir; otomatik olarak herkese açık yayımlanmaz.
Yorum yaz ↗E-posta adresin yayımlanmaz. Yanıt süresi değişebilir.