Envanter Yönetimi Veri Template'iniz
Envanter Yönetimi Veri Template'iniz
- Toplanması Önerilen Nitelikler
- Süreç keşfi için izlenecek temel faaliyetler
- SAP S/4HANA için özel olarak hazırlanmış çıkarma rehberliği
Stok Yönetimi Nitelikleri
| Ad | Açıklama | ||
|---|---|---|---|
| Olay Zamanı EventTime | Envanter faaliyetinin sisteme kaydedildiği kesin tarih ve saat. | ||
| Açıklama Olay Zamanı, bir aktivitenin tam olarak ne zaman gerçekleştiğini kaydeden zaman damgasıdır. Bu veri noktası, her envanter partisi için süreç akışını yeniden yapılandırmak amacıyla olayları kronolojik olarak sıralamak için elzemdir. Tüm zamana dayalı süreç madenciliği analizlerinin temelini oluşturur. Olay Zamanı'nın doğruluğu, döngü süreleri, teslim süreleri ve süreler gibi temel performans göstergelerini hesaplamak için kritiktir. Farklı zaman periyotları üzerindeki süreç performansının analizini sağlar, darboğazların ne zaman meydana geldiğini belirlemeye yardımcı olur ve bir partinin serbest bırakılmadan önce kalite kontrolünde geçirdiği süre gibi süreç gecikmelerini anlamak için olgusal temel sağlar. Neden önemli Bu zaman damgası, olayları kronolojik olarak sıralar ve tüm süre ve performans hesaplamalarının temelini oluşturur. Nereden alınır Bu, tipik olarak malzeme belgesi başlık tablosu MKPF'den gelen kayıt tarihi (MKPF-BUDAT) ve giriş saatinin (MKPF-CPUTM) birleşimidir. Örnekler 2023-10-26T09:00:00Z2023-11-15T14:35:10Z2024-01-05T23:15:00Z | |||
| Stok Partisi/Lot InventoryBatchLot | Bir ürünün belirli bir miktarının benzersiz tanımlayıcısıdır ve yaşam döngüsünü izlemek için durum kimliği görevi görür. | ||
| Açıklama Envanter Parti veya Lot numarası, bir ürünün belirli, ayrı bir miktarıyla ilgili tüm faaliyetleri gruplandıran birincil durum tanımlayıcıdır. Bu, bir stok miktarının depoya ilk girişinden, çeşitli dahili hareketler ve durum değişikliklerinden geçerek satış, üretim veya elden çıkarma için nihai çıkışına kadar olan yolculuğunun eksiksiz kronolojik bir görünümünü sağlar. Süreç analizinde bu nitelik temeldir. Her parti için uçtan uca akışı izlemenize, döngü sürelerini doğru bir şekilde ölçmenize, süreç varyasyonlarını belirlemenize ve farklı partilerin nasıl ele alındığını anlamanıza olanak tanır. Parti düzeyinde süreçleri analiz etmek, izlenebilirlik, kalite kontrol ve son kullanma tarihi yönetimi gibi konularda kritik olan ilaç, gıda ve içecek ve kimya gibi endüstriler için hayati öneme sahiptir. Neden önemli Bu, ilgili tüm envanter olaylarını tek bir duruma bağlayan çekirdek tanımlayıcıdır ve uçtan uca süreç analizini mümkün kılar. Nereden alınır Bu, tipik olarak SAP'deki MCHA (Parti Ana) veya MCH1 (Partiler) gibi tablolarda CHARG alanında bulunan Parti Numarasıdır. Örnekler B001-A452023L202405-XYZ789456123BATCH-05-24 | |||
| Aktivite ActivityName | Stok yönetimi sürecinde belirli bir noktada meydana gelen iş olayının adı. | ||
| Açıklama Faaliyet niteliği, bir partinin envanter yaşam döngüsü içindeki tek bir adımı veya olayını tanımlar. Bu olaylar; mal teslim alma, stok taşıma, kalite kontrol yapma veya malzeme çıkarma gibi temel iş eylemlerini temsil eder. Her faaliyet, envanter partisine belirli bir zamanda ne olduğunun bir kaydıdır. Faaliyetleri analiz etmek, süreç madenciliğinin temelidir. Süreç akışının görselleştirilmesine, sık ve nadir yolların belirlenmesine, faaliyetlerin geciktiği darboğazların tespitine ve yeniden işleme döngülerinin analizine olanak tanır. 'Stok Hurdaya Ayrıldı' veya 'Kalite Kontrol' gibi faaliyetlerin sırasını ve sıklığını anlayarak işletmeler, süreç iyileştirme ve operasyonel verimlilik alanlarını belirleyebilir. Neden önemli Süreçteki adımları tanımlayarak envanter yaşam döngüsünün görselleştirilmesini ve analizini sağlar. Nereden alınır Bu, genellikle SAP Hareket Tipleri (MSEG-BWART) veya İşlem Kodlarından (MKPF-TCODE2) kullanıcı dostu isimlere eşlenen türetilmiş bir niteliktir. Örnekler Mal Kabul Kaydı YapıldıYerleştirme Transferi KaydedildiTeslimat İçin Mal Çıkışı KaydedildiStok Hurdaya Ayrıldı | |||
| Depolama Konumu StorageLocation | Bir Tesis içinde stoğun fiziksel olarak depolandığı belirli bir konum. | ||
| Açıklama Depolama Yeri, bir Tesis içinde malzeme stoklarının ayrıştırılmasına olanak tanıyan bir organizasyonel birimdir. Örneğin, bir tesiste hammadde, mamul ve kalite kontrol stoğu için ayrı depolama yerleri olabilir. Bu nitelik, Tesis'ten daha ayrıntılı bir konum detayı seviyesi sağlar. Analizde, alım alanından ana depoya transferlerin teslim süresi gibi farklı stok alanları arasındaki hareketleri anlamak için kullanılır. Depolama yeri bazında depolama kullanımını ve hareket sıklığını analiz etmek, depo düzenini ve dahili lojistiği optimize etmeye yardımcı olur. Neden önemli Bir tesis içindeki stok konumunun ayrıntılı bir görünümünü sağlayarak dahili hareketlerin ve depolama verimliliğinin analizine yardımcı olur. Nereden alınır Malzeme belgesi kalem tablosu MSEG'de, LGORT (Depolama Yeri) alanında bulunur. Örnekler 0001RM01FG01QI01 | |||
| Hareket Sebep Kodu MovementReasonCode | Envanter hareketinin nedenini belirten bir kod. | ||
| Açıklama Hareket Nedeni kodu, bir mal hareketinin neden gerçekleştirildiğine dair ek bağlam sağlar. Genellikle envanter ayarlamaları, iadeler veya hurdaya ayırma gibi planlanmamış hareketleri açıklamak için kullanılır. Bu nitelik, kök neden analizi için son derece değerlidir. 'Manuel Envanter Ayarlama Sürücüleri' gösterge tablosu için, neden koduna göre analiz yapmak, tutarsızlıkların (örneğin hasar, hırsızlık veya veri giriş hataları) neden meydana geldiğini ortaya çıkarabilir. Bu içgörü, işletmelerin sadece semptomları düzeltmek yerine temel sorunları ele almasına yardımcı olur. Neden önemli Planlanmamış envanter hareketlerinin ardındaki 'nedeni' açıklayarak hedefe yönelik kök neden analizine olanak tanır. Nereden alınır Malzeme belgesi kalem tablosu MSEG'de, GRUND (Hareket Nedeni) alanında bulunur. Örnekler 00010005102 | |||
| Hareket Türü MovementType | SAP'de bir mal hareketinin nasıl kaydedildiğini kontrol eden üç haneli bir anahtar. | ||
| Açıklama Hareket Tipi, SAP Stok Yönetimi'nde bir malzeme hareketinin özelliklerini belirleyen kritik bir kontrol anahtarıdır. Hangi hesapların güncellendiğini, işlemin ekran düzeninin nasıl göründüğünü ve hangi miktar veya değer alanlarının güncellendiğini belirtir. Örneğin, '101' mal girişi, '311' transfer kaydı ve '551' hurdaya ayırma içindir. Bu nitelik, kullanıcı dostu 'Faaliyet' adını türetmek için sıklıkla kaynaktır. Hareket Tipine göre süreçleri analiz etmek, envanterin nasıl aktığına dair ayrıntılı, teknik bir görünüm sağlar. Süreç haritasının doğruluğunu doğrulamak ve darboğazlara veya sapmalara neden olabilecek belirli işlem türlerini belirlemek için esastır. Neden önemli Her envanter olayının kesin, teknik bir sınıflandırmasını sunar; bu, faaliyetlerin türetilmesi ve ayrıntılı analiz için kritik öneme sahiptir. Nereden alınır Malzeme belgesi kalem tablosu MSEG'de, BWART (Hareket Türü) alanında bulunur. Örnekler 101311261551601 | |||
| Kullanıcı Adı UserName | SAP'de işlemi gerçekleştiren kişinin kullanıcı kimliği. | ||
| Açıklama Bu nitelik, belgeyi kaydeden veya faaliyeti gerçekleştiren çalışanın SAP kullanıcı kimliğini yakalar. Envanter yönetimi sürecindeki belirli eylemlerden kimin sorumlu olduğunu göstererek izlenebilirlik sağlar. Kullanıcıya göre analiz yapmak; performans, uyumluluk ve eğitim ihtiyaçlarını anlamak için esastır. Örneğin, 'Manuel Envanter Ayarlama Sürücüleri' gösterge tablosu, en çok ayarlamayı kimin yaptığını görmek için bu niteliği kullanır. Ek eğitim gerektirebilecek kullanıcıları belirlemeye, yetkisiz faaliyetleri vurgulamaya veya en iyi performans gösterenleri tanımaya yardımcı olabilir. Neden önemli Sorumluluk sağlar ve kullanıcıya özgü davranışları, eğitim ihtiyaçlarını veya uyumluluk sorunlarını belirlemeye yardımcı olur. Nereden alınır Malzeme belgesi başlık tablosu MKPF'de, USNAM (Kullanıcı Adı) alanında bulunur. Örnekler JSMITHMBROWNWAREHOUSE_OPS | |||
| Malzeme Numarası MaterialNumber | Yönetilen ürün veya malzemenin benzersiz tanımlayıcısı. | ||
| Açıklama Genellikle SKU (Stok Tutma Birimi) olarak adlandırılan Malzeme Numarası, belirli bir ürüne atanan benzersiz koddur. Envanter yönetiminde temel bir ana veri öğesidir ve malların miktarlarını, değerlerini ve hareketlerini izlemek için kullanılır. Süreç madenciliğinde, Malzeme Numarasına göre analiz, envanter süreçlerine ürün odaklı bir görünüm sağlar. Hangi ürünlerin en uzun kalite kontrol sürelerine sahip olduğu, hangilerinin en sık hurdaya ayrıldığı veya hangilerinin en yüksek dahili transfer hacmine sahip olduğu gibi soruları yanıtlamaya yardımcı olur. Bu segmentasyon, ürüne özgü sorunları belirlemek ve farklı mal türleri için envanter stratejilerini optimize etmek için kritik öneme sahiptir. Neden önemli Ürüne göre analiz segmentasyonuna olanak tanıyarak belirli öğelere özgü kalıpları ve sorunları ortaya çıkarır. Nereden alınır Malzeme belgesi kalem tablosu MSEG'de, MATNR alanında bulunur. Ana veri MARA tablosundadır. Örnekler RM-1001FG-2050-B100-400-A | |||
| Miktar Quantity | Envanter hareketinde yer alan malzemenin miktarı. | ||
| Açıklama Bu nitelik, belirli bir faaliyette taşınan, alınan, çıkarılan veya ayarlanan malzeme miktarını temsil eder. Malzeme için temel ölçü biriminde kaydedilir. Miktarı analiz etmek, envanter süreçlerinin ölçeğini ve etkisini anlamak için hayati öneme sahiptir. 'SKU'ya Göre Mal Çıkışı Verimliliği' gibi, elleçlenen mal hacmini görselleştiren gösterge tablolarının oluşturulmasına olanak tanır. Aynı zamanda 'Hurdaya Ayrılmış/Elden Çıkarılmış Stok Oranı' gibi KPI'ları hesaplamak için kullanılır ve süreç analizine sadece olayları saymanın ötesine geçen nicel bir boyut kazandırır. Neden önemli Her faaliyetteki malzeme hacmini nicelleştirerek verim, hurda hacmi ve ayarlama etkisinin analizini sağlar. Nereden alınır Malzeme belgesi kalem tablosu MSEG'de, MENGE (Miktar) alanında bulunur. Örnekler 10012.55000-10 | |||
| Tesis Plant | Envanterin bulunduğu bir tesisi (örneğin bir fabrika veya dağıtım merkezi) temsil eden organizasyonel birim. | ||
| Açıklama Tesis, SAP'de bir üretim tesisi, merkezi bir depolama alanı veya bir şirket merkezi olabilen merkezi bir organizasyonel birimdir. Tüm envanter fiziksel veya mantıksal olarak bir Tesis içinde bulunur. Tesis bazında analiz yapmak, farklı fiziksel konumlar arasında süreç performansını karşılaştırmak için temeldir. 'Hangi tesiste rafa yerleştirme döngü süresi en uzundur?' veya 'Tesis A'da envanter tutarsızlık oranı Tesis B'den daha mı yüksektir?' gibi soruları yanıtlamaya yardımcı olur. Bu coğrafi veya organizasyonel segmentasyon, konuma özgü sorunları belirlemek ve en iyi uygulamaları kuruluş genelinde paylaşmak için anahtardır. Neden önemli Farklı şirket konumlarındaki envanter süreçlerinin ve performansının karşılaştırılmasını sağlar. Nereden alınır Malzeme belgesi kalem tablosu MSEG'de, WERKS (Tesis) alanında bulunur. Örnekler 10001710DE01US01 | |||
| Depolama Gözü StorageBin | Malzemelerin fiziksel olarak bulunduğu bir depodaki en ayrıntılı depolama birimi. | ||
| Açıklama Depolama Bölmesi, bir depodaki raf konumu gibi belirli bir koordinatı temsil eder. Bu detay seviyesi genellikle SAP Depo Yönetimi (WM) veya Genişletilmiş Depo Yönetimi (EWM) uygulandığında kullanılır. 'Depo Depolama Kullanımı' Dashboard'u için bu nitelik kritiktir. Depo alanının ne kadar etkili kullanıldığını analiz etmeye, potansiyel yoğunluk noktalarını belirlemeye ve verimsiz rafa yerleştirme veya toplama yollarını ortaya çıkarmaya olanak tanır. Depolama bölmeleri arasındaki hareketleri analiz etmek, depo düzenini optimize etmeye ve operatörlerin seyahat süresini azaltmaya yardımcı olur. Neden önemli En ayrıntılı konum verilerini sağlayarak depo alanı kullanımının ve operasyonel verimliliğin analizini mümkün kılar. Nereden alınır WM kullanılıyorsa, bu LTAK/LTAP gibi transfer emri tablolarında bulunabilir. Envanter belgeleri için MSEG-LGPBE'de olabilir. SAP S/4HANA dokümantasyonuna başvurun. Örnekler A-01-01-AB-05-10-CRCV-AREA-01 | |||
| Kalite Kontrol Döngü Süresi QualityInspectionCycleTime | Bir partinin serbest bırakılmadan önce kalite kontrolde geçirdiği süre. | ||
| Açıklama Bu hesaplanan metrik, belirli bir envanter partisi için 'Stok Kalite Kontrole Kaydedildi' faaliyeti ile 'Kalite Kontrol Stoğu Serbest Bırakıldı' faaliyeti arasında geçen süreyi ölçer. Malların kalite kontrol süreçleri nedeniyle kullanılamaz durumda kaldığı süreyi temsil eder. Bu nitelik, 'Kalite Kontrol Döngü Süresi' KPI'ını ve gösterge tablosunu doğrudan destekler. Bu süreyi hesaplayıp analiz ederek işletmeler, kalite sürecindeki darboğazları belirleyebilir, farklı malzemeler veya tesisler arasındaki performansı karşılaştırabilir ve genel stok mevcudiyetini iyileştirmek ve teslim sürelerini azaltmak için denetimleri kolaylaştırma fırsatları bulabilir. Neden önemli Kalite kontrolün neden olduğu gecikmeleri nicelleştirerek stok mevcudiyetini ve süreç hızını artırma fırsatlarını vurgular. Nereden alınır Bu, kalite kontrol aşamasının başlangıç ve bitiş faaliyetlerinin zaman damgaları arasındaki zaman farkını bularak türetilen hesaplanmış bir alandır. Örnekler 2880086400172800 | |||
| Kaynak Sistem SourceSystem | `veri`nin çıkarıldığı kaynak sistemi tanımlar. | ||
| Açıklama Bu nitelik, envanter yönetimi verilerinin kaynaklandığı kayıt sistemini belirtir. Bu bağlamda, belirli SAP S/4HANA örneği olacaktır. Bu bilgi, verilerin birden fazla ERP'den, depo yönetim sistemlerinden veya eski platformlardan çekilebileceği ortamlarda hayati öneme sahiptir. Tek sistem analizinde statik görünse de, farklı kaynaklardan gelen verileri birleştirerek bütünsel bir süreç görünümü oluştururken hayati hale gelir. Veri yönetişiminde, veri çıkarma sorunlarını gidermede ve veri soyunun net olmasını sağlamada yardımcı olur. Neden önemli Verinin kökeni hakkında bağlam sağlar; bu, veri yönetimi ve çoklu sistem analizi için esastır. Nereden alınır Bu, genellikle veri dönüştürme süreci sırasında belirli SAP S/4HANA örneğini tanımlamak için sabit kodlanmış bir değerdir. Örnekler S4H_PROD_100SAP_S4_FINANCES4HANA_GLOBAL | |||
| Malzeme Belgesi Numarası MaterialDocumentNumber | Mal hareketini kaydeden malzeme belgesini tanımlayan benzersiz numara. | ||
| Açıklama SAP'de bir mal hareketi kaydedildiğinde, sistem hareketin kanıtı olarak bir malzeme belgesi oluşturur. Bu
Neden önemli Denetim için işlem anahtarı görevi görür ve birlikte yürütülen faaliyetlerin gruplandırılmasına olanak tanır. Nereden alınır MKPF (başlık) ve MSEG (kalem) tablolarında, MBLNR (Malzeme Belgesi Numarası) alanında bulunur. Örnekler 490000123450000056784900002345 | |||
| Ölçü Birimi UnitOfMeasure | Malzemenin miktarının ölçüldüğü birim (örneğin, adet, kilogram). | ||
| Açıklama Ölçü Birimi, 'Miktar' niteliği için birimi belirtir. Yaygın örnekler arasında adet (PC), kilogram (KG), litre (L) veya kutu (BOX) bulunur. Bu, miktar alanı için temel bir bağlam sağlar. Sıklıkla basit bir tanımlayıcı olarak kullanılsa da, bu nitelik veri kalitesini sağlamak ve farklı birimlerin ortak bir standarda dönüştürülmesi gereken analizler için önemlidir. Örneğin, hurdaya ayrılmış envanterin toplam değerini doğru bir şekilde hesaplamak için, farklı birimlerdeki miktarların anlaşılması ve potansiyel olarak dönüştürülmesi gerekir. Neden önemli 'Miktar' niteliğine temel bir bağlam sağlayarak malzeme hacimlerinin doğru yorumlanmasını sağlar. Nereden alınır Malzeme belgesi kalem tablosu MSEG'de, MEINS (Temel Ölçü Birimi) alanında bulunur. Örnekler PCKGEAM | |||
| Sipariş Karşılama Döngü Süresi OrderFulfillmentCycleTime | Toplama başladığı andan malların teslimat için çıkarıldığı ana kadar olan uçtan uca süre. | ||
| Açıklama Bu, 'Toplama Başlatıldı' faaliyetinden 'Teslimat İçin Mal Çıkışı Kaydedildi' faaliyetine kadar geçen toplam süreyi ölçen hesaplanmış bir metriktir. Süreç başladığında deponun bir müşteri siparişini hazırlaması ve göndermesi için geçen toplam süreyi temsil eder. Bu nitelik, 'Sipariş Karşılama Döngü Süresi' KPI'ının doğrudan bir ölçüsüdür. Bu süreyi analiz etmek, işletmelerin müşteri taleplerine karşı duyarlılıklarını anlamalarına yardımcı olur. Ürüne, depoya veya müşteriye göre ayrıntılandırılabilir, bu da toplama, paketleme ve sevkiyat sürecinde gecikmelerin nerede meydana geldiğini belirleyerek müşteri memnuniyetini ve lojistik verimliliğini doğrudan etkiler. Neden önemli Müşteri memnuniyetinde önemli bir faktör olan depo çıkış sürecinin hızını ve verimliliğini ölçer. Nereden alınır Bu, her parti için 'Toplama Başlatıldı' ve 'Teslimat İçin Mal Çıkışı Kaydedildi' olaylarının zaman farkını hesaplayarak türetilen hesaplanmış bir niteliktir. Örnekler 7200144003600 | |||
| Son Kullanma Tarihi ExpirationDate | Mal partisinin süresi dolduğu ve artık kullanılamaz hale geldiği tarih. | ||
| Açıklama Raf Ömrü Son Kullanma Tarihi (SLED), çabuk bozulan veya zaman duyarlı mallar için kritik bir ana veri öğesidir. Parti düzeyinde yönetilir ve bir ürünün ne zaman artık satılamaz veya tüketilemez olduğunu belirler. Bu nitelik, 'Eskimiş ve Süresi Dolmuş Stok Analizi' gösterge tablosu için esastır. Son kullanma tarihi bağlamında faaliyetleri analiz ederek, işletmelerin süresi dolma riski taşıyan partileri belirlemesine ve proaktif önlemler almasına olanak tanır. İlk Süresi Dolan İlk Çıkar (FEFO) gibi envanter rotasyon politikalarının etkinliğini ölçmeye ve hurdaya ayrılmış süresi dolmuş stoklardan kaynaklanan kayıpları nicelleştirmeye yardımcı olur. Neden önemli Eskimiş ve süresi dolmuş stokların analizini sağlayarak israfı ve finansal kayıpları en aza indirmeye yardımcı olur. Nereden alınır Parti ana tablosu MCH1 veya MCHA'da, VFDAT (Raf Ömrü Bitiş Tarihi) alanında bulunur. Örnekler 2024-12-312025-06-302024-09-01 | |||
| Son Veri Güncellemesi LastDataUpdate | Bu kayda ait verilerin kaynak sistemden en son ne zaman güncellendiğini gösteren zaman damgası. | ||
| Açıklama Bu nitelik, kaynak sistemden yapılan en son veri çıkarımı veya güncellemesinin tarih ve saatini kaydeder. Analiz edilen bilginin güncelliği hakkında kritik meta veri sağlar. Bu, kullanıcıların neredeyse gerçek zamanlı verilere mi yoksa önceki bir döneme ait bir anlık görüntüye mi baktıklarını anlamalarına yardımcı olur. Herhangi bir analizde, verilerin güncelliğini bilmek, ilgili ve doğru sonuçlar çıkarmak için kilit öneme sahiptir. Bu alan, analistlerin ve iş kullanıcılarının verilerin güncelliğini doğrulamasına olanak tanır ve sunulan içgörülere bağlam sağlamak için genellikle gösterge tablolarında görüntülenir. Neden önemli Kullanıcılara verilerin güncelliği hakkında bilgi vererek analizlerin güncel bilgilere dayanmasını sağlar. Nereden alınır Bu Örnekler 2024-05-21T08:00:00Z2024-05-20T08:00:00Z | |||
| Stok Tipi StockType | Envanterin serbest, kalite kontrolünde veya blokajlı gibi durumunu gösterir. | ||
| Açıklama Stok Tipi, envanteri kullanılabilirliğine göre sınıflandırır. Ana tipler; serbest kullanım stoku (serbestçe mevcut), kalite kontrol stoku (kalite kontrol bekleyen) ve engellenmiş stok (kullanıma kapalı)tur. Mal hareketleri sıklıkla stok tipinin değiştirilmesini içerir. Stok tipindeki değişiklikleri izlemek, envanter mevcudiyeti sürecini anlamak için temeldir. 'Stok Kalite Kontrole Kaydedildi' ve 'Stok Durumu Engelli Olarak Değiştirildi' gibi faaliyetleri doğrudan destekler. Her stok tipinde, özellikle 'kalite kontrol'de harcanan süreyi analiz etmek, satış veya üretim için malların mevcudiyetini etkileyen gecikmeleri belirlemek için kilit öneme sahiptir. Neden önemli Envanterin kullanılabilirlik durumunu izler; bu, kalite denetimi ve stok mevcudiyetindeki gecikmeleri analiz etmek için kritik öneme sahiptir. Nereden alınır Malzeme belgesi kalem tablosu MSEG'de, INSMK (Stok Türü) alanında bulunur. Örnekler Serbest KullanımKalite KontrolBlokajlı Stok | |||
Stok Yönetimi Faaliyetleri
| Aktivite | Açıklama | ||
|---|---|---|---|
| Kalite Kontrol Stoğu Serbest Bırakıldı | Bir partinin kalite kontrolünden geçtiğini ve artık kullanım veya rafa yerleştirme için mevcut olduğunu gösterir. Bu, kalite stoğundan serbest kullanım gibi başka bir stok türüne açık bir transfer kaydı olarak kaydedilir. | ||
| Neden önemli Bu kilometre taşı, kalite sürecinin tamamlandığını ve envanterin kullanılabilir hale geldiğini işaretler. Buradaki gecikmeler, üretim veya karşılama süreçlerinde önemli aşağı yönlü sorunlara neden olabilir. Nereden alınır MATDOC tablosunda bir transfer kaydı olarak kaydedilir. Genellikle Hareket Tipi (BWART) 321 ile, stoğu 'Kalite Kontrol'den 'Serbest Kullanım'a taşıyarak tanımlanır. Yakala MATDOC'taki malzeme belgelerinden, 321 hareket türüyle yakalanmıştır. Event tipi explicit | |||
| Mal Kabul Kaydı Yapıldı | Bir envanter partisinin depoya ilk girişini işaret eder; genellikle bir tedarikçiden veya üretimden gelir. Bu olay, malların teslim alınması üzerine bir malzeme belgesi oluşturularak SAP S/4HANA'da açıkça kaydedilir. | ||
| Neden önemli Bu, envanter yaşam döngüsü için birincil başlangıç olayıdır. Bu faaliyetten yerleştirme gibi diğerlerine kadar geçen süreyi analiz etmek, teslim alma iskelesi verimliliğini ölçmek için hayati öneme sahiptir. Nereden alınır MATDOC tablosunda kaydedilir. Satın Alma Siparişi girişleri için 101 veya engellenmiş stoka mal girişi için 103 gibi belirli Hareket Tipleri (BWART) ile tanımlanır. Yakala MATDOC'taki malzeme belgelerinden, ilgili mal kabulü hareket türleriyle yakalanmıştır. Event tipi explicit | |||
| Stok Ayarlaması Kaydedildi | Fiziksel envanter sayımı veya başka bir tutarsızlıktan kaynaklanan stok miktarındaki bir değişikliği kaydeder. Bu olay, kayıtlı envanteri fiziksel sayıma uyacak şekilde açıkça ayarlar. | ||
| Neden önemli Bu ayarlamalar, envanter doğruluğunu sürdürmek için kritik öneme sahiptir. Yüksek sıklıktaki ayarlamalar, stok işleme, güvenlik veya veri girişinde temel sorunlara işaret eder. Nereden alınır MATDOC tablosunda kaydedilir. Fiziksel envanter Hareket Tipleri (BWART) ile (örneğin 701 (envanter artışı) veya 702 (envanter kaybı)) tanımlanır. Yakala MATDOC'taki malzeme belgelerinden, fiziksel envanter ayarlama hareket türleriyle (örn. 701, 702) yakalanmıştır. Event tipi explicit | |||
| Stok Hurdaya Ayrıldı | Bir envanter partisinin nihai elden çıkarılmasını işaret eder ve onu envanter kayıtlarından kalıcı olarak kaldırır. Bu genellikle süresi dolmuş, hasarlı veya eskimiş stoklar için gerçekleşir. | ||
| Neden önemli Bu, finansal bir kaybı temsil eden bir bitiş olayıdır. Hurdaya ayırma olaylarını analiz etmek, envanterin eskimesi, elleçleme prosedürleri veya talep tahmini ile ilgili sorunları belirlemeye yardımcı olur. Nereden alınır MATDOC tablosunda kaydedilir. Hurdaya ayırma için Hareket Tipleri (BWART) ile (örneğin 551 (serbest stoktan), 553 (KG'den) veya 555 (engellenmiş stoktan)) tanımlanır. Yakala MATDOC'taki malzeme belgelerinden, hurdaya ayırma hareket türleriyle (örn. 551) yakalanmıştır. Event tipi explicit | |||
| Teslimat İçin Mal Çıkışı Kaydedildi | Giden sürecin son adımını kaydeder; burada partinin mülkiyeti bir müşteriye veya taşıyıcıya devredilir. Bu, envanteri azaltan ve muhasebeye kaydedilen açık bir işlemdir. | ||
| Neden önemli Bu, sipariş karşılama süreci için önemli bir tamamlama olayıdır. Zamanında teslimatı ölçmek ve genel sipariş karşılama döngü süresini hesaplamak için hayati öneme sahiptir. Nereden alınır MATDOC tablosunda kaydedilir. Bir satış siparişi teslimatına mal çıkışı için Hareket Tipi (BWART) ile (tipik olarak 601) tanımlanır. Yakala MATDOC'taki malzeme belgelerinden, 601 hareket türüyle yakalanmıştır. Event tipi explicit | |||
| Üretim İçin Mal Çıkışı Kaydedildi | Bir üretim veya süreç siparişi tarafından bir envanter partisinin tüketimini temsil eder. Bu işlem, envanteri azaltır ve malzeme maliyetini üretim siparişine tahsis eder. | ||
| Neden önemli Bu, bileşenler için envanter yaşam döngüsünün sonunu işaret eden birincil bir tüketim olayıdır. Üretim için malzeme mevcudiyetini ve tüketim kalıplarını analiz etmek için kritiktir. Nereden alınır MATDOC tablosunda kaydedilir. Siparişe mal çıkışı için Hareket Tipleri (BWART) ile (örneğin 261) tanımlanır. Yakala MATDOC'taki malzeme belgelerinden, 261 hareket türüyle yakalanmıştır. Event tipi explicit | |||
| Yerleştirme Transferi Kaydedildi | Partinin bir teslim alma veya hazırlık alanından nihai depolama konumuna veya gözüne fiziksel hareketini temsil eder. Bu, SAP'de bir transfer kaydı malzeme belgesi olarak kaydedilir. | ||
| Neden önemli Gelen alım sürecini tamamlar. Rafa yerleştirme süresi olarak bilinen bu aktiviteyi tamamlama süresi, depo verimliliği için kritik bir KPI'dır. Nereden alınır MATDOC tablosunda, genellikle depolama konumları arasında bir transfer kaydı olarak (örneğin, Hareket Tipi 311) kaydedilir. Belirli hareket, depo yapısına göre değişebilir. Yakala MATDOC'taki transfer kayıt belgeleriyle, stoku geçici/alım Depolama Yerinden nihai depolama Depolama Yerine taşıyanlar olarak belirlenir. Event tipi explicit | |||
| Dahili Stok Transferi Kaydedildi | Aynı tesis içindeki farklı depolama yerleri veya bölmeler arasında bir envanter partisinin hareketini yakalar. Bu, bir malzeme belgesi oluşturan açık bir işlemdir. | ||
| Neden önemli Dahili transferleri takip etmek, depo operasyonel verimliliğini analiz etmeye, gereksiz hareketleri belirlemeye ve konumlar arası stok yenileme Nereden alınır MATDOC tablosunda kaydedilir. Depolama konumundan depolama konumuna transferler için genellikle Hareket Tipleri (BWART) 311 ile tanımlanır. Yakala MATDOC'taki malzeme belgelerinden, dahili stok hareketleri için hareket türleriyle (örn. 311) yakalanmıştır. Event tipi explicit | |||
| Parti Durumu Değiştirildi | Parti ana kaydındaki bir değişikliği yansıtır, örneğin durumunu 'Serbest'ten 'Kısıtlı'ya değiştirmek gibi. Bu bir malzeme hareketi değil, ana verideki kaydedilen bir değişikliktir. | ||
| Neden önemli Parti durumundaki değişiklikler, satış veya üretimdeki kullanılabilirliğini doğrudan etkiler. Bu değişiklikleri analiz etmek, fiziki hareketi içermeyen sona ermekte olan stok veya kalite kontrol sorunlarını ortaya çıkarabilir. Nereden alınır Parti Ana tabloları (MCH1, MCHA) için değişiklik günlüklerinden çıkarılmıştır. CDHDR ve CDPOS tabloları, parti durum alanı (MCH1-ZUSTD) değişikliklerini izler. Yakala CDHDR/CDPOS'taki değişiklik belgelerinden, parti ana kaydındaki (MCH1-ZUSTD) durum alanı için türetilmiştir. Event tipi inferred | |||
| Satış İadesi Alındı | Daha önce sevk edilmiş bir partinin müşteriden depoya geri dönüşünü yakalar. Bu, envanteri artıran açık bir işlemdir. | ||
| Neden önemli İadeleri takip etmek, ürün kalitesi sorunlarını ve müşteri memnuniyetsizliğini anlamak için hayati öneme sahiptir. İadelerin işlenmesi ve elden çıkarılması süreci de bir verimsizlik kaynağı olabilir. Nereden alınır MATDOC tablosunda kaydedilir. Satış iadeleri için Hareket Tipleri (BWART) ile (örneğin 651 (serbest stoğa) veya 653 (kalite kontrole)) tanımlanır. Yakala MATDOC'taki malzeme belgelerinden, satış iade hareket türleriyle (örn. 651, 653) yakalanmıştır. Event tipi explicit | |||
| Stok Durumu Engelli Olarak Değiştirildi | Partinin durumunda bir değişikliği temsil eder, onu kullanıma kapatır; genellikle hasar, bekletme talepleri veya diğer nedenlerden dolayıdır. Bu, SAP'de açık bir transfer kaydıdır. | ||
| Neden önemli Envanter kullanılabilirliğindeki kesintileri vurgular. Yüksek sıklıkta bloke edici olaylar, elleçleme, depolama koşulları veya tedarikçi kalitesi ile ilgili sorunları gösterebilir. Nereden alınır MATDOC tablosunda bir transfer kaydı olarak kaydedilir. Stoğu 'Engellenmiş' durumdan 'Serbest' duruma taşımak için genellikle Hareket Tipi (BWART) 344'ü ve 'Serbest' durumdan 'Engellenmiş' duruma taşımak için 343'ü kullanır. Bu faaliyet 343 içindir. Yakala MATDOC'taki malzeme belgelerinden, 343 hareket türüyle belirlenir. Event tipi explicit | |||
| Stok Durumu Serbest Olarak Değiştirildi | Partinin durumunda bir değişikliği temsil eder, onu engellenmiş veya kalite bekletmesinden serbest bırakarak kullanıma hazır hale getirir. Bu, açık bir transfer kaydı olarak kaydedilir. | ||
| Neden önemli Bu faaliyet, bir envanter bekletmesinin çözümünü işaretler. Engelli durumda geçirilen stok süresi, çözüm süreçlerini iyileştirmek için analiz edilebilir. Nereden alınır MATDOC tablosunda bir transfer kaydı olarak kaydedilir. Hareket Tipi (BWART) 344, stoğu 'Engellenmiş' durumdan 'Serbest Kullanım' durumuna taşır. Yakala MATDOC'taki malzeme belgelerinden, 344 hareket türüyle belirlenir. Event tipi explicit | |||
| Stok Kalite Kontrole Kaydedildi | Alınan bir partinin kalite kontrol bekleme durumuna hareketini temsil eder, onaylanana kadar kullanıma kapatır. Bu, SAP'de partinin stok tipini değiştiren açık bir işlemdir. | ||
| Neden önemli Bu faaliyet, kalite kontrol sürecini başlatır. Bununla KG'den serbest bırakma arasındaki süre, kalite ile ilgili gecikmeleri anlamak için önemli bir ölçüttür. Nereden alınır MATDOC tablosunda kaydedilir. Bu, Stok Tipi (INSMK) 'Q' (Kalite Kontrol) olarak ayarlanmış bir mal girişi hareketi (örneğin, 101) veya bir transfer kaydı (örneğin, 322) olabilir. Yakala Envanteri 'Kalite Kontrol' stok türüne yerleştiren MATDOC'taki malzeme belgeleriyle belirlenir. Event tipi explicit | |||
| Toplama Başlatıldı | Bir partinin depolama gözünden alınması için bir depo görevinin oluşturulduğu sipariş karşılama sürecinin başlangıcını işaret eder. Bu genellikle bir Transfer Emri veya Depo Görevi oluşturulduğunda kaydedilir. | ||
| Neden önemli Bu faaliyet, toplama sürecinin tetikleyicisidir. Bu olaydan toplama tamamlanmasına kadar geçen süreyi analiz etmek, depo operatörü verimliliğini ölçmeye ve gecikmeleri belirlemeye yardımcı olur. Nereden alınır Bu genellikle MATDOC'ta değildir. Depo Yönetimi (WM/EWM) olan sistemlerde, bu, bir Transfer Emrinin (LTAK tablosu) veya Depo Görevinin oluşturulma zaman damgasından çıkarılır. Yakala Malzeme partisine bağlı bir Transfer Emri (WM'de) veya Depo Görevi (EWM'de) oluşturma kaydından çıkarılmıştır. Event tipi inferred | |||
Veri Çekim Kılavuzları
Adımlar
- Sistem Erişimi Kurun: SAP S/4HANA sistemindeki Core Data Services (CDS) görünümlerini sorgulamak için gerekli yetkilere sahip bir kullanıcıya sahip olduğunuzdan emin olun. Bu genellikle bir sistem yöneticisi tarafından verilen erişimi gerektirir.
- Bir SQL İstemcisi Seçin: SAP HANA veritabanına bağlanabilen bir SQL istemci aracı seçin. Yaygın seçenekler arasında SAP HANA Studio, SAP HANA Database Explorer veya DBeaver gibi üçüncü taraf araçlar bulunur.
- Veritabanı Bağlantısını Yapılandırın: SQL istemcinizi kullanarak yeni bir veritabanı bağlantısı oluşturun. HANA veritabanı ana bilgisayar adı, bağlantı noktası numarası (genellikle 3
15) ve veritabanı kullanıcı kimlik bilgilerinize ihtiyacınız olacaktır. - SQL Sorgusunu Hazırlayın: Bu belgenin 'sorgu' bölümünde verilen SQL sorgusunun tamamını SQL istemcinizin düzenleyicisine kopyalayın.
- Sorgu Parametrelerini Ayarlayın: Sorgudaki yer tutucu değerlerini bulun.
I_MaterialDocumentItem.PostingDate BETWEEN 'YYYYMMDD' AND 'YYYYMMDD'ifadesini istediğiniz tarih aralığıyla değiştirmeniz gerekir, örneğinBETWEEN '20230101' AND '20230630'. Ayrıca,MaterialDocumentItem.Plant IN ('Plant1', 'Plant2')gibi şirket veya tesise özel filtreleri kuruluş yapınızla eşleşecek şekilde güncelleyin. - Sorguyu Yürütün: Değiştirilen SQL sorgusunu S/4HANA veritabanına karşı çalıştırın. Yürütme süresi, tarih aralığına ve sisteminizdeki envanter veri hacmine bağlı olarak değişecektir.
- Verileri Gözden Geçirin: Sorgu bittikten sonra, sonuçların doğru ve eksiksiz göründüğünden emin olmak için SQL istemcinizdeki sonuçları gözden geçirin. Farklı aktivitelerin varlığını ve temel özniteliklerin doldurulmasını kontrol edin.
- Olay Günlüğünü Dışa Aktarın: Tüm sonuç kümesini SQL istemcinizden bir CSV dosyasına dışa aktarın. Karakter sorunlarını önlemek için dışa aktarma ayarlarının UTF-8 kodlaması kullandığından emin olun.
- Yükleme İçin Hazırlık Yapın: CSV dosyasındaki sütunları, sorguda belirtildiği gibi tam olarak adlandırın; örneğin
InventoryBatchLot,ActivityName,EventTimevb. Bu dosya artık bir süreç madenciliği aracına yüklenmeye hazırdır.
Konfigürasyon
- Yetkilendirmeler: Sorguyu çalıştıran kullanıcının şu CDS görünümleri üzerinde
SELECTyetkisine sahip olması gerekir:I_MaterialDocumentItem,I_BatchChangeDocumentveI_WarehouseTask. Bu görünümlerin bulunduğu temel veritabanı şemasına erişim de gereklidir. - Tarih Aralığı Filtrelemesi:
PostingDate,ChangeDocumentCreationDateveyaWarehouseTaskCreationDatealanlarına bir tarih aralığı filtresi uygulamak kritik öneme sahiptir. Analiz için tipik bir aralık 3 ila 12 aydır. Birden fazla yıl için sorgulama yapmak önemli performans sorunlarına neden olabilir. - Organizasyonel Filtreler: Daha iyi performans ve hedeflenmiş analiz için
PlantveyaCompanyCode'a göre filtreleme yapmak üzereWHEREkoşulları ekleyin. Bu, veri hacmini azaltır ve çıkarımı işin ilgili bölümlerine odaklar. - Veri Hacmi: Envanter yönetimi sistemlerinin yüksek miktarda veri ürettiğini unutmayın. Geniş bir tarih aralığı, hem çıkarma sırasında kaynak sistemi hem de istemci aracınızın performansını potansiyel olarak etkileyen milyonlarca satırla sonuçlanabilir.
- Genişletilmiş Depo Yönetimi (EWM): 'Toplama Başlatıldı' aktivitesi, yalnızca SAP Genişletilmiş Depo Yönetimi kullanıyorsanız doldurulan
I_WarehouseTaskCDS görünümüne dayanır. Kuruluşunuz eski Depo Yönetimi (WM) modülünü veya sadece Envanter Yönetimi (IM) kullanıyorsa, bu belirli aktivite çıkarılmaz.
a Örnek Sorgu sql
SELECT
mat_doc.Batch AS "InventoryBatchLot",
CASE
WHEN mat_doc.MovementType = '101' AND mat_doc.InventoryStockType = '2' THEN 'Stock Posted to Quality Inspection'
WHEN mat_doc.MovementType = '101' THEN 'Goods Receipt Posted'
WHEN mat_doc.MovementType = '321' THEN 'Quality Inspection Stock Released'
WHEN mat_doc.MovementType = '311' THEN 'Internal Stock Transfer Posted'
WHEN mat_doc.MovementType = '344' THEN 'Stock Status Changed to Blocked'
WHEN mat_doc.MovementType IN ('343', '322') THEN 'Stock Status Changed to Unrestricted'
WHEN mat_doc.MovementType IN ('701', '702') THEN 'Inventory Adjustment Posted'
WHEN mat_doc.MovementType = '601' THEN 'Goods Issue for Delivery Posted'
WHEN mat_doc.MovementType = '261' THEN 'Goods Issue for Production Posted'
WHEN mat_doc.MovementType IN ('651', '653') THEN 'Sales Return Received'
WHEN mat_doc.MovementType = '551' THEN 'Stock Scrapped'
WHEN mat_doc.MovementType = '313' THEN 'Put-Away Transfer Posted' -- Example for two-step transfers
ELSE 'Unknown Material Movement'
END AS "ActivityName",
TO_TIMESTAMP(mat_doc.PostingDate || LPAD(mat_doc.CreationTime, 6, '0'), 'YYYYMMDDHH24MISS') AS "EventTime",
mat_doc.Material AS "MaterialNumber",
mat_doc.CreatedByUser AS "UserName",
mat_doc.MovementType AS "MovementType",
mat_doc.Plant AS "Plant",
mat_doc.StorageLocation AS "StorageLocation",
mat_doc.QuantityInEntryUnit AS "Quantity",
mat_doc.ReasonForMovement AS "MovementReasonCode"
FROM
I_MaterialDocumentItem AS mat_doc
WHERE
mat_doc.Batch IS NOT NULL AND mat_doc.Batch <> ''
AND mat_doc.PostingDate BETWEEN '20230101' AND '20231231' -- Placeholder: Set your date range
-- AND mat_doc.Plant IN ('Plant1', 'Plant2') -- Placeholder: Add filters for relevant plants
UNION ALL
SELECT
SPLIT_PART(change_doc.ChangeableObjectDescription, '/', 3) AS "InventoryBatchLot",
'Batch Status Changed' AS "ActivityName",
change_doc.ChangeDocumentCreationDateTime AS "EventTime",
SPLIT_PART(change_doc.ChangeableObjectDescription, '/', 1) AS "MaterialNumber",
change_doc.ChangedByUser AS "UserName",
NULL AS "MovementType",
SPLIT_PART(change_doc.ChangeableObjectDescription, '/', 2) AS "Plant",
NULL AS "StorageLocation",
NULL AS "Quantity",
NULL AS "MovementReasonCode"
FROM
I_BatchChangeDocument AS change_doc
WHERE
change_doc.ChangeDocumentTable = 'MCHA' AND change_doc.ChangeDocumentTableFieldName = 'ZUSTD'
AND TO_VARCHAR(change_doc.ChangeDocumentCreationDate) BETWEEN '20230101' AND '20231231' -- Placeholder: Set your date range
UNION ALL
SELECT
wh_task.Batch AS "InventoryBatchLot",
'Picking Initiated' AS "ActivityName",
wh_task.WarehouseTaskCreationDateTime AS "EventTime",
wh_task.Product AS "MaterialNumber",
wh_task.CreatedByUser AS "UserName",
NULL AS "MovementType",
wh_task.Plant AS "Plant",
wh_task.SourceStorageLocation AS "StorageLocation",
wh_task.TargetQuantity AS "Quantity",
NULL AS "MovementReasonCode"
FROM
I_WarehouseTask AS wh_task
WHERE
wh_task.Batch IS NOT NULL AND wh_task.Batch <> ''
AND wh_task.WarehouseProcessType IN ('P210', 'P220') -- Placeholder: Adjust process types based on your picking configuration
AND TO_VARCHAR(wh_task.WarehouseTaskCreationDate) BETWEEN '20230101' AND '20231231'; -- Placeholder: Set your date range Adımlar
- Sistem Erişimi Kurun: SAP S/4HANA sistemindeki Core Data Services (CDS) görünümlerini sorgulamak için gerekli yetkilere sahip bir kullanıcıya sahip olduğunuzdan emin olun. Bu genellikle bir sistem yöneticisi tarafından verilen erişimi gerektirir.
- Bir SQL İstemcisi Seçin: SAP HANA veritabanına bağlanabilen bir SQL istemci aracı seçin. Yaygın seçenekler arasında SAP HANA Studio, SAP HANA Database Explorer veya DBeaver gibi üçüncü taraf araçlar bulunur.
- Veritabanı Bağlantısını Yapılandırın: SQL istemcinizi kullanarak yeni bir veritabanı bağlantısı oluşturun. HANA veritabanı ana bilgisayar adı, bağlantı noktası numarası (genellikle 3
15) ve veritabanı kullanıcı kimlik bilgilerinize ihtiyacınız olacaktır. - SQL Sorgusunu Hazırlayın: Bu belgenin 'sorgu' bölümünde verilen SQL sorgusunun tamamını SQL istemcinizin düzenleyicisine kopyalayın.
- Sorgu Parametrelerini Ayarlayın: Sorgudaki yer tutucu değerlerini bulun.
I_MaterialDocumentItem.PostingDate BETWEEN 'YYYYMMDD' AND 'YYYYMMDD'ifadesini istediğiniz tarih aralığıyla değiştirmeniz gerekir, örneğinBETWEEN '20230101' AND '20230630'. Ayrıca,MaterialDocumentItem.Plant IN ('Plant1', 'Plant2')gibi şirket veya tesise özel filtreleri kuruluş yapınızla eşleşecek şekilde güncelleyin. - Sorguyu Yürütün: Değiştirilen SQL sorgusunu S/4HANA veritabanına karşı çalıştırın. Yürütme süresi, tarih aralığına ve sisteminizdeki envanter veri hacmine bağlı olarak değişecektir.
- Verileri Gözden Geçirin: Sorgu bittikten sonra, sonuçların doğru ve eksiksiz göründüğünden emin olmak için SQL istemcinizdeki sonuçları gözden geçirin. Farklı aktivitelerin varlığını ve temel özniteliklerin doldurulmasını kontrol edin.
- Olay Günlüğünü Dışa Aktarın: Tüm sonuç kümesini SQL istemcinizden bir CSV dosyasına dışa aktarın. Karakter sorunlarını önlemek için dışa aktarma ayarlarının UTF-8 kodlaması kullandığından emin olun.
- Yükleme İçin Hazırlık Yapın: CSV dosyasındaki sütunları, sorguda belirtildiği gibi tam olarak adlandırın; örneğin
InventoryBatchLot,ActivityName,EventTimevb. Bu dosya artık bir süreç madenciliği aracına yüklenmeye hazırdır.
Konfigürasyon
- Yetkilendirmeler: Sorguyu çalıştıran kullanıcının şu CDS görünümleri üzerinde
SELECTyetkisine sahip olması gerekir:I_MaterialDocumentItem,I_BatchChangeDocumentveI_WarehouseTask. Bu görünümlerin bulunduğu temel veritabanı şemasına erişim de gereklidir. - Tarih Aralığı Filtrelemesi:
PostingDate,ChangeDocumentCreationDateveyaWarehouseTaskCreationDatealanlarına bir tarih aralığı filtresi uygulamak kritik öneme sahiptir. Analiz için tipik bir aralık 3 ila 12 aydır. Birden fazla yıl için sorgulama yapmak önemli performans sorunlarına neden olabilir. - Organizasyonel Filtreler: Daha iyi performans ve hedeflenmiş analiz için
PlantveyaCompanyCode'a göre filtreleme yapmak üzereWHEREkoşulları ekleyin. Bu, veri hacmini azaltır ve çıkarımı işin ilgili bölümlerine odaklar. - Veri Hacmi: Envanter yönetimi sistemlerinin yüksek miktarda veri ürettiğini unutmayın. Geniş bir tarih aralığı, hem çıkarma sırasında kaynak sistemi hem de istemci aracınızın performansını potansiyel olarak etkileyen milyonlarca satırla sonuçlanabilir.
- Genişletilmiş Depo Yönetimi (EWM): 'Toplama Başlatıldı' aktivitesi, yalnızca SAP Genişletilmiş Depo Yönetimi kullanıyorsanız doldurulan
I_WarehouseTaskCDS görünümüne dayanır. Kuruluşunuz eski Depo Yönetimi (WM) modülünü veya sadece Envanter Yönetimi (IM) kullanıyorsa, bu belirli aktivite çıkarılmaz.
a Örnek Sorgu sql
SELECT
mat_doc.Batch AS "InventoryBatchLot",
CASE
WHEN mat_doc.MovementType = '101' AND mat_doc.InventoryStockType = '2' THEN 'Stock Posted to Quality Inspection'
WHEN mat_doc.MovementType = '101' THEN 'Goods Receipt Posted'
WHEN mat_doc.MovementType = '321' THEN 'Quality Inspection Stock Released'
WHEN mat_doc.MovementType = '311' THEN 'Internal Stock Transfer Posted'
WHEN mat_doc.MovementType = '344' THEN 'Stock Status Changed to Blocked'
WHEN mat_doc.MovementType IN ('343', '322') THEN 'Stock Status Changed to Unrestricted'
WHEN mat_doc.MovementType IN ('701', '702') THEN 'Inventory Adjustment Posted'
WHEN mat_doc.MovementType = '601' THEN 'Goods Issue for Delivery Posted'
WHEN mat_doc.MovementType = '261' THEN 'Goods Issue for Production Posted'
WHEN mat_doc.MovementType IN ('651', '653') THEN 'Sales Return Received'
WHEN mat_doc.MovementType = '551' THEN 'Stock Scrapped'
WHEN mat_doc.MovementType = '313' THEN 'Put-Away Transfer Posted' -- Example for two-step transfers
ELSE 'Unknown Material Movement'
END AS "ActivityName",
TO_TIMESTAMP(mat_doc.PostingDate || LPAD(mat_doc.CreationTime, 6, '0'), 'YYYYMMDDHH24MISS') AS "EventTime",
mat_doc.Material AS "MaterialNumber",
mat_doc.CreatedByUser AS "UserName",
mat_doc.MovementType AS "MovementType",
mat_doc.Plant AS "Plant",
mat_doc.StorageLocation AS "StorageLocation",
mat_doc.QuantityInEntryUnit AS "Quantity",
mat_doc.ReasonForMovement AS "MovementReasonCode"
FROM
I_MaterialDocumentItem AS mat_doc
WHERE
mat_doc.Batch IS NOT NULL AND mat_doc.Batch <> ''
AND mat_doc.PostingDate BETWEEN '20230101' AND '20231231' -- Placeholder: Set your date range
-- AND mat_doc.Plant IN ('Plant1', 'Plant2') -- Placeholder: Add filters for relevant plants
UNION ALL
SELECT
SPLIT_PART(change_doc.ChangeableObjectDescription, '/', 3) AS "InventoryBatchLot",
'Batch Status Changed' AS "ActivityName",
change_doc.ChangeDocumentCreationDateTime AS "EventTime",
SPLIT_PART(change_doc.ChangeableObjectDescription, '/', 1) AS "MaterialNumber",
change_doc.ChangedByUser AS "UserName",
NULL AS "MovementType",
SPLIT_PART(change_doc.ChangeableObjectDescription, '/', 2) AS "Plant",
NULL AS "StorageLocation",
NULL AS "Quantity",
NULL AS "MovementReasonCode"
FROM
I_BatchChangeDocument AS change_doc
WHERE
change_doc.ChangeDocumentTable = 'MCHA' AND change_doc.ChangeDocumentTableFieldName = 'ZUSTD'
AND TO_VARCHAR(change_doc.ChangeDocumentCreationDate) BETWEEN '20230101' AND '20231231' -- Placeholder: Set your date range
UNION ALL
SELECT
wh_task.Batch AS "InventoryBatchLot",
'Picking Initiated' AS "ActivityName",
wh_task.WarehouseTaskCreationDateTime AS "EventTime",
wh_task.Product AS "MaterialNumber",
wh_task.CreatedByUser AS "UserName",
NULL AS "MovementType",
wh_task.Plant AS "Plant",
wh_task.SourceStorageLocation AS "StorageLocation",
wh_task.TargetQuantity AS "Quantity",
NULL AS "MovementReasonCode"
FROM
I_WarehouseTask AS wh_task
WHERE
wh_task.Batch IS NOT NULL AND wh_task.Batch <> ''
AND wh_task.WarehouseProcessType IN ('P210', 'P220') -- Placeholder: Adjust process types based on your picking configuration
AND TO_VARCHAR(wh_task.WarehouseTaskCreationDate) BETWEEN '20230101' AND '20231231'; -- Placeholder: Set your date range Adımlar
- ABAP Düzenleyicisine Erişin: SAP S/4HANA sisteminize giriş yapın.
SE38işlem kodunu kullanarak ABAP Düzenleyicisini açın. - Yeni Bir Program Oluşturun: 'Program' alanına yeni program için bir ad girin, örneğin
Z_PM_INVENTORY_EXTRACT, ve 'Oluştur' düğmesine tıklayın. Açıklayıcı bir başlık verin, 'Tür'ü 'Çalıştırılabilir Program' olarak ayarlayın ve bir pakete kaydedin. - Program Parametrelerini Tanımlayın: Program düzenleyicisinde, çıkarma işlemi için kullanıcı arayüzü olarak görev yapacak seçim ekranını tanımlayın. Bu, kullanıcıların veri çıkarma için tarih aralığı ve tesis gibi parametreleri belirtmesine olanak tanır.
- Çıkarma Mantığını Uygulayın: 'Sorgu' bölümünde sağlanan ABAP kodunun tamamını kopyalayın ve ABAP Düzenleyicisine yapıştırın. Bu kod, çeşitli SAP tablolarından gerekli 14 envanter aktivitesinin tümü için veri seçmek üzere tasarlanmıştır.
- Temel Mantığı Anlayın: Program, malzeme hareketleri için
MKPFveMSEGveya ana veri değişiklikleri içinCDHDRveCDPOSgibi kaynak tablolarından her ayrı envanter aktivitesi için veri seçerek çalışır. Her seçim daha sonraUNION ALLkullanılarak olay günlüğünü temsil eden tek bir dahili tabloya birleştirilir. - Dosya Çıkışını Yapılandırın: Kodun son kısmı, konsolide verileri dahili tablodan bir dosyaya yazmayı ele alır. SAP uygulama sunucusunda bir dosya oluşturmak için
OPEN DATASETifadesini kullanır. SAP sistem kullanıcısının yazma izinlerine sahip olduğu geçerli bir sunucu yolu belirtmelisiniz. - Programı Yürütün: ABAP programını kaydedin ve etkinleştirin (Ctrl+F3). F8 tuşuna basarak çalıştırın. Seçim ekranında, istediğiniz tarih aralığını ve Tesis veya Şirket Kodu gibi diğer ilgili filtreleri girin.
- Arka Plan İşi Olarak Çalıştırın: Büyük veri hacimleri için, oturum zaman aşımlarını önlemek amacıyla programı bir arka plan işi olarak yürütmek kritik öneme sahiptir. Yürütme ekranından (F8),
Program -> Arka Planda Yürütmenüsüne gidin. İşi, yoğun olmayan saatlerde çalışacak şekilde zamanlayın. - Çıktı Dosyasını Alın: İş tamamlandıktan sonra, SAP uygulama sunucusundaki çıktı dosyasını bulun. Sunucu dizinlerine göz atmak ve dosyanızı bulmak için
AL11işlem kodunu kullanın. Dosyayı uygulama sunucusundan yerel bilgisayarınıza indirmek içinCG3Yişlem kodunu kullanın. - Yükleme İçin Hazırlık Yapın: İndirilen dosyayı bir metin düzenleyicide veya elektronik tablo yazılımında açın. Başlık satırı olan, ayırıcı olarak virgül ve metin niteleyicisi olarak çift tırnak kullanan bir CSV dosyası olarak biçimlendirildiğinden emin olun. Süreç madenciliği aracına yüklemeden önce sütun adlarının gereksinimlerle eşleştiğini doğrulayın.
Konfigürasyon
- Kayıt Tarihi Aralığı: Bu en kritik parametredir. İyi performans sağlamak ve sistem zaman aşımlarını önlemek için verilerinizi 3-6 ay gibi yönetilebilir partiler halinde çıkarmanızı öneririz.
- Tesis Filtresi: Bir veya daha fazla belirli Tesis (
WERKS) ile filtreleme yapmanız şiddetle tavsiye edilir. Tüm tesisler için aynı anda çıkarma işlemi yapmak aşırı kaynak yoğun olabilir. - Şirket Kodu Filtresi: Kuruluşunuz aynı sistem içinde birden fazla şirket koduyla çalışıyorsa, veri kapsamını daha da sınırlamak için isteğe bağlı bir Şirket Kodu (
BUKRS) filtresi ekleyebilirsiniz. - Uygulama Sunucusu Dosya Yolu: ABAP programı, SAP uygulama sunucusunda önceden tanımlanmış, geçerli bir dizin yolu gerektirir. SAP sistem kullanıcısının (
SY-UNAME) bu dizine dosya yazmak için gerekli işletim sistemi düzeyinde izinlere sahip olduğundan emin olun. - Yetkilendirmeler: Bu çıkarma işlemini gerçekleştiren kullanıcının
SE38işlemi (programı oluşturmak ve çalıştırmak için),MKPF,MSEG,MCH1,CDHDR,CDPOS,LTAKveLTAPtablolarına görüntüleme erişimi ve arka plan işlerini zamanlama (SM36/SM37) yetkisine sahip olması gerekir.
a Örnek Sorgu abap
REPORT Z_PM_INVENTORY_EXTRACT.
" ====================================================================
" SELECTION SCREEN
" ====================================================================
SELECT-OPTIONS: s_budat FOR sy-datum OBLIGATORY.
SELECT-OPTIONS: s_werks FOR mseg-werks.
PARAMETERS: p_fpath TYPE string DEFAULT '/usr/sap/trans/tmp/inventory_log.csv' OBLIGATORY.
" ====================================================================
" DATA STRUCTURES
" ====================================================================
TYPES: BEGIN OF ty_event_log,
InventoryBatchLot TYPE charg,
ActivityName TYPE string,
EventTime TYPE string,
MaterialNumber TYPE matnr,
UserName TYPE xubname,
MovementType TYPE bwart,
Plant TYPE werks_d,
StorageLocation TYPE lgort_d,
Quantity TYPE menge_d,
MovementReasonCode TYPE grund,
END OF ty_event_log.
DATA: lt_event_log TYPE TABLE OF ty_event_log.
" ====================================================================
" DATA SELECTION
" ====================================================================
START-OF-SELECTION.
SELECT
mseg~charg AS InventoryBatchLot,
'Goods Receipt Posted' AS ActivityName,
CONCAT( mkpf~cpudt, mkpf~cputm ) AS EventTime,
mseg~matnr AS MaterialNumber,
mkpf~usnam AS UserName,
mseg~bwart AS MovementType,
mseg~werks AS Plant,
mseg~lgort AS StorageLocation,
mseg~menge AS Quantity,
mseg~grund AS MovementReasonCode
FROM mseg
JOIN mkpf ON mkpf~mblnr = mseg~mblnr AND mkpf~mjahr = mseg~mjahr
WHERE mkpf~budat IN s_budat
AND mseg~werks IN s_werks
AND mseg~charg IS NOT NULL AND mseg~charg <> ''
AND mseg~bwart IN ('101', '103', '105', '501', '521', '561')
UNION ALL
SELECT
mseg~charg AS InventoryBatchLot,
CASE mseg~shkzg
WHEN 'H' THEN 'Stock Posted to Quality Inspection'
WHEN 'S' THEN 'Quality Inspection Stock Released'
END AS ActivityName,
CONCAT( mkpf~cpudt, mkpf~cputm ) AS EventTime,
mseg~matnr AS MaterialNumber,
mkpf~usnam AS UserName,
mseg~bwart AS MovementType,
mseg~werks AS Plant,
mseg~lgort AS StorageLocation,
mseg~menge AS Quantity,
mseg~grund AS MovementReasonCode
FROM mseg
JOIN mkpf ON mkpf~mblnr = mseg~mblnr AND mkpf~mjahr = mseg~mjahr
WHERE mkpf~budat IN s_budat
AND mseg~werks IN s_werks
AND mseg~charg IS NOT NULL AND mseg~charg <> ''
AND mseg~bwart = '321' " For QI to Unrestricted
UNION ALL
SELECT
mseg~charg AS InventoryBatchLot,
'Put-Away Transfer Posted' AS ActivityName,
CONCAT( mkpf~cpudt, mkpf~cputm ) AS EventTime,
mseg~matnr AS MaterialNumber,
mkpf~usnam AS UserName,
mseg~bwart AS MovementType,
mseg~werks AS Plant,
mseg~lgort AS StorageLocation,
mseg~menge AS Quantity,
mseg~grund AS MovementReasonCode
FROM mseg
JOIN mkpf ON mkpf~mblnr = mseg~mblnr AND mkpf~mjahr = mseg~mjahr
WHERE mkpf~budat IN s_budat
AND mseg~werks IN s_werks
AND mseg~charg IS NOT NULL AND mseg~charg <> ''
AND mseg~bwart = '311' AND mseg~shkzg = 'H' " Assume put-away is the credit side
UNION ALL
SELECT
mseg~charg AS InventoryBatchLot,
'Internal Stock Transfer Posted' AS ActivityName,
CONCAT( mkpf~cpudt, mkpf~cputm ) AS EventTime,
mseg~matnr AS MaterialNumber,
mkpf~usnam AS UserName,
mseg~bwart AS MovementType,
mseg~werks AS Plant,
mseg~lgort AS StorageLocation,
mseg~menge AS Quantity,
mseg~grund AS MovementReasonCode
FROM mseg
JOIN mkpf ON mkpf~mblnr = mseg~mblnr AND mkpf~mjahr = mseg~mjahr
WHERE mkpf~budat IN s_budat
AND mseg~werks IN s_werks
AND mseg~charg IS NOT NULL AND mseg~charg <> ''
AND mseg~bwart IN ('301', '311', '313', '315')
UNION ALL
SELECT
mseg~charg AS InventoryBatchLot,
CASE mseg~bwart
WHEN '343' THEN 'Stock Status Changed to Blocked'
WHEN '344' THEN 'Stock Status Changed to Unrestricted'
END AS ActivityName,
CONCAT( mkpf~cpudt, mkpf~cputm ) AS EventTime,
mseg~matnr AS MaterialNumber,
mkpf~usnam AS UserName,
mseg~bwart AS MovementType,
mseg~werks AS Plant,
mseg~lgort AS StorageLocation,
mseg~menge AS Quantity,
mseg~grund AS MovementReasonCode
FROM mseg
JOIN mkpf ON mkpf~mblnr = mseg~mblnr AND mkpf~mjahr = mseg~mjahr
WHERE mkpf~budat IN s_budat
AND mseg~werks IN s_werks
AND mseg~charg IS NOT NULL AND mseg~charg <> ''
AND mseg~bwart IN ('343', '344')
UNION ALL
SELECT
mseg~charg AS InventoryBatchLot,
'Inventory Adjustment Posted' AS ActivityName,
CONCAT( mkpf~cpudt, mkpf~cputm ) AS EventTime,
mseg~matnr AS MaterialNumber,
mkpf~usnam AS UserName,
mseg~bwart AS MovementType,
mseg~werks AS Plant,
mseg~lgort AS StorageLocation,
mseg~menge AS Quantity,
mseg~grund AS MovementReasonCode
FROM mseg
JOIN mkpf ON mkpf~mblnr = mseg~mblnr AND mkpf~mjahr = mseg~mjahr
WHERE mkpf~budat IN s_budat
AND mseg~werks IN s_werks
AND mseg~charg IS NOT NULL AND mseg~charg <> ''
AND mseg~bwart IN ('701', '702', '711', '712')
UNION ALL
SELECT
mseg~charg AS InventoryBatchLot,
'Goods Issue for Delivery Posted' AS ActivityName,
CONCAT( mkpf~cpudt, mkpf~cputm ) AS EventTime,
mseg~matnr AS MaterialNumber,
mkpf~usnam AS UserName,
mseg~bwart AS MovementType,
mseg~werks AS Plant,
mseg~lgort AS StorageLocation,
mseg~menge AS Quantity,
mseg~grund AS MovementReasonCode
FROM mseg
JOIN mkpf ON mkpf~mblnr = mseg~mblnr AND mkpf~mjahr = mseg~mjahr
WHERE mkpf~budat IN s_budat
AND mseg~werks IN s_werks
AND mseg~charg IS NOT NULL AND mseg~charg <> ''
AND mseg~bwart = '601'
UNION ALL
SELECT
mseg~charg AS InventoryBatchLot,
'Goods Issue for Production Posted' AS ActivityName,
CONCAT( mkpf~cpudt, mkpf~cputm ) AS EventTime,
mseg~matnr AS MaterialNumber,
mkpf~usnam AS UserName,
mseg~bwart AS MovementType,
mseg~werks AS Plant,
mseg~lgort AS StorageLocation,
mseg~menge AS Quantity,
mseg~grund AS MovementReasonCode
FROM mseg
JOIN mkpf ON mkpf~mblnr = mseg~mblnr AND mkpf~mjahr = mseg~mjahr
WHERE mkpf~budat IN s_budat
AND mseg~werks IN s_werks
AND mseg~charg IS NOT NULL AND mseg~charg <> ''
AND mseg~bwart = '261'
UNION ALL
SELECT
mseg~charg AS InventoryBatchLot,
'Sales Return Received' AS ActivityName,
CONCAT( mkpf~cpudt, mkpf~cputm ) AS EventTime,
mseg~matnr AS MaterialNumber,
mkpf~usnam AS UserName,
mseg~bwart AS MovementType,
mseg~werks AS Plant,
mseg~lgort AS StorageLocation,
mseg~menge AS Quantity,
mseg~grund AS MovementReasonCode
FROM mseg
JOIN mkpf ON mkpf~mblnr = mseg~mblnr AND mkpf~mjahr = mseg~mjahr
WHERE mkpf~budat IN s_budat
AND mseg~werks IN s_werks
AND mseg~charg IS NOT NULL AND mseg~charg <> ''
AND mseg~bwart IN ('651', '653')
UNION ALL
SELECT
mseg~charg AS InventoryBatchLot,
'Stock Scrapped' AS ActivityName,
CONCAT( mkpf~cpudt, mkpf~cputm ) AS EventTime,
mseg~matnr AS MaterialNumber,
mkpf~usnam AS UserName,
mseg~bwart AS MovementType,
mseg~werks AS Plant,
mseg~lgort AS StorageLocation,
mseg~menge AS Quantity,
mseg~grund AS MovementReasonCode
FROM mseg
JOIN mkpf ON mkpf~mblnr = mseg~mblnr AND mkpf~mjahr = mseg~mjahr
WHERE mkpf~budat IN s_budat
AND mseg~werks IN s_werks
AND mseg~charg IS NOT NULL AND mseg~charg <> ''
AND mseg~bwart = '551'
UNION ALL
SELECT
ltap~charg AS InventoryBatchLot,
'Picking Initiated' AS ActivityName,
CONCAT( ltak~bdatu, ltak~bzeit ) AS EventTime,
ltap~matnr AS MaterialNumber,
ltak~bname AS UserName,
ltak~bwart AS MovementType,
ltap~werks AS Plant,
ltap~lgort AS StorageLocation,
ltap~nista AS Quantity,
'' AS MovementReasonCode
FROM ltap
JOIN ltak ON ltak~tanum = ltap~tanum
WHERE ltak~bdatu IN s_budat
AND ltap~werks IN s_werks
AND ltap~charg IS NOT NULL AND ltap~charg <> ''
UNION ALL
SELECT
SUBSTRING( cdhdr~objectid, 5, 18 ) AS InventoryBatchLot, " Object ID for BATCH is MATNR+WERKS+CHARG
'Batch Status Changed' AS ActivityName,
CONCAT( cdhdr~udate, cdhdr~utime ) AS EventTime,
SUBSTRING( cdhdr~objectid, 1, 4 ) AS MaterialNumber,
cdhdr~username AS UserName,
'' AS MovementType,
'' AS Plant,
'' AS StorageLocation,
0 AS Quantity,
'' AS MovementReasonCode
FROM cdhdr
JOIN cdpos ON cdpos~objectclas = cdhdr~objectclas
AND cdpos~objectid = cdhdr~objectid
AND cdpos~changenr = cdhdr~changenr
WHERE cdhdr~udate IN s_budat
AND cdhdr~objectclas = 'BATCH'
AND cdpos~tabname = 'MCH1'
AND cdpos~fname = 'ZUSTD'
INTO TABLE @lt_event_log.
" ====================================================================
" WRITE OUTPUT FILE
" ====================================================================
DATA: lv_string TYPE string.
DATA: lo_conv TYPE REF TO cl_abap_conv_out_ce.
lo_conv = cl_abap_conv_out_ce=>create( encoding = 'UTF-8' ).
OPEN DATASET p_fpath FOR OUTPUT IN TEXT MODE ENCODING UTF-8.
IF sy-subrc <> 0.
MESSAGE 'Error opening file.' TYPE 'E'.
RETURN.
ENDIF.
" Write Header
lv_string = 'InventoryBatchLot,ActivityName,EventTime,MaterialNumber,UserName,MovementType,Plant,StorageLocation,Quantity,MovementReasonCode'.
TRANSFER lv_string TO p_fpath.
" Write Data
LOOP AT lt_event_log ASSIGNING FIELD-SYMBOL(<fs_log>).
CONCATENATE
<fs_log>-InventoryBatchLot
<fs_log>-ActivityName
<fs_log>-EventTime
<fs_log>-MaterialNumber
<fs_log>-UserName
<fs_log>-MovementType
<fs_log>-Plant
<fs_log>-StorageLocation
<fs_log>-Quantity
<fs_log>-MovementReasonCode
INTO lv_string
SEPARATED BY ','.
TRANSFER lv_string TO p_fpath.
ENDLOOP.
CLOSE DATASET p_fpath.
WRITE: 'Extraction complete. File written to:', p_fpath.