SAP’nin yeni getirdiği tablolardan bir tanesi MATDOC tablosudur. Sütun bazlı tablo yapısına geçtikten sonra birden fazla tabloda tuttuğu verileri artık tek tabloda farklı aggregation yöntemleriyle elde etmeyi hedefliyor.

Önceden MARD tablosunda tuttuğu depo stok bilgisini artık MATDOC üzerinde aggregation yaparak edinebiliyoruz. MATDOC tablosunda malzeme belgeleri ve kalem detaylarına kadar tuttuğu gibi ilgili mal hareketlerini de bu belgelerin detaylarını farklı koşullarda aggregation yaparak bulabiliriz.

Sözel kısmını açıkladıktan sonra uygulama kısmına geçelim

MARD tablosunun görüntüsü aşağıdaki gibi;
MARD-MATNR = 000000000010100010
MARD-WERKS = 4010
MARD-LGORT = 1000

MARD stok bilgisi
MARD stok bilgisi

Gördüğümüz gibi ilgili deponun Tahditsiz stoğu (MARD-LABST) 1959 iken Kalite kontrol stoğu (MARD-INSME) 1621 olarak görünmektedir.

MATDOC tablosundan bu bilgiyi edinmek için aşağıdaki şekilde bir yol izlemeliyiz

Kalite kontrol stoğu için depo bilgisi aşağıdaki kriterlerle çekilmeli;
MATDOC-MATNR = 000000000010100010
MATDOC-WERKS = 4010
MATDOC-LGORT = 1000
MATDOC-BSTAUS_SG = B

MATDOC-BSTAUS_SG alanı “Stok karakteristiği” olarak geçmektedir. Bu alan stok tiplerini belirlemektedir. Örneğin A değeri Tahditsiz stok tipi iken B değeri Kalitede olan stokları belirtmektedir. İlgili alanın domain’i içerisinde seçenekleri görebilirsiniz. Biz örneğimizde kalite stoğunda ne kadarımız var ona bakacağız. Bu yüzden “B” olarak verdik.

İlgili kriterleri MATDOC’a verdiğimizde MARD deki gibi tek satır bir sonuç almadığımızı göreceksiniz. Bunun sebebi MARD tablosunun KEY alanları ile MATDOC’un ki bir olmadığı ve verilerin tutulma mimarisinin farklı olmasından kaynaklıdır. Önceden tek bir alanla eriştiğimiz depo stok bilgisine şimdi birden fazla kaydın gelmesi sonucunda yapacağımız bir aggregation ile karar vereceğiz.

MATDOC stok bilgisi
MATDOC stok bilgisi

Gelen kayıtların her bir satırı bir malzeme belgesinin kalem seviyesi aslında. İlgili malzeme belgelerinin mal hareketi sırasında gerçekleştirilen miktar alanı da “Stok miktarı” olarak tutulan alandır. Teknik olarak MATDOC-STOCK_QTY olarak bu alana erişebilirsiniz. Bu kriterlere uygun gelen tüm kayıtların STOCK_QTY alanlarını topladığımızda ilgili üretim yeri, malzeme ve depo yerindeki stok bilgisini edinmiş oluyoruz.

MATDOC stok bilgisi
MATDOC stok bilgisi

Stok karakteristiğini A olarak verdiğimizde Tahditsiz kullanım stoğuna erişmiş oluyoruz.

Önemli

[success]HANA temelli uygulamalarda ABAP üzerinden sorgu yazılmadığı sürece eski tablolardan kayıtları okumaya çalıştığımızda başarısız oluyor. Örneğin bir HANA CDS View yaptınız ve MARD tablosundan stok bilgisi okumak istediğinizde size her zaman boş kayıt dönecektir. Aynı şey MSEG tablosu için geçerlidir. Bir CDS üzerinden SELECT yazdığınızda MSEG üzerinden kayıt dönmeyecektir. SAP, bu yeni teknolojilerde yeni tabloları kullanmaya zorluyor bizleri. O yüzden her zaman yenisi olduğunu bildiğimiz tabloları kullanmamız daha sağlıklı sonuçlar verecektir. MATDOC veya ACDOCA gibi tabloların kullanımını arttırmak gerekiyor. Ancak şunu da belirtmek gerekiyor ki; ABAP üzerinden sorgularınız çalışacaktır çünkü önceki sistemlere destek verebilmek adına ABAP üzerinden yapılan veritabanı sorgularında bu durumu kısıtlamamış. Yeni teknolojileri ve HANA’nın gerçek gücünü kullanmak istiyorsak sadece bunları teknik olarak öğrenmek yetmiyor. Değişimleri ve güncellemeleri takip edip SAP’nin hangi süreçte hangi tabloyu neden kullandığını bilmek gerekiyor. Bu gibi değişimler “Business Partner” tarafında da aynı yolu izlemektedir. Yeni tablolara geçiş yapmak başlarda zor gelse de yakından takip edip olabildiğince güncel olarak geliştirmelerimizi devam ettirmemiz gerekiyor.[/success]