İçeriğe geç

Rapor sayıları neden tutmaz? Ölçüt tanımı ve raporlama

Sunucu ve Performans
Rapor sayıları neden tutmaz? Ölçüt tanımı ve raporlama

Raporlar genellikle yazılım hatası yüzünden değil, tanım farkı yüzünden tutmaz: iki rapor aynı adı taşıyan iki ayrı şeyi sayar. Çözüm, her ölçütün tanımını yazılı hale getirmek ve tüm raporları aynı tanım kümesi üzerinden üretmektir. Bu iş yapılmadığında her toplantı rakam tartışmasıyla başlar ve ekip yazılıma güvenmeyi bırakır.

Aynı adı taşıyan farklı ölçütler

En klasik örnek ciro. Bir rapor vergi dahil toplamı, diğeri vergi hariç tutarı gösterir. Birinde iptaller düşülmüştür, diğerinde değil. Biri sipariş tarihine, diğeri fatura tarihine göre gruplar. Üç rapor da doğrudur ama aynı soruyu cevaplamaz.

  • Vergi dahil mi, hariç mi?
  • İptal ve iade düşülmüş mü?
  • Kargo ve hizmet bedeli ciroya giriyor mu?
  • Tarih olarak sipariş, sevk yoksa fatura tarihi mi esas?
  • Tahsil edilmemiş satış dahil mi?

Bu sorular bir kez cevaplanır, cevap raporun yanında görünür. Kullanıcı rakamın altındaki tanımı görebiliyorsa tartışma rakam üzerinden değil, iş kuralı üzerinden yürür ve beş dakikada kapanır.

Tarih ve saat dilimi tuzağı

Gün sonu raporu ile ay sonu raporunun aynı satışı farklı güne atması çoğu zaman saat dilimi farkından doğar. Kayıtlar bir dilimde saklanır, rapor başka dilimde gruplanır; gece yarısına yakın işlemler yer değiştirir. Aynı sorun haftanın ilk günü tanımında ve ay kapanışının hangi saatte yapıldığında da çıkar.

  • Kayıt zamanı tek bir dilimde saklanır, dönüşüm yalnızca gösterimde yapılır.
  • Rapor filtresinin başlangıç ve bitiş saatleri açıkça yazılır.
  • Dönem sınırının kapsayıcı mı dışlayıcı mı olduğu belirlenir.
  • Haftalık raporlarda haftanın ilk günü sabit tanımlanır.

Değişen geçmiş: dün çektiğim rapor bugün farklı

Bir raporun aynı dönem için farklı zamanlarda farklı sonuç vermesi genellikle normaldir: iptal girilmiş, fiyat düzeltilmiş, iade işlenmiştir. Sorun, bu durumun açıklanmamasıdır. İki yöntem birlikte işe yarar. Birincisi, rapora üretim zamanını yazmak. İkincisi, kapanmış dönemleri kilitlemek ve kapanış sonrası düzeltmeleri ayrı bir düzeltme kaydıyla yürütmek.

Geçmişi yeniden yazan güncellemeler yerine olay kaydı tutmak da işi kolaylaştırır: iptal, kaydı silmek yerine iptal hareketi ekler. Böylece hem güncel durum hem o günkü hal okunabilir.

Aynı mantık ürün ve müşteri bilgisi için de geçerlidir. Bir ürünün kategorisi bugün değiştiğinde geçmiş satışların da yeni kategoriye kayması çoğu işletmede istenmez; geçen ayın raporu o ayki haliyle kalmalıdır. Bunun çözümü, raporlanacak kritik bilgileri hareket kaydının üzerine o anki değerleriyle yazmaktır. Fiyat, vergi oranı ve kategori gibi alanlar satırda saklandığında kart üzerindeki sonraki değişiklikler geçmişi bozmaz.

Yeni rapor isteği gelince sorulacak dört soru

Her rapor isteği aslında bir karar isteğidir. İstek geldiğinde şu dört soru sorulursa hem doğru rapor çıkar hem gereksiz rapor üretilmez.

  1. Hangi kararı vereceksiniz? Rapor bir karara hizmet etmiyorsa genellikle bir ekran filtresi yeterlidir.
  2. Hangi aralık ve hangi kırılım? Gün, hafta, şube, kanal gibi kırılımlar baştan netleşir.
  3. Hangi kayıtlar dışarıda kalacak? İptal, iade, test ve iç hesaplar açıkça yazılır.
  4. Hangi mevcut rapora denk gelmeli? Yeni rapor hangi rakamla tutmak zorundaysa o bağ baştan kurulur.

Dördüncü soru en çok atlanan ve en çok iş çıkaranıdır. Yeni raporun hangi mevcut raporla aynı sonucu vermesi gerektiği yazılmazsa, rapor yayına girdiği gün tutarsızlık tartışması başlar.

Ölçüt tanımı sözlüğü

Raporlama düzeninin kalbi küçük bir tablodur. Her ölçüt için adı, tanımı, kaynak alanı ve dışlanan kayıtlar yazılır. Bu tablo yazılımın içinde durur ve rapor ekranından erişilebilir olur.

ÖlçütTanımKaynakDışlananlar
Net satışVergi hariç satır toplamıSipariş satırıİptal ve iade edilen satırlar
Sipariş adediOnaylanmış sipariş başlığı sayısıSipariş başlığıTaslak ve iptal siparişler
Ortalama sepetNet satışın sipariş adedine oranıTüretilmişTanım gereği aynı dışlamalar
Aktif müşteriSeçili dönemde en az bir onaylı siparişi olan cariSipariş başlığıTest ve iç hesaplar

Test hesaplarını dışlamak küçük bir ayrıntı gibi görünür ama ilk ay raporlarının güvenini belirleyen şey genellikle budur. Sözlüğün ikinci işlevi ise türetilmiş ölçütleri zapt etmesidir: ortalama sepet gibi oranlar, pay ve paydadaki ölçütlerin tanımından bağımsız düşünülemez. Pay net satışsa payda da aynı dışlamalarla hesaplanmış sipariş adedi olmalıdır; iki ayrı kaynaktan beslenen bir oran her dönem başka türlü yanlış çıkar.

Raporu nerede ve nasıl çalıştırmalı

Tanım netleştikten sonra sıra üretim biçimine gelir. Günlük operasyon ekranları canlı veriden okur; aylık ve karşılaştırmalı raporlar için önceden hesaplanmış özet tablolar kullanılır. Özet tablo, tanımı sabitlediği için hem hızlı hem tutarlıdır, ancak nasıl ve ne zaman yenilendiği belgelenmelidir.

  • Canlı rapor: küçük dönem, az kayıt, anlık ihtiyaç.
  • Özet tablo: tekrarlayan dönemsel rapor, çok kayıt.
  • Dışa aktarım: büyük çıktılar arka planda hazırlanıp bildirimle sunulur.
  • Her raporda üretim zamanı ve kullanılan tanım sürümü görünür.

Rapor sorgularının sistemi yorması ayrı bir konudur; belirti ve ölçüm tarafı için yavaşlama teşhisi yazısına bakılabilir.

Kısa kontrol listesi

  • Her ölçütün yazılı tanımı var ve rapor ekranından görülebiliyor.
  • Vergi, iptal, iade ve tarih kuralı tek yerde tanımlı.
  • Saat dilimi tek dilimde saklanıyor, dönüşüm gösterimde yapılıyor.
  • Kapanmış dönemler kilitli, düzeltmeler ayrı kayıtla yürüyor.
  • Raporda üretim zamanı yazıyor.
  • Test ve iç hesaplar dışlanıyor.

Özet: güvenilir rapor, doğru sorgudan önce doğru tanımla başlar. KAV Yazılım raporlama katmanını bu tanım kümesi üzerine kurar ve mevcut raporlar arasındaki farkları tek tek izler.

Sık sorulan sorular

İki rapor arasındaki farkı en hızlı nasıl bulurum?

Aynı dönemi iki raporda da en küçük parçaya indirip kayıt listesini karşılaştırmak en hızlı yoldur. Fark genellikle tek bir kuralda toplanır: iptaller, vergi veya tarih alanı. Kayıt listesi karşılaştırması yapılamıyorsa raporların kaynak alan ve filtrelerini yan yana yazmak çoğu durumda yeterlidir.

Özet tablolar veriyi bozar mı?

Doğru kurulduğunda bozmaz, çünkü özet tablo kaynak veriyi değiştirmez, ondan türetilir. Risk, yenileme işinin sessizce durması ve raporun eski veriyi göstermesidir. Bu yüzden her özet tabloda son yenileme zamanı tutulur ve yenileme başarısızlığı uyarı üretir.

Dönem kilidi operasyonu zorlaştırmaz mı?

Kilit düzeltme yapılmasını engellemez, düzeltmenin iz bırakmasını sağlar. Kapanış sonrası değişiklik ayrı bir düzeltme kaydıyla işlendiğinde hem yeni rakam hem değişikliğin nedeni görünür. Zorluk hissi genellikle kilidin iş akışına değil, takvime göre konmasından doğar.

Rapor tanımlarını kim belirler?

Tanım bir yazılım kararı değil, iş kararıdır; ilgili birim yöneticisi belirler, yazılım ekibi uygulanabilir biçimde yazıya döker. Onaylanan tanım tek yerde saklanır ve sonradan değişirse sürümü değişir. Böylece eski raporların neden farklı olduğu da açıklanabilir kalır.
  • ölçüt tanımı
  • özet tablo
  • raporlama
  • veri kalitesi
  • veri modeli