Raktárkezelési adatsablon
Raktárkezelési adatsablon
- Javasolt attribútumok a részletes elemzéshez
- A folyamat során nyomon követendő fő tevékenységek
- Útmutató az adatok kinyeréséhez az SAP EWM rendszerből
Raktárkezelési attribútumok
| Név | Leírás | ||
|---|---|---|---|
| Warehouse Order WarehouseOrder | A Warehouse Order egyedi azonosítója. Egy erőforrás által végrehajtandó raktári feladatokat fog össze. | ||
| Leírás A Warehouse Order a raktáron belüli árumozgatás teljes folyamatának követésére szolgáló elsődleges esetazonosító. Egy munkacsomagot jelöl, például a kimenő szállításhoz szükséges komissiózást vagy a beérkezett áru betárolását. Minden Warehouse Order egy vagy több raktári feladatot tartalmaz. A process miningben a Warehouse Order szerinti elemzés egy adott munkacsomag teljes életciklusát mutatja meg. Segít feltárni a szűk keresztmetszeteket, mérni a létrehozástól a befejezésig tartó teljes ciklusidőt, és megérteni az egyetlen logisztikai utasításhoz kapcsolódó tevékenységek teljes menetét. Miért fontos? Ez az alapvető azonosító kapcsolja össze az összes kapcsolódó raktári tevékenységet, így elemezhető a teljes folyamat, és mérhető egyetlen munkacsomag ciklusideje. Hol szerezhető be? Ez az azonosító jellemzően az SAP EWM Warehouse Order fejlécét tartalmazó táblájában található, például a /SCWM/WHO táblában. Példák 200000145200000146200000147 | |||
| Forrásrendszer SourceSystem | Megadja, melyik rendszerből származnak a kinyert adatok, például az SAP EWM éles rendszeréből. | ||
| Leírás Ez az attribútum azonosítja azt a nyilvántartó rendszert, amelyből a raktárkezelési adatok származnak. Több rendszert használó vállalati környezetben az adatok eredetének megjelölése szükséges a nyomon követhetőséghez és a megfelelő értelmezéshez. Az elemzés során segít megkülönböztetni a több rendszeren átívelő folyamatokat, illetve összehasonlítani a különböző példányok, például az egyes régiók rendszereinek folyamatait. Így az adatok eredete egyértelműen nyomon követhető és ellenőrizhető. Miért fontos? Nyomon követhetőséget és kontextust biztosít, különösen több SAP-példányt vagy integrált rendszert használó környezetben, és egyértelművé teszi az adatok eredetét. Hol szerezhető be? Ez jellemzően az adatok kinyerése, átalakítása és betöltése (ETL) során hozzáadott, statikus érték, amely az adott SAP S/4HANA- vagy EWM-példányt azonosítja. Példák SAP_EWM_PROD_EUS4H_US_100EWM_APAC_PRD | |||
| Kezdési idő EventTime | Az a dátum és idő, amikor a tevékenység vagy esemény elkezdődött. | ||
| Leírás Ez az attribútum rögzíti, hogy egy adott raktári tevékenység pontosan mikor történt. Ez az események sorrendbe állításának és a közöttük eltelt idő kiszámításának elsődleges időadata. A process miningben a kezdési idő szükséges az egyes esetek eseményeinek időrendi sorba rendezéséhez. Segítségével kiszámítható a ciklusidő, a várakozási idő és a feldolgozási idő. Ezek az adatok alapvetőek a teljesítmény elemzéséhez, a szűk keresztmetszetek feltárásához és az SLA-k nyomon követéséhez. Miért fontos? Ez az időbélyeg szükséges az események időrendi sorba rendezéséhez és az időalapú teljesítménymutatók, például a ciklusidők és az időtartamok kiszámításához. Hol szerezhető be? Jellemzően esemény- vagy visszaigazolási táblákban található, például a /SCWM/ORDIM_C táblában (például a CONF_TIMESTAMP mezőben), vagy a raktári rendelésekhez és feladatokhoz kapcsolódó állapotváltozási naplókban. Példák 2023-10-26T10:00:00Z2023-10-26T10:15:30Z2023-10-26T11:20:00Z | |||
| Tevékenység neve ActivityName | A végrehajtott raktárkezelési tevékenység vagy bekövetkezett esemény neve, például „Komissiózási feladat létrehozva” vagy „Árukiadás könyvelve”. | ||
| Leírás Ez az attribútum a raktárkezelési folyamat egyetlen lépését vagy eseményét írja le. Ezek a tevékenységek alkotják a folyamattérkép építőelemeit, például a létrehozást, a visszaigazolást, a csomagolást, a rakodást és az árumozgatást. A tevékenységek sorrendjének és gyakoriságának elemzése a process mining alapja. Segít megjeleníteni a folyamat menetét, feltárni a gyakori és ritka útvonalakat, észrevenni a standard eljárástól való eltéréseket, valamint azonosítani a késést vagy utómunkát okozó lépéseket. Miért fontos? Meghatározza a folyamat lépéseit, alapul szolgál a folyamattérképhez, és lehetővé teszi a folyamatmenet, az eltérések és a szűk keresztmetszetek elemzését. Hol szerezhető be? A raktári rendelésekhez és feladatokhoz kapcsolódó állapotváltozásokból, eseményüzenetekből vagy tranzakciós naplókból vezethető le. Forrás lehet például a /SCWM/ORDIM_C tábla (visszaigazolások), illetve a /SCWM/WHO és a /SCWM/ORDIM_O állapotmezőinek értelmezése. Példák Komissiózási feladat visszaigazolvaBetárolási feladat létrehozvaÁruátvétel könyvelveWarehouse Order befejezve | |||
| Utolsó adatfrissítés LastDataUpdate | Az az időbélyeg, amely megmutatja, mikor frissítették utoljára a rekord adatait a forrásrendszerből. | ||
| Leírás Ez az attribútum rögzíti, mikor nyerték ki utoljára az adatokat a forrásrendszerből. Segít megítélni, mennyire frissek az elemzett adatok. Elemzés vagy dashboard használatakor fontos tudni, mikoriak az adatok, hogy megalapozott döntéseket lehessen hozni. Az időbélyegből kiderül, hogy valós idejű információt vagy egy adott időpontban készült pillanatképet lát-e, így az adatok aktualitásával kapcsolatos elvárások is kezelhetők. Miért fontos? Jelzi az adatok frissességét, így a felhasználó megítélheti, mennyire aktuális a folyamatelemzés. Hol szerezhető be? Ez egy metaadatmező, amelyet jellemzően az adatok kinyerése (ETL) során hoznak létre és adnak hozzá. Az adatbetöltés időbélyegét tartalmazza. Példák 2023-11-01T02:00:00Z2023-11-02T02:00:00Z | |||
| Anyagszám MaterialNumber | A raktári feladatban kezelt termék vagy anyag egyedi azonosítója. | ||
| Leírás Ez az attribútum azonosítja a mozgatott, komissiózott, csomagolt vagy átvett anyagot. Fontos szempont a raktári teljesítmény terméktulajdonságok szerinti bontásához és elemzéséhez. Az anyagszám szerinti elemzésből kiderülhet például, mely termékek betárolása tart a legtovább, melyeknél fordul elő leggyakrabban komissiózási hiba, illetve melyek igényelnek minőségellenőrzést. Ez szükséges az „Áruátvétel és betárolás teljesítménye”, valamint a „Minőségellenőrzés átfutási ideje” dashboardokhoz. Miért fontos? Lehetővé teszi a folyamatadatok termék szerinti szűrését és csoportosítását, így feltárhatók a termékek kezelésével, tárolásával vagy minőségellenőrzésével kapcsolatos problémák. Hol szerezhető be? Ez az adat jellemzően olyan raktári feladatokat tartalmazó táblákban érhető el, mint a /SCWM/ORDIM_O, és össze van kapcsolva az anyagtörzs adataival. Példák FIN-1001RAW-2050SFIN-300-A | |||
| Befejezési idő EventEndTime | Az az időbélyeg, amely megmutatja, mikor fejeződött be egy tevékenység vagy esemény. | ||
| Leírás Ez az attribútum rögzíti, hogy egy adott raktári tevékenység mikor fejeződött be. Atomi eseményeknél gyakran megegyezik a kezdési idővel, de mérhető időtartamú tevékenységeknél, például csomagolásnál vagy rakodásnál eltérhet. A külön rögzített befejezési idő lehetővé teszi az egyes tevékenységek feldolgozási idejének pontos kiszámítását. Ez fontos a konkrét lépések időtartamát elemző teljesítmény-dashboardoknál, például a „Komissiózás és csomagolás hatékonysága” esetében. Így azonosíthatók a legtöbb időt igénylő feladatok. Miért fontos? Lehetővé teszi az egyes tevékenységek időtartamának pontos kiszámítását, ami segít feltárni az időigényes lépéseket és az erőforrásokat lekötő feladatokat. Hol szerezhető be? Rövid, elkülönülő eseményeknél gyakran megegyezik a kezdési időbélyeggel. Hosszabb feladatoknál külön mezőben szerepelhet, például a /SCWM/ORDIM_C táblában, vagy egy későbbi állapotváltozásból vezethető le. Példák 2023-10-26T10:05:00Z2023-10-26T10:25:45Z2023-10-26T11:20:00Z | |||
| Felhasználói azonosító User | A tevékenységet végrehajtó vagy visszaigazoló raktári dolgozó, illetve felhasználó azonosítója. | ||
| Leírás Ez az attribútum rögzíti annak a felhasználónak az azonosítóját, aki a raktári feladatot végrehajtotta. Lehet például a komissiózást visszaigazoló dolgozó, a csomagolóállomás kezelője vagy a betárolást visszaigazoló targoncavezető. Ez az adat fontos az „Erőforrások és eszközök kihasználtsága” dashboardhoz. Lehetővé teszi az egyéni és csapatteljesítmény elemzését, segít feltárni a képzési igényeket, és támogatja a raktári dolgozók közötti hatékonyabb munkaterhelés-elosztást. Miért fontos? Azonosítja a feladatot végrehajtó személyt, így felhasználó vagy csapat szerint elemezhető a teljesítmény, és támogatható az erőforrások kezelése, valamint a munkaterhelés kiegyensúlyozása. Hol szerezhető be? Jellemzően a raktári feladat visszaigazolási adatai között található, például a /SCWM/ORDIM_C tábla UNAME mezőjében. Példák JSMITHARODRIGUEZOPERATOR_05 | |||
| Prioritás Priority | A raktári rendeléshez rendelt prioritási szint, amely jelzi a sürgősségét, például magas, közepes vagy alacsony. | ||
| Leírás Ez az attribútum üzleti jelentőségük vagy sürgősségük szerint sorolja be a raktári rendeléseket. A magas prioritású rendelések például expressz szállításhoz vagy a termelés kritikus ellátásához kapcsolódhatnak, ezért gyorsított kezelésre lehet szükségük. A prioritás a „Prioritásos rendelések teljesítése” dashboard és KPI egyik fontos dimenziója. Segítségével szűrheti és csoportosíthatja a teljesítményt, hogy a legsürgősebb rendelések a vállalt határidőn belül készüljenek el. Így a raktári működés összhangban tartható az üzleti célokkal. Miért fontos? Lehetővé teszi a sürgős rendelések célzott elemzését és nyomon követését, így ellenőrizhető, hogy teljesülnek-e a szolgáltatási szintek. Ez közvetlenül hat az ügyfél-elégedettségre. Hol szerezhető be? A prioritás az alapul szolgáló szállítási bizonylaton állítható be, majd átvihető a raktári rendelésre. A /SCWM/WHO táblában is megtalálható. Példák MagasKözepesAlacsony | |||
| Warehouse Order állapota WarehouseOrderStatus | A Warehouse Order aktuális vagy végleges állapota, például „Completed” (befejezve) vagy „Canceled” (törölve). | ||
| Leírás Ez az attribútum mutatja meg a raktári rendelés végső eredményét. Ha tudja, hogy a rendelést sikeresen teljesítették vagy törölték, elemezheti a folyamat sikerességét, és feltárhatja a meghiúsult teljesítések okait. Számos elemzésnél ez az egyik legfontosabb szűrő. A raktári rendelés teljes átfutási idejét például jellemzően csak a teljesített rendelések alapján számítják ki. Az attribútum a törölt rendelések gyakoriságának és okainak vizsgálatában is segít. Miért fontos? Megmutatja az eset kimenetelét, így külön szűrhetők a teljesített és a törölt rendelések. Ez elengedhetetlen az átfutási idő és az átbocsátás pontos elemzéséhez. Hol szerezhető be? A státuszmező jellemzően a raktári rendelés fejlécét tartalmazó /SCWM/WHO táblában található. Példák TeljesítveFolyamatbanTörölve | |||
| Warehouse Order típusa WarehouseOrderType | A Warehouse Order rendeltetés szerinti besorolása, például betárolás, komissiózás vagy belső készlet-utánpótlás. | ||
| Leírás A Warehouse Order típusa a rendelések logisztikai funkció szerinti kategóriáját jelöli. Ez azért fontos, mert az egyes rendeléstípusok eltérő folyamatútvonalat követnek, és más teljesítményelvárások vonatkoznak rájuk. Az elemzés során ez az attribútum az egyik fő szűrési és összehasonlítási szempont. A „Warehouse Order átbocsátóképessége és mennyisége” dashboard például ezzel különíti el a bejövő (betárolási) és a kimenő (komissiózási) folyamatok teljesítményét, így a raktári működés jobban értelmezhető. Miért fontos? Lehetővé teszi az elemzések folyamatkategória, például bejövő vagy kimenő folyamat szerinti bontását, így relevánsabb összehasonlítások és megállapítások készíthetők. Hol szerezhető be? Ezt a raktári folyamattípus határozza meg, amely jellemzően a Warehouse Order fejlécét tartalmazó /SCWM/WHO táblában található. Példák KomissiózásBetárolásKészlet-utánpótlásTárolás | |||
| Használt eszköz EquipmentUsed | A raktári feladat végrehajtásához használt eszköz, például targonca vagy raklapemelő azonosítója. | ||
| Leírás Ez az attribútum a raktári feladathoz rendelt vagy annak végrehajtásához használt anyagmozgató eszközt jelöli. Ilyen lehet egy adott targonca, automata vezető nélküli jármű (AGV) vagy kocsitípus. Ez az adat szolgáltat alapot az „Erőforrás- és eszközkihasználtság” dashboardhoz és az „Eszközkihasználtság” KPI-hoz. Ha nyomon követi, hogy melyik eszközt milyen feladatokra és mennyi ideig használják, elemezheti a kihasználtságot, megtervezheti a karbantartást, és megalapozott döntéseket hozhat a járműpark méretéről és összetételéről. Miért fontos? Segít elemezni az eszközök kihasználtságát és hatékonyságát, optimalizálni a járműpark kezelését, valamint feltárni az erőforráshiányt. Hol szerezhető be? Ha az SAP EWM-ben be van állítva az erőforrás-kezelés, ez az adat a raktári feladat vagy rendelés részletei között szerepelhet. További információért tekintse meg az SAP Extended Warehouse Management dokumentációját. Példák TARGONCA-07AGV-02KOCSI-15 | |||
| Határidőre teljesült IsOnTime | Logikai jelző, amely megmutatja, hogy a raktári rendelés a kért teljesítési dátumig elkészült-e. | ||
| Leírás Ez a jelző egyszerű, kétértékű választ ad arra, hogy teljesült-e az SLA. Azt ellenőrzi, hogy a raktári rendelés utolsó, teljesítést jelző eseménye a kért teljesítési dátumon vagy az előtt történt-e. Ez az attribútum szükséges a „Prioritásos rendelések teljesítése” dashboardhoz. Egyszerűbbé teszi a KPI-k és vizualizációk létrehozását, mert könnyen megszámolhatók és szűrhetők a határidőre teljesített, illetve késedelmes rendelések. Így összetett dátumszámítások nélkül is gyorsan felmérhető a szolgáltatási célok teljesülése. Miért fontos? Egyszerűsíti az SLA teljesítésének elemzését: rendelésenként egyértelműen jelzi, hogy a teljesítés határidőre vagy késve történt. Hol szerezhető be? Számított attribútum. A logika a „Raktári rendelés teljesítve” tevékenység időbélyegét hasonlítja össze a „RequestedCompletionDate” attribútummal. Példák truefalse | |||
| Kért teljesítési dátum RequestedCompletionDate | Az a dátum, ameddig a magas prioritású raktári rendelést a kérés szerint teljesíteni kell. | ||
| Leírás Ez az attribútum határozza meg a raktári rendelés szolgáltatási szintjét (SLA), vagyis a célként kitűzött teljesítési dátumot. Ehhez a határidőhöz viszonyítható a tényleges teljesítés, így megállapítható, hogy a rendelés időben elkészült-e. Ez a dátum szükséges a „Prioritásos rendelések teljesítési aránya” KPI kiszámításához. A tényleges teljesítési időponttal összevetve mérhető a szolgáltatási szint betartása, és azonosíthatók a késés veszélyének kitett vagy már késésben lévő rendelések. Miért fontos? Meghatározza a rendelés SLA-ját, és viszonyítási alapot ad a határidőre történő teljesítés méréséhez, különösen a magas prioritású tételeknél. Hol szerezhető be? Ez a dátum gyakran a raktári rendelést elindító kimenő szállítási rendelés tervezett árukiadási vagy szállítási dátumából származik. További információért tekintse meg az SAP Extended Warehouse Management dokumentációját. Példák 2023-10-27T17:00:00Z2023-10-28T12:00:00Z | |||
| Mennyiségi eltérés QuantityVariance | A feladathoz tervezett és ténylegesen visszaigazolt mennyiség különbsége. | ||
| Leírás Ez a számított mutató számszerűsíti a raktári feladat során tapasztalt eltérést. A nullától különböző érték azt jelzi, hogy a fizikai valóság nem egyezik a rendszer nyilvántartásával. Ennek oka lehet például komissiózási vagy átvételi hiba, illetve sérült áru. Ez az attribútum az eltérések mértékének megmutatásával közvetlenül támogatja a „Készleteltérések elemzése” dashboardot. Az eltérések gyakoriságának és nagyságának vizsgálata segít feltárni a készletkezelés és a végrehajtás rendszerszintű problémáit, és kijelölni a pontosság javításához szükséges lépéseket. Miért fontos? Közvetlenül számszerűsíti a készlet- és működési pontatlanságokat, így könnyen felismerhető és elemezhető az eltérések mértéke. Hol szerezhető be? Az egyes érintett feladatoknál a PlannedQuantity értékét ki kell vonni az ActualQuantity értékéből. Példák 0-15 | |||
| Tárolási hely StorageLocation | A raktáron belüli konkrét hely, például egy tárhely, ahová az árut mozgatják, vagy ahonnan elhozzák. | ||
| Leírás Ez az attribútum azonosítja a raktári feladatban érintett fizikai helyet, például a komissiózás forrástárhelyét vagy a betárolás célhelyét. A hely lehet egy nagyobb terület vagy egy konkrét polchely. A tárolási hely szerinti elemzés működési összefüggéseket tárhat fel. Megmutathatja például a nagy komissiózási forgalmú „kiemelt zónákat”, illetve a gyakori késésekkel vagy hibákkal érintett területeket. A „Komissiózási útvonal betartása” elemzésben a komissiózók raktáron belüli mozgásának vizsgálatára is használható. Miért fontos? Megmutatja, hogy a raktáron belül hol történik a művelet, így elemezhető a mozgás hatékonysága, a tárhelyek megközelíthetősége és a komissiózási útvonalak optimalizálása. Hol szerezhető be? Jellemzően a raktári feladatokat tartalmazó táblákban, például a /SCWM/ORDIM_O táblában található. Ez a forrás- (VLPLA) és cél- (NLPLA) tárhely adatait is tartalmazza. Példák 01-02-03CSOMAGOLÓÁLLOMÁS-01ÁRUKIADÁSI-ZÓNA-A | |||
| Teljes átfutási idő EndToEndCycleTime | A raktári rendelés létrehozásától a végső teljesítéséig eltelt idő. | ||
| Leírás Ez a KPI a raktári rendelés teljes életciklusának időtartamát méri. A raktári működés általános hatékonyságának és sebességének egyik fő mutatója. Ez a „Raktári rendelések teljes átfutási ideje” dashboard alapja. Ha időben nyomon követi a KPI alakulását, és rendeléstípus vagy anyag szerint csoportosítja az adatokat, feltárhatja a rendszerszintű hatékonysági problémákat, és mérheti, hogyan hatnak a folyamatfejlesztési kezdeményezések a teljes működésre. Miért fontos? A raktári folyamat általános hatékonyságának egyik fő KPI-ja, amely átfogó képet ad a működés teljesítményéről. Hol szerezhető be? Esetszinten számítható ki: a „Raktári rendelés létrehozva” első esemény időbélyegét ki kell vonni a „Raktári rendelés teljesítve” utolsó esemény időbélyegéből. Példák 8640017280043200 | |||
| Tényleges mennyiség ActualQuantity | Az anyagnak az a tényleges mennyisége, amelyet a felhasználó visszaigazolt a raktári feladathoz. | ||
| Leírás Ez az attribútum a raktári dolgozó által fizikailag kezelt és visszaigazolt mennyiséget jelöli. Lehet például a tárhelyről komissiózott, betárolt vagy áruátvételkor megszámolt mennyiség. A tényleges és a tervezett mennyiség összevetése alapvető a „Készleteltérések elemzése” során. A két érték különbsége közvetlenül jelzi a kivizsgálandó folyamateltéréseket. Ez a működési pontosság közvetlen mérőszáma, és fontos bemeneti adat a „Készletpontosság” és a „Komissiózási hibaarány” KPI-hoz. Miért fontos? Ez mutatja meg, hogy fizikailag mekkora mennyiséget kezeltek. A tervezett mennyiséggel összevetve közvetlenül mérhető a működés pontossága, és feltárhatók a hibák. Hol szerezhető be? A raktári feladatok visszaigazolási adatai között található, például a /SCWM/ORDIM_C táblában, gyakran az NDIFF (mennyiségi eltérés) mezőben, vagy a visszaigazolt mennyiségekből számítható ki. Példák 10049250 | |||
| Tervezett indulási idő PlannedDepartureTime | Az az időpont, amikor a szállítmánynak a tervek szerint el kell indulnia a raktárból. | ||
| Leírás Ez az attribútum azt a célidőpontot jelöli, amikor a komissiózás, a csomagolás és a rakodás befejezése után a szállítmányt feladják. Viszonyítási alapot ad a kimenő folyamat utolsó szakaszának határidőre történő teljesítéséhez. Ez az időbélyeg szükséges a „Szállítmányok határidőre történő feladása” dashboardhoz. A tényleges feladási idővel összevetve feltárhatók a rakodás, a fuvarozóval való egyeztetés vagy a dokumentáció késései, és értékelhető a logisztikai, illetve szállítástervezés hatékonysága. Miért fontos? Viszonyítási alapot ad a határidőre történő feladás méréséhez, ami segíti a logisztikai tervezést és a fuvarozói menetrendek betartását. Hol szerezhető be? Ez az adat általában a raktári rendelésekhez kapcsolódó fuvarozási vagy szállítási bizonylatban szerepel. További információért tekintse meg az SAP Extended Warehouse Management dokumentációját. Példák 2023-10-27T18:00:00Z2023-10-28T14:00:00Z | |||
| Tervezett mennyiség PlannedQuantity | Az adott raktári feladathoz tartozó anyag elvárt mennyisége. | ||
| Leírás Ez az attribútum a raktári feladatban előírt célmennyiséget jelöli, amelyet az anyag mozgatásakor, komissiózásakor vagy átvételekor kell kezelni. Ehhez viszonyítható a ténylegesen végrehajtott mennyiség. A tervezett mennyiség szükséges a „Készleteltérések elemzése” dashboardhoz és a „Készletpontosság” KPI-hoz. A tényleges mennyiséggel összevetve a rendszer feltárhatja az eltéréseket, amelyek komissiózási hibára, átvételi problémára vagy adatrögzítési hibára utalhatnak. Ez segít javítani a készletpontosságot. Miért fontos? A készletpontosság mérésének és az eltérések feltárásának alapja, ami segít fenntartani a nyilvántartás szerinti készletszintet. Hol szerezhető be? A raktári feladatok adatai között található, például a /SCWM/ORDIM_O táblában, gyakran a NISTA (célmennyiség) mezőben. Példák 10050250 | |||
| Warehouse Task WarehouseTask | Egyetlen raktári feladat egyedi azonosítója. A feladat egy Warehouse Order része. | ||
| Leírás A raktári feladat egy konkrét árumozgatás végrehajtására szóló utasítás, például egy termék áthelyezése a tárolóhelyről a csomagolóállomásra. A raktári rendelés egy vagy több ilyen feladatot fog össze. A feladatok szintjén végzett elemzés részletesebb képet ad a raktár működéséről. Segít megérteni az egyes árumozgatásokhoz kapcsolódó erőforrások teljesítményét, azonosítani a nehezen elérhető tárolóhelyeket, valamint elemezni az egyes komissiózási és betárolási tevékenységek hatékonyságát. Miért fontos? Részletes elemzést tesz lehetővé, így a nagyobb Warehouse Order egyes árumozgatásai és lépései külön is vizsgálhatók. Hol szerezhető be? A raktári feladatok adatai olyan táblákban találhatók, mint a /SCWM/ORDIM_O (feladatadatok) és a /SCWM/ORDIM_C (visszaigazolási adatok). Példák 300000451300000452300000453 | |||
Raktárkezelési tevékenységek
| Tevékenység | Leírás | ||
|---|---|---|---|
| Árukiadás könyvelve | Ez a rendszerben végrehajtott utolsó logisztikai és pénzügyi lépés, amely hivatalosan kivezeti az árut a raktári készletből. Azt jelzi, hogy a tulajdonjog átszállt, és a szállítmány hivatalosan elindult. | ||
| Miért fontos? A kimenő folyamat fontos záróeseménye, amely elindítja a számlázást és frissíti a készletet. Alapvető a határidőre történő kiszállítás és a rakodástól az indulásig tartó időt mérő KPI méréséhez. Hol szerezhető be? A raktári rendeléshez kapcsolódó kimenő szállítási bizonylat könyveléséből következtethető ki. Ellenőrizze a bizonylatfolyamot vagy a /SCDL/DB_PROCH_O tábla állapotmezőit, például a DGI_STAT mezőt. Rögzítés Keresse meg azt az időbélyeget, amikor a kapcsolódó kimenő szállítás árukiadási állapota „Completed” értékre vált. Eseménytípus explicit | |||
| Betárolási feladat visszaigazolva | A raktári dolgozó megerősíti, hogy a betárolási raktári feladat befejeződött, vagyis az árut fizikailag a kijelölt tárolóhelyre helyezték. A megerősítés valós időben frissíti a készlet helyét. | ||
| Miért fontos? Ez a tevékenység a beérkeztetés fontos mérföldköve, mert visszaigazolja, hogy a készlet komissiózható. Az itt jelentkező késések közvetlenül növelik az áruátvételtől a betárolásig tartó ciklusidőt mérő KPI értékét. Hol szerezhető be? A /SCWM/WT raktári feladatokat tartalmazó táblában a megerősítés időbélyegéből (CONFIRMED_AT mező) rögzítve. A feladat állapota (STAT) szintén „Confirmed” értékre változik. Rögzítés Használja a Warehouse Orderhez kapcsolódó betárolási feladatok /SCWM/WT táblában szereplő visszaigazolási időbélyegét. Eseménytípus explicit | |||
| Csomagolás befejezve | Ez a tevékenység azt jelzi, hogy a szállítmány összes tételét kezelési egységbe csomagolták, az egységet lezárták és felcímkézték. A becsomagolt áru készen áll a következő lépésre, például az összeállításra vagy a rakodásra. | ||
| Miért fontos? Ez a mérföldkő zárja le a csomagolási szakaszt. Az összeállítás és a kiszállítás előfeltétele, ezért az itt jelentkező késések közvetlenül növelik a teljes átfutási időt, valamint a csomagolástól az összeállításig tartó időt mérő KPI értékét. Hol szerezhető be? Az esemény akkor rögzíthető, amikor a kezelési egység (HU) állapota „Closed” értékre vált, vagy amikor visszaigazolják a WO utolsó csomagolási raktári feladatát. A /SCWM/HUHDR tábla tartalmazza a HU állapotadatait. Rögzítés Keresse meg azt az időbélyeget, amikor a rendeléshez kapcsolódó utolsó szállítási kezelési egységet lezárják vagy befejezik. Eseménytípus inferred | |||
| Komissiózási feladat visszaigazolva | A raktári dolgozó megerősíti a komissiózási raktári feladat befejezését, vagyis az árut fizikailag kivették a tárolóhelyéről. Ezt általában RF-leolvasóval végzik. | ||
| Miért fontos? Ez a rendelésteljesítés fontos mérföldköve, amely közvetlenül befolyásolja a rendeléstől a kiszállításig tartó ciklusidőt. A tevékenység elemzésével mérhető a komissiózók teljesítménye, és feltárhatók a komissiózás szűk keresztmetszetei. Hol szerezhető be? A /SCWM/WT raktári feladatokat tartalmazó táblában a megerősítés időbélyegéből (CONFIRMED_AT mező) rögzítve. A feladat állapota (STAT) „Confirmed” értékre frissül. Rögzítés Használja a Warehouse Orderhez kapcsolódó komissiózási feladatok /SCWM/WT táblában szereplő visszaigazolási időbélyegét. Eseménytípus explicit | |||
| Warehouse Order befejezve | A Warehouse Order állapota „Completed” értékre vált, miután az összes kapcsolódó raktári feladatot visszaigazolták. Ezzel a végrehajtás szempontjából lezárul a munkacsomag. | ||
| Miért fontos? Ez a folyamat elsődleges sikeres záróeseménye. Szükséges a teljes raktári ciklusidő kiszámításához és az átbocsátóképesség méréséhez. Hol szerezhető be? A Warehouse Order fejlécét tartalmazó /SCWM/WHO táblában a STAT állapotmező „Completed” értékre változásának követésével rögzíthető. Használható a tábla változásnaplója (DBTABLOG) vagy egy erre szolgáló időbélyegmező is. Rögzítés Keresse meg azt az időbélyeget, amikor a /SCWM/WHO állapota „C” (Completed) értékre vált. Eseménytípus inferred | |||
| Warehouse Order létrehozva | Ez a tevékenység jelzi a Warehouse Order (WO) létrehozását. A WO több raktári feladatból álló munkacsomag. A rendszer például a tevékenységi terület, a sor vagy a termék alapján hoz létre WO-t, hogy csoportosítsa és rendszerezze a raktári dolgozók munkáját. | ||
| Miért fontos? Ez a raktári végrehajtási folyamat elsődleges kezdő eseménye. A létrehozás és az első művelet közötti idő elemzésével feltárhatók a munkakiosztás és az erőforrások hozzárendelésének késései. Hol szerezhető be? Az esemény a Warehouse Order fejlécét tartalmazó /SCWM/WHO tábla létrehozási időbélyegéből (CREATED_AT mező) olvasható ki. Rögzítés Nyerje ki a létrehozási időbélyeget a /SCWM/WHO táblából minden Warehouse Order-számhoz (WHO). Eseménytípus explicit | |||
| Áruátvétel könyvelve | Jelzi, hogy külső beszállítótól vagy a termelésből érkező árut hivatalosan bevételeztek a raktári készletbe. Ez fontos pénzügyi és készletkönyvelési művelet: láthatóvá és elérhetővé teszi a készletet a további folyamatok, például a betárolás számára. | ||
| Miért fontos? Ez a beérkeztetési folyamat fontos mérföldköve. Az áru megérkezése és a könyvelés közötti idő a beérkeztetési területen felhalmozódó munkára utalhat, ami késlelteti a készlet elérhetőségét. Hol szerezhető be? A raktári rendeléshez kapcsolódó bejövő szállítási bizonylat könyveléséből következtethető ki. Ellenőrizze a bizonylatfolyamot vagy a /SCDL/DB_PROCH_I tábla állapotmezőit, például a DGRSTAT mezőt. Rögzítés Keresse meg azt az időbélyeget, amikor a kapcsolódó bejövő szállítás áruátvételi állapota „Completed” értékre vált. Eseménytípus inferred | |||
| Betárolási feladat létrehozva | A rendszer létrehoz egy konkrét utasítást, a Warehouse Taskot (WT), amely a beérkezett árut a beérkeztetési területről a végleges tárolóhelyre mozgatja. Ez a tevékenység azt jelzi, hogy a rendszer készen áll a betárolás végrehajtására. | ||
| Miért fontos? A feladat létrehozása és visszaigazolása közötti idő megmutatja, mennyi idő telik el, mire a raktári dolgozók felveszik és végrehajtják a betárolási utasítást. Ez segít feltárni a lehetséges munkaerő- vagy eszközhiányt. Hol szerezhető be? A megfelelő, betárolást jelző folyamattípusú raktári feladat létrehozási időbélyegéből (a /SCWM/WT tábla CREATED_AT mezőjéből) származik. Rögzítés Szűrjön a Warehouse Orderhez kapcsolódó, betárolási folyamatú Warehouse Taskokra, és használja a létrehozási időbélyegüket. Eseménytípus explicit | |||
| Csomagolás megkezdve | Jelzi a csomagolási tevékenység kezdetét, amikor a komissiózott tételeket összegyűjtik, majd szállítótartályokba vagy kezelési egységekbe helyezik. Ez gyakran a csomagoló munkaállomáson végzett első lépés. | ||
| Miért fontos? Jelzi a hozzáadott értékű szolgáltatások szakaszának kezdetét. A csomagolás időtartamának mérése segít optimalizálni a munkaállomás elrendezését, a létszámot és az anyagellátást. Hol szerezhető be? Ezt az eseményt esetenként következtetéssel kell meghatározni. Levezethető egy tétel vagy kezelési egység csomagolóállomáson végzett első beolvasásából, amelyet gyakran a munkaállomás vagy a kezelési egység naplója rögzít. Forrásként szolgálhatnak például a /SCWM/PACKSPEC táblák és a kapcsolódó végrehajtási naplók. Rögzítés Használja a szállításhoz tartozó első csomagolási raktári feladat megerősítésének időbélyegét, vagy a végleges szállítási HU létrehozásának időpontját. Eseménytípus inferred | |||
| Komissiózási feladat létrehozva | A rendszer Warehouse Taskot (WT) hoz létre, hogy az árut a tárolóhelyről a kimenő szállítási rendelés teljesítéséhez szükséges helyre komissiózzák. Ez a rendszer utasítása arra, hogy a dolgozó vegye ki a terméket. | ||
| Miért fontos? A kimenő fizikai folyamat kezdete. A komissiózási feladat létrehozása és visszaigazolása közötti idő fontos mutató a komissiózás hatékonyságának és az erőforrások rendelkezésre állásának elemzéséhez. Hol szerezhető be? A megfelelő, komissiózást jelző folyamattípusú raktári feladat létrehozási időbélyegéből (a /SCWM/WT tábla CREATED_AT mezőjéből) származik. Rögzítés Szűrjön a Warehouse Orderhez kapcsolódó, komissiózási folyamatú Warehouse Taskokra, és használja a létrehozási időbélyegüket. Eseménytípus explicit | |||
| Összeállítási feladat visszaigazolva | A raktári dolgozó visszaigazolja, hogy a becsomagolt kezelési egységet a csomagolóállomásról vagy az összevonási területről a kijelölt szállítási gyűjtőterületre mozgatta. Az áru így készen áll a rakodásra. | ||
| Miért fontos? Ez jelzi az átmenetet a belső feldolgozásból a kimenő logisztikába. Az összeállítás késése rendezetlenné teheti a rakodóterületet, és a fuvarozó tervezett érkezési idejének elmulasztásához vezethet. Hol szerezhető be? A raktári feladat (/SCWM/WT) megerősítési időbélyegéből (CONFIRMED_AT mező) rögzítve, ha a feladat előkészítési mozgásokhoz tartozó folyamattípussal rendelkezik. Rögzítés Keresse meg a kezelési egységhez vagy a szállításhoz kapcsolódó összeállítási raktári feladat visszaigazolási időbélyegét. Eseménytípus explicit | |||
| Rakodás befejezve | Jelzi, hogy a szállítmány összes áruját fizikailag felrakták a szállítóegységre. Ez az árukiadás könyvelésének és a jármű indításának előfeltétele. | ||
| Miért fontos? Fontos mérföldkő a szállítás véglegesítése előtt. A rakodás befejezése és az árukiadás könyvelése közötti késés dokumentációs vagy rendszerproblémára utalhat, amely feltartja a fuvarozót. Hol szerezhető be? A kapcsolódó szállítóegység (TU) vagy kimenő szállítási rendelés „Loading Completed” állapotváltozásából következtethető ki. A /SCWM/TU és a /SCDL/DB_PROCH_O táblák állapotadatai relevánsak. Rögzítés Rögzítse azt az időbélyeget, amikor a TU vagy a szállítási rendelés állapota a rakodás befejezését jelző értékre frissül. Eseménytípus inferred | |||
| Rakodás megkezdve | Ez a tevékenység jelzi az áru fizikai felrakodásának kezdetét a gyűjtőterületről egy teherautóra vagy más szállítóeszközre. A folyamatot gyakran egy felhasználói művelet indítja el a rendszerben. | ||
| Miért fontos? Ez a raktári folyamat utolsó fizikai lépésének kezdete. A rakodás időtartamának elemzése segít optimalizálni a rakodókapuk kihasználtságát és a fuvarozók fordulóidejét. Hol szerezhető be? A kapcsolódó szállítóegység (TU) vagy kimenő szállítási rendelés „Loading Started” állapotváltozásából következtethető ki. Ellenőrizze a /SCWM/TU_STATUS táblát. Rögzítés Rögzítse azt az időbélyeget, amikor a TU vagy a szállítási rendelés állapota a rakodás kezdetét jelző értékre frissül. Eseménytípus inferred | |||
| Warehouse Order törölve | A Warehouse Ordert az összes feladat befejezése előtt törlik, így a végrehajtás nem folytatható. Erre készlethiány, a vevői rendelés módosítása vagy más kivételes helyzet miatt kerülhet sor. | ||
| Miért fontos? Ez sikertelen vagy kivételes folyamatágat jelez. A törlések gyakoriságának és okainak elemzése segít feltárni a tervezés, a készletnyilvántartás pontossága vagy a rendeléskezelés korábbi szakaszaiban jelentkező problémákat. Hol szerezhető be? A Warehouse Order fejlécét tartalmazó /SCWM/WHO táblában a STAT állapotmező „Canceled” értékre változásának követésével rögzíthető. Rögzítés Keresse meg azt az időbélyeget, amikor a /SCWM/WHO állapota törlést jelző értékre vált. Eseménytípus inferred | |||
Adatkinyerési útmutatók
Lépések
- Előfeltétel: CDS-nézetek azonosítása vagy létrehozása: Az elsődleges adatforrások a Warehouse Management szabványos SAP S/4HANA CDS-nézetei. A legfontosabb nézetek az
I_WarehouseOrdera rendelési szintű eseményekhez és azI_WarehouseTaska feladatszintű eseményekhez. A kapcsolódó logisztikai eseményekhez további nézetekre is szükség van, például azI_OutboundDeliveryItem, azI_InboundDeliveryItemés azI_EWMTransportationUnitnézetekre. Ellenőrizze, hogy ezek a nézetek aktívak-e a rendszerében. - Egyéni CDS-nézet létrehozása: Több forrás adatainak egyetlen eseménynapló-formátumba egyesítéséhez egyéni CDS-nézetet kell létrehoznia. Az Eclipse ABAP Development Tools (ADT) eszközével hozzon létre új Data Definition elemet. Az egyéni nézet
UNION ALLhasználatával egyesíti a különböző források rekordjait, amelyek mindegyike egy-egy külön üzleti tevékenységet képvisel. - Az eseménynapló szerkezetének meghatározása: Az egyéni CDS-nézetben határozza meg az eseménynapló oszlopait alkotó mezőket. Ezek között szerepelnie kell a
WarehouseOrder, azActivityName, azEventTime, valamint az egyéb kötelező és ajánlott attribútumoknak. Rendelje hozzá ezeket a mezőket az alapul szolgáló szabványos CDS-nézetekből. - Raktári rendelési események modellezése: Adja hozzá az első
SELECTutasításokat az egyesítéshez. AzI_WarehouseOrdernézetből a létrehozási időbélyeg alapján állítsa elő a „Warehouse Order Created” eseményt. A „Warehouse Order Completed” és a „Warehouse Order Canceled” eseményekhez adjon hozzá továbbiSELECTutasításokat, amelyek a rendelés állapotára szűrnek, és a megfelelő visszaigazolási vagy módosítási időbélyeget használják. - Raktári feladatesemények modellezése: Adjon hozzá
SELECTutasításokat azI_WarehouseTasknézetből. A betároláshoz kapcsolódó raktári folyamatkategóriákra szűrve állítsa elő a „Putaway Task Created” és a „Putaway Task Confirmed” eseményeket. Hasonlóképpen, a megfelelő folyamatkategóriák, valamint a létrehozási és visszaigazolási időbélyegek alapján hozza létre a „Picking Task Created”, a „Picking Task Confirmed” és a „Staging Task Confirmed” eseményeket. - Árumozgási események modellezése: Kapcsolja össze a szállításhoz kapcsolódó nézeteket a raktári feladatokkal az árumozgások rögzítéséhez. A „Goods Receipt Posted” eseményhez az
I_InboundDeliveryItemnézetből válassza ki az adatokat azActualGoodsMovementDateTimemező használatával. A „Goods Issue Posted” eseményhez ugyanezt a mezőt használja azI_OutboundDeliveryItemnézetből, és kapcsolja össze a megfelelő raktári rendeléssel vagy feladattal. - Rakodási és csomagolási események modellezése: Az
I_EWMTransportationUnitnézetből rögzítse a „Loading Started” és a „Loading Completed” eseményeket a hozzájuk tartozó időbélyegek használatával. A csomagolás összetett lehet, ezért közelítő megoldásként használjon Handling Unit nézetet: a létrehozási idő a „Packing Started”, az állapotváltozás időpontja pedig a „Packing Completed” eseményt jelölheti. Ezt a lépést az adott csomagolási folyamathoz kell igazítani. - CDS-nézet közzététele annotációval: Adja hozzá az
@OData.publish: trueannotációt az egyéni CDS-nézet definíciójához. Ez arra utasítja az SAP-t, hogy automatikusan hozzon létre OData-szolgáltatást a nézet szerkezete alapján. - A CDS-nézet és az OData-szolgáltatás aktiválása: Aktiválja az új Data Definition elemet az ADT-ben. Ezután lépjen az SAP Gateway hub rendszerbe, és az
/IWFND/MAINT_SERVICEtranzakcióval keresse meg, majd aktiválja az újonnan létrehozott OData-szolgáltatást. Ezzel az adatok egy REST API-végponton keresztül elérhetővé válnak. - Adatok kinyerése: A céladat-platformmal vagy ETL-eszközzel csatlakozzon az aktivált OData-szolgáltatás végpontjához. Szűrjön közvetlenül az OData URI-ban, például az
EventTimemező alapján korlátozza az adatok körét:?$filter=EventTime ge datetime'2023-01-01T00:00:00'. - Formázás process mininghez: Mentse a kinyert adatokat egyszerű fájlformátumban, például CSV-ként. Az oszlopfejlécek egyezzenek a ProcessMind által elvárt attribútumokkal, például
WarehouseOrder,ActivityNameésEventTime. Töltse fel a végleges fájlt a process mining eszközbe.
Konfiguráció
- Egyéni CDS-nézet: Az eseményadatok egyesítéséhez létre kell hozni egy külön CDS-nézetet, például
Z_C_EWM_EVENTLOG_CDSnéven. Ez az adatkinyerés központi objektuma. - OData-szolgáltatás: Aktiválni kell az egyéni CDS-nézetből létrehozott OData-szolgáltatást. A szolgáltatás neve általában a CDS-nézet neve,
_CDSutótaggal kiegészítve. - Szűrés dátumtartományra: Az OData API hívásakor feltétlenül szűrjön az
EventTimemezőre. Az első elemzéshez általában 3–6 hónapnyi adat elegendő. Szűrés nélkül a lekérdezés időtúllépéshez vagy teljesítményproblémákhoz vezethet. - Szűrés entitásra: Az adatok további szűkítéséhez szűrhet például a raktárszámra (
Raktár), a raktári rendeléstípusra (WarehouseOrderType) vagy bizonyos anyagokra (MaterialNumber). - Rendszerjogosultságok: A CDS-nézet létrehozójának SAP-fejlesztői hozzáférésre van szüksége az ADT-ben. Az OData API-t hívó felhasználónak vagy szolgáltatásfióknak jogosultsággal kell rendelkeznie a raktárkezelés alapjául szolgáló adatok eléréséhez.
Példa-lekérdezés sql
DEFINE VIEW Z_C_EWM_EVENTLOG_CDS
WITH PARAMETERS
P_StartDate : abap.dats,
P_EndDate : abap.dats
AS SELECT FROM I_WarehouseOrder AS WO
{
-- Required Attributes
WO.WarehouseOrder AS WarehouseOrder,
CAST('Warehouse Order Created' AS abap.char(40)) AS ActivityName,
WO.CreationDateTime AS EventTime,
CAST('S4HANA_EWM' AS abap.char(20)) AS SourceSystem,
tstmp_current_utctimestamp() AS LastDataUpdate,
-- Recommended Attributes
CAST(NULL AS abap.tstp) AS EventEndTime,
CAST(NULL AS abap.char(40)) AS MaterialNumber,
WO.CreationUser AS User,
WO.WarehouseOrderType AS WarehouseOrderType,
WO.WarehouseOrderStatus AS WarehouseOrderStatus,
WO.Priority AS Priority,
CAST(NULL AS abap.dec(15, 2)) AS ProcessingTime
}
WHERE
CAST(WO.CreationDateTime AS abap.dats) BETWEEN :P_StartDate AND :P_EndDate
UNION ALL
SELECT FROM I_WarehouseOrder AS WO
{
WO.WarehouseOrder,
CAST('Warehouse Order Completed' AS abap.char(40)) AS ActivityName,
WO.ConfirmationDateTime AS EventTime,
CAST('S4HANA_EWM' AS abap.char(20)) AS SourceSystem,
tstmp_current_utctimestamp() AS LastDataUpdate,
CAST(NULL AS abap.tstp) AS EventEndTime,
CAST(NULL AS abap.char(40)) AS MaterialNumber,
WO.ConfirmationUser AS User,
WO.WarehouseOrderType,
WO.WarehouseOrderStatus,
WO.Priority,
CAST(NULL AS abap.dec(15, 2)) AS ProcessingTime
}
WHERE
WO.WarehouseOrderStatus = 'C' AND
CAST(WO.ConfirmationDateTime AS abap.dats) BETWEEN :P_StartDate AND :P_EndDate
UNION ALL
SELECT FROM I_WarehouseOrder AS WO
{
WO.WarehouseOrder,
CAST('Warehouse Order Canceled' AS abap.char(40)) AS ActivityName,
WO.LastChangeDateTime AS EventTime,
CAST('S4HANA_EWM' AS abap.char(20)) AS SourceSystem,
tstmp_current_utctimestamp() AS LastDataUpdate,
CAST(NULL AS abap.tstp) AS EventEndTime,
CAST(NULL AS abap.char(40)) AS MaterialNumber,
WO.LastChangeUser AS User,
WO.WarehouseOrderType,
WO.WarehouseOrderStatus,
WO.Priority,
CAST(NULL AS abap.dec(15, 2)) AS ProcessingTime
}
WHERE
WO.WarehouseOrderStatus = 'X' AND
CAST(WO.LastChangeDateTime AS abap.dats) BETWEEN :P_StartDate AND :P_EndDate
UNION ALL
SELECT FROM I_WarehouseTask AS WT
LEFT JOIN I_InboundDeliveryItem AS IBD ON WT.DeliveryDocument = IBD.InboundDelivery AND WT.DeliveryDocumentItem = IBD.InboundDeliveryItem
{
WT.WarehouseOrder,
CAST('Goods Receipt Posted' AS abap.char(40)) AS ActivityName,
IBD.ActualGoodsMovementDateTime AS EventTime,
CAST('S4HANA_EWM' AS abap.char(20)) AS SourceSystem,
tstmp_current_utctimestamp() AS LastDataUpdate,
CAST(NULL AS abap.tstp) AS EventEndTime,
WT.Product AS MaterialNumber,
IBD.LastChangedByUser AS User,
WT.WarehouseOrderType,
CAST(NULL AS abap.char(1)) AS WarehouseOrderStatus,
CAST(NULL AS abap.numc(2)) AS Priority,
CAST(NULL AS abap.dec(15, 2)) AS ProcessingTime
}
WHERE
WT.WhseTskProcessCat = '1' AND -- Putaway
IBD.GoodsMovementStatus = 'C' AND -- Completed
CAST(IBD.ActualGoodsMovementDateTime AS abap.dats) BETWEEN :P_StartDate AND :P_EndDate
UNION ALL
SELECT FROM I_WarehouseTask AS WT
{
WT.WarehouseOrder,
CAST('Putaway Task Created' AS abap.char(40)) AS ActivityName,
WT.CreationDateTime AS EventTime,
CAST('S4HANA_EWM' AS abap.char(20)) AS SourceSystem,
tstmp_current_utctimestamp() AS LastDataUpdate,
WT.ConfirmationDateTime AS EventEndTime,
WT.Product AS MaterialNumber,
WT.CreationUser AS User,
WT.WarehouseOrderType,
CAST(NULL AS abap.char(1)) AS WarehouseOrderStatus,
CAST(NULL AS abap.numc(2)) AS Priority,
CAST(NULL AS abap.dec(15, 2)) AS ProcessingTime
}
WHERE
WT.WhseTskProcessCat = '1' AND -- Putaway
CAST(WT.CreationDateTime AS abap.dats) BETWEEN :P_StartDate AND :P_EndDate
UNION ALL
SELECT FROM I_WarehouseTask AS WT
{
WT.WarehouseOrder,
CAST('Putaway Task Confirmed' AS abap.char(40)) AS ActivityName,
WT.ConfirmationDateTime AS EventTime,
CAST('S4HANA_EWM' AS abap.char(20)) AS SourceSystem,
tstmp_current_utctimestamp() AS LastDataUpdate,
CAST(NULL AS abap.tstp) AS EventEndTime,
WT.Product AS MaterialNumber,
WT.ConfirmationUser AS User,
WT.WarehouseOrderType,
CAST(NULL AS abap.char(1)) AS WarehouseOrderStatus,
CAST(NULL AS abap.numc(2)) AS Priority,
WT.ProcessorProcTimeInSec AS ProcessingTime
}
WHERE
WT.WhseTskProcessCat = '1' AND -- Putaway
WT.WarehouseTaskStatus = 'C' AND
CAST(WT.ConfirmationDateTime AS abap.dats) BETWEEN :P_StartDate AND :P_EndDate
UNION ALL
SELECT FROM I_WarehouseTask AS WT
{
WT.WarehouseOrder,
CAST('Picking Task Created' AS abap.char(40)) AS ActivityName,
WT.CreationDateTime AS EventTime,
CAST('S4HANA_EWM' AS abap.char(20)) AS SourceSystem,
tstmp_current_utctimestamp() AS LastDataUpdate,
WT.ConfirmationDateTime AS EventEndTime,
WT.Product AS MaterialNumber,
WT.CreationUser AS User,
WT.WarehouseOrderType,
CAST(NULL AS abap.char(1)) AS WarehouseOrderStatus,
CAST(NULL AS abap.numc(2)) AS Priority,
CAST(NULL AS abap.dec(15, 2)) AS ProcessingTime
}
WHERE
WT.WhseTskProcessCat = '2' AND -- Stock Removal
CAST(WT.CreationDateTime AS abap.dats) BETWEEN :P_StartDate AND :P_EndDate
UNION ALL
SELECT FROM I_WarehouseTask AS WT
{
WT.WarehouseOrder,
CAST('Picking Task Confirmed' AS abap.char(40)) AS ActivityName,
WT.ConfirmationDateTime AS EventTime,
CAST('S4HANA_EWM' AS abap.char(20)) AS SourceSystem,
tstmp_current_utctimestamp() AS LastDataUpdate,
CAST(NULL AS abap.tstp) AS EventEndTime,
WT.Product AS MaterialNumber,
WT.ConfirmationUser AS User,
WT.WarehouseOrderType,
CAST(NULL AS abap.char(1)) AS WarehouseOrderStatus,
CAST(NULL AS abap.numc(2)) AS Priority,
WT.ProcessorProcTimeInSec AS ProcessingTime
}
WHERE
WT.WhseTskProcessCat = '2' AND -- Stock Removal
WT.WarehouseTaskStatus = 'C' AND
CAST(WT.ConfirmationDateTime AS abap.dats) BETWEEN :P_StartDate AND :P_EndDate
UNION ALL
SELECT FROM I_WarehouseTask AS WT
{
WT.WarehouseOrder,
CAST('Packing Started' AS abap.char(40)) AS ActivityName,
WT.CreationDateTime AS EventTime,
CAST('S4HANA_EWM' AS abap.char(20)) AS SourceSystem,
tstmp_current_utctimestamp() AS LastDataUpdate,
WT.ConfirmationDateTime AS EventEndTime,
WT.Product AS MaterialNumber,
WT.CreationUser AS User,
WT.WarehouseOrderType,
CAST(NULL AS abap.char(1)) AS WarehouseOrderStatus,
CAST(NULL AS abap.numc(2)) AS Priority,
CAST(NULL AS abap.dec(15, 2)) AS ProcessingTime
}
WHERE
WT.WhseTskProcessCat = '5' AND -- Packing
CAST(WT.CreationDateTime AS abap.dats) BETWEEN :P_StartDate AND :P_EndDate
UNION ALL
SELECT FROM I_WarehouseTask AS WT
{
WT.WarehouseOrder,
CAST('Packing Completed' AS abap.char(40)) AS ActivityName,
WT.ConfirmationDateTime AS EventTime,
CAST('S4HANA_EWM' AS abap.char(20)) AS SourceSystem,
tstmp_current_utctimestamp() AS LastDataUpdate,
CAST(NULL AS abap.tstp) AS EventEndTime,
WT.Product AS MaterialNumber,
WT.ConfirmationUser AS User,
WT.WarehouseOrderType,
CAST(NULL AS abap.char(1)) AS WarehouseOrderStatus,
CAST(NULL AS abap.numc(2)) AS Priority,
WT.ProcessorProcTimeInSec AS ProcessingTime
}
WHERE
WT.WhseTskProcessCat = '5' AND -- Packing
WT.WarehouseTaskStatus = 'C' AND
CAST(WT.ConfirmationDateTime AS abap.dats) BETWEEN :P_StartDate AND :P_EndDate
UNION ALL
SELECT FROM I_WarehouseTask AS WT
{
WT.WarehouseOrder,
CAST('Staging Task Confirmed' AS abap.char(40)) AS ActivityName,
WT.ConfirmationDateTime AS EventTime,
CAST('S4HANA_EWM' AS abap.char(20)) AS SourceSystem,
tstmp_current_utctimestamp() AS LastDataUpdate,
CAST(NULL AS abap.tstp) AS EventEndTime,
WT.Product AS MaterialNumber,
WT.ConfirmationUser AS User,
WT.WarehouseOrderType,
CAST(NULL AS abap.char(1)) AS WarehouseOrderStatus,
CAST(NULL AS abap.numc(2)) AS Priority,
WT.ProcessorProcTimeInSec AS ProcessingTime
}
WHERE
WT.WhseTskProcessCat = '4' AND -- Staging
WT.WarehouseTaskStatus = 'C' AND
CAST(WT.ConfirmationDateTime AS abap.dats) BETWEEN :P_StartDate AND :P_EndDate
UNION ALL
SELECT FROM I_EWMTransportationUnit AS TU
INNER JOIN I_WarehouseTask AS WT ON TU.TransportationUnit = WT.ShipmentOrTransportationUnit
{
WT.WarehouseOrder,
CAST('Loading Started' AS abap.char(40)) AS ActivityName,
TU.LoadingStartDateTime AS EventTime,
CAST('S4HANA_EWM' AS abap.char(20)) AS SourceSystem,
tstmp_current_utctimestamp() AS LastDataUpdate,
TU.LoadingEndDateTime AS EventEndTime,
WT.Product AS MaterialNumber,
TU.LastChangeUser AS User,
WT.WarehouseOrderType,
CAST(NULL AS abap.char(1)) AS WarehouseOrderStatus,
CAST(NULL AS abap.numc(2)) AS Priority,
CAST(NULL AS abap.dec(15, 2)) AS ProcessingTime
}
WHERE
TU.LoadingStartDateTime IS NOT NULL AND
CAST(TU.LoadingStartDateTime AS abap.dats) BETWEEN :P_StartDate AND :P_EndDate
UNION ALL
SELECT FROM I_EWMTransportationUnit AS TU
INNER JOIN I_WarehouseTask AS WT ON TU.TransportationUnit = WT.ShipmentOrTransportationUnit
{
WT.WarehouseOrder,
CAST('Loading Completed' AS abap.char(40)) AS ActivityName,
TU.LoadingEndDateTime AS EventTime,
CAST('S4HANA_EWM' AS abap.char(20)) AS SourceSystem,
tstmp_current_utctimestamp() AS LastDataUpdate,
CAST(NULL AS abap.tstp) AS EventEndTime,
WT.Product AS MaterialNumber,
TU.LastChangeUser AS User,
WT.WarehouseOrderType,
CAST(NULL AS abap.char(1)) AS WarehouseOrderStatus,
CAST(NULL AS abap.numc(2)) AS Priority,
CAST(NULL AS abap.dec(15, 2)) AS ProcessingTime
}
WHERE
TU.LoadingEndDateTime IS NOT NULL AND
TU.LoadingStatus = 'C' AND
CAST(TU.LoadingEndDateTime AS abap.dats) BETWEEN :P_StartDate AND :P_EndDate
UNION ALL
SELECT FROM I_WarehouseTask AS WT
LEFT JOIN I_OutboundDeliveryItem AS OBD ON WT.DeliveryDocument = OBD.OutboundDelivery AND WT.DeliveryDocumentItem = OBD.OutboundDeliveryItem
{
WT.WarehouseOrder,
CAST('Goods Issue Posted' AS abap.char(40)) AS ActivityName,
OBD.ActualGoodsMovementDateTime AS EventTime,
CAST('S4HANA_EWM' AS abap.char(20)) AS SourceSystem,
tstmp_current_utctimestamp() AS LastDataUpdate,
CAST(NULL AS abap.tstp) AS EventEndTime,
WT.Product AS MaterialNumber,
OBD.LastChangedByUser AS User,
WT.WarehouseOrderType,
CAST(NULL AS abap.char(1)) AS WarehouseOrderStatus,
CAST(NULL AS abap.numc(2)) AS Priority,
CAST(NULL AS abap.dec(15, 2)) AS ProcessingTime
}
WHERE
WT.WhseTskProcessCat = '2' AND -- Stock Removal
OBD.GoodsMovementStatus = 'C' AND -- Completed
CAST(OBD.ActualGoodsMovementDateTime AS abap.dats) BETWEEN :P_StartDate AND :P_EndDate Lépések
- Ellenőrizze, hogy jóváhagyták-e az SAP EWM adatbázissémájához való közvetlen, csak olvasási hozzáférést. Azonosítsa azokat a fizikai adatbázis-objektumokat, amelyek a raktári rendelés fejadatait, a raktári feladatokat, a raktári rendelések állapotelőzményeit, az áruátvételi és árukiadási könyveléseket, a csomagolást, az előkészítést és a rakodást tartalmazzák. A
/SCWM/WHOés a/SCWM/WTlogikai hivatkozások gyakori kiindulópontok, de ellenőrizze a rendszerében a tényleges objektumokat, mezőket, állapotkódokat, időbélyegek jelentését és az adatbázissémát. - Kérje el az ellenőrzött mező-hozzárendelést az SAP EWM műszaki felelősétől vagy az adatszótárból. Rendelje hozzá a raktári rendelés azonosítóját és típusát, az állapotot, a prioritást, a raktári feladat azonosítóját, a feladatkategóriát vagy folyamattípust, az anyagot, a felhasználót, a létrehozási és visszaigazolási időbélyeget, a csomagolási, előkészítési és rakodási időbélyegeket, az áruátvételi és árukiadási időbélyeget, a forrásrendszert, valamint az utolsó frissítés időbélyegét. Ne feltételezze, hogy egy mező minden telepítésben ugyanabban a táblában található, vagy hogy egy állapotkód jelentése mindenhol azonos.
- Állítsa be a kinyerési kapcsolatot csak olvasási jogosultságú adatbázis-fiókkal, az éles vagy jelentéskészítési sémával, valamint a kinyerés kezdő és záró dátumának, a forrásrendszer nevének és az esetleges vállalatspecifikus szűrőknek paraméterezett értékeivel. A dátumszűrőt a megfelelő esemény-időbélyegre alkalmazza, ne csak a raktári rendelés létrehozási időbélyegére. Így a rendelés életciklusának későbbi szakaszában bekövetkező események sem maradnak ki.
- Az eseménysorokat úgy állítsa elő, hogy minden előírt tevékenységhez egy sort választ ki. A lekérdezés minden tevékenységnél az ellenőrzött forrásmezőket használja, és ne hagyatkozzon arra, hogy a ProcessMind következtet az eseményekre. Ha egy tevékenységet nem az aktuális fejlécmező, hanem állapotelőzmény vagy alkalmazásnapló rögzít, használja az előzményeket vagy a naplót, és őrizze meg az esemény időbélyegét, valamint a végrehajtó felhasználót.
- Egységesítse az összes tevékenység időbélyegét egyetlen időzónára, lehetőleg UTC-re, vagy dokumentálja az SAP alkalmazáskiszolgálójának időzónáját. Alakítsa át a forrásspecifikus állapot- és folyamatkódokat az eseménynaplóban előírt pontos tevékenységnevekre: Warehouse Order Created, Goods Receipt Posted, Putaway Task Created, Putaway Task Confirmed, Picking Task Created, Picking Task Confirmed, Packing Started, Packing Completed, Staging Task Confirmed, Loading Started, Loading Completed, Goods Issue Posted, Warehouse Order Completed és Warehouse Order Canceled.
- Gondoskodjon róla, hogy minden kimeneti sor tartalmazza a
WarehouseOrder,ActivityName,EventTime,SourceSystemésLastDataUpdatemezőt. Ha megbízható befejezési időbélyeg áll rendelkezésre, töltse ki azEventEndTimemezőt is. A feladatszintű eseményeket kapcsolja a raktári rendeléshez. Ha egy raktári rendeléshez több releváns feladat tartozik, minden feladateseményhez tartson meg egy külön sort, a raktári rendelést pedig őrizze meg esetazonosítóként. Ha a célformátum támogatja, használjon stabil másodlagos rendezési kulcsot, például feladatazonosítót vagy forrásesemény-azonosítót. - Exportálás előtt ellenőrizze az eredményt. Győződjön meg róla, hogy mind a 14 tevékenységnév szerepel, ha a forrásadatok tartalmazzák a megfelelő üzleti eseményeket; az időbélyegek a kért időszakba esnek; a raktári rendelések azonosítói nem hiányoznak váratlanul; a duplikált sorok pedig több feladattal vagy ismétlődő állapotváltozással magyarázhatók. Vesse össze a darabszámokat az SAP működési jelentéseivel vagy egy külön jóváhagyott adatkinyeréssel.
- Exportálja az eredményt ProcessMind-kompatibilis, elválasztójelekkel tagolt fájlként vagy adatbázis-lekérdezés eredményeként, eseményenként egy sorral. Őrizze meg a pontos oszlopneveket, használjon egyértelmű időbélyeg-formátumot, például ISO 8601-et, szükség esetén tegye idézőjelek közé a szöveges értékeket, és vegyen fel fejlécsort. Töltse fel a fájlt a ProcessMindba, vagy állítsa be az adatbázis-kapcsolatot. A
WarehouseOrdermezőt esetazonosítóként, azActivityNamemezőt tevékenységként, azEventTimemezőt kezdési időbélyegként, azEventEndTimemezőt pedig, ha elérhető, befejezési időbélyegként állítsa be.
Konfiguráció
- Forrásobjektumok hozzárendelése: Ellenőrizze a raktári rendelések, feladatok, állapotelőzmények, árumozgások, csomagolás, előkészítés és berakodás fizikai adatbázis-objektumait és mezőit. A
/SCWM/WHOés a/SCWM/WTreleváns logikai objektumok lehetnek, de a megvalósítás előtt ellenőrizni kell a telepített rendszer adatbázis-reprezentációját. - Dátumtartomány: Kezdje egy ellenőrzött, három-hat hónapos időszakkal. Az első teszthez használjon rövidebb időszakot, majd az egyeztetés után bővítse a tartományt. A későn könyvelt tételek és javítások rögzítéséhez hagyjon kis átfedést az egymást követő futások között.
- Esemény-időbélyeg kiválasztása: A létrehozott tevékenységekhez használja a létrehozási, a visszaigazolt tevékenységekhez a visszaigazolási, az áruátvételhez és árukiadáshoz a könyvelési, a csomagoláshoz, előkészítéshez és berakodáshoz pedig az ellenőrzött végrehajtási időbélyeget. Ne használja minden eseményhez a raktári rendelés létrehozási időpontját.
- Szűrők: Csak ellenőrzött üzleti szűrőket alkalmazzon, például raktárszámot, vállalati kódot, bizonylattípust, raktári rendeléstípust, tevékenységi területet, sort vagy forrásrendszert. A vállalati kód és a bizonylattípus mezői kapcsolódó objektumokban is lehetnek, ezért a célrendszerben ellenőrizni kell a hozzárendelésüket.
- Állapotok hozzárendelése: Állítsa be azokat a pontos SAP-állapot- vagy folyamatkódokat, amelyek a befejezett és törölt raktári rendeléseket jelölik. Az EWM funkcionális felelősével ellenőrizze a hozzárendelést, mert az állapotkódok és tárolásuk kiadásonként és megvalósításonként eltérhetnek.
- SourceSystem: Adjon meg egy állandó értéket, amely az EWM éles vagy riportolási példányát azonosítja. Ne vezesse le egy üresen is maradható üzleti mezőből.
- LastDataUpdate: Minden sorban egységesen töltse ki a kinyerés vagy a forrás frissítésének időbélyegével.
- Növekményes adatkinyerés: Használjon mentett vízjelet, amely a legutóbb sikeresen kinyert forrás-időbélyegen alapul, és hagyjon átfedési időszakot a késve érkező rekordok rögzítésére. Ha rendelkezésre állnak ellenőrzött forrásazonosítók, ezekkel szűrje ki a duplikátumokat.
- Teljesítmény: Korán korlátozza a dátumtartományt, csak a szükséges oszlopokat válassza ki, szűrjön indexelt mezőkre, a feltételekben ne alkalmazzon függvényeket az indexelt időbélyegoszlopokra, a nagy tartományokat pedig dolgozza fel napi vagy heti kötegekben. Ha engedélyezett, használjon riportolási replikát.
- Összekapcsolási stratégia: Ellenőrizze a raktári rendelések és feladatok közötti kapcsolat számosságát. Előzze meg a feladat-, állapot-, anyag- és kezelőegység-adatok összekapcsolásakor keletkező véletlen többszörözést. Az összekapcsolás előtt összesítse vagy válassza ki a megfelelő eseményrekordot.
- Időzónák: Állítsa be a forrás időzónáját és az átváltási szabályt. Egységesen tárolja az időbélyegeket, és dokumentálja a nyári időszámítás kezelését.
- Előfeltételek: Csak olvasási adatbázis-jogosultság, jóváhagyott hozzáférés az EWM-sémához, ellenőrzött adatszótár-hozzárendelések, a releváns operatív és előzményadatokat tartalmazó objektumok olvasási engedélye, valamint jóváhagyott ProcessMind-importbeállítás. A szükséges SAP-modulok, licencek és jogosultságok a telepített EWM-architektúrától függenek, ezeket a rendszer felelősének kell ellenőriznie.
Példa-lekérdezés sql
WITH
params AS (
SELECT
CAST('[Start date and time]' AS TIMESTAMP) AS start_time,
CAST('[End date and time]' AS TIMESTAMP) AS end_time,
CAST('[Source system name]' AS VARCHAR(255)) AS source_system,
CAST(CURRENT_TIMESTAMP AS TIMESTAMP) AS last_data_update
),
warehouse_orders AS (
SELECT
CAST(wo.[Warehouse order ID field] AS VARCHAR(255)) AS WarehouseOrder,
CAST(wo.[Warehouse order type field] AS VARCHAR(255)) AS WarehouseOrderType,
CAST(wo.[Warehouse order status field] AS VARCHAR(255)) AS WarehouseOrderStatus,
CAST(wo.[Priority field] AS VARCHAR(255)) AS Priority,
CAST(wo.[Warehouse order creation timestamp field] AS TIMESTAMP) AS WarehouseOrderCreatedTime,
CAST(wo.[Warehouse order completion timestamp field] AS TIMESTAMP) AS WarehouseOrderCompletedTime,
CAST(wo.[Warehouse order cancellation timestamp field] AS TIMESTAMP) AS WarehouseOrderCanceledTime,
CAST(wo.[Material number field] AS VARCHAR(255)) AS MaterialNumber,
CAST(wo.[User field] AS VARCHAR(255)) AS [User]
FROM [Your warehouse order header table] wo
),
warehouse_tasks AS (
SELECT
CAST(wt.[Warehouse order ID field] AS VARCHAR(255)) AS WarehouseOrder,
CAST(wt.[Warehouse task ID field] AS VARCHAR(255)) AS WarehouseTask,
CAST(wt.[Task category or process type field] AS VARCHAR(255)) AS TaskType,
CAST(wt.[Material number field] AS VARCHAR(255)) AS MaterialNumber,
CAST(wt.[Task creation timestamp field] AS TIMESTAMP) AS TaskCreatedTime,
CAST(wt.[Task confirmation timestamp field] AS TIMESTAMP) AS TaskConfirmedTime,
CAST(wt.[User field] AS VARCHAR(255)) AS [User]
FROM [Your warehouse task table] wt
),
events AS (
SELECT wo.WarehouseOrder, 'Warehouse Order Created' AS ActivityName, wo.WarehouseOrderCreatedTime AS EventTime, CAST(NULL AS TIMESTAMP) AS EventEndTime, wo.MaterialNumber, wo.[User], wo.WarehouseOrderType, wo.WarehouseOrderStatus, wo.Priority FROM warehouse_orders wo
UNION ALL
SELECT gr.[Warehouse order ID field], 'Goods Receipt Posted', CAST(gr.[Goods receipt posting timestamp field] AS TIMESTAMP), CAST(NULL AS TIMESTAMP), CAST(gr.[Material number field] AS VARCHAR(255)), CAST(gr.[User field] AS VARCHAR(255)), wo.WarehouseOrderType, wo.WarehouseOrderStatus, wo.Priority FROM [Your goods receipt posting table] gr LEFT JOIN warehouse_orders wo ON wo.WarehouseOrder = CAST(gr.[Warehouse order ID field] AS VARCHAR(255))
UNION ALL
SELECT wt.WarehouseOrder, 'Putaway Task Created', wt.TaskCreatedTime, CAST(NULL AS TIMESTAMP), wt.MaterialNumber, wt.[User], wo.WarehouseOrderType, wo.WarehouseOrderStatus, wo.Priority FROM warehouse_tasks wt LEFT JOIN warehouse_orders wo ON wo.WarehouseOrder = wt.WarehouseOrder WHERE wt.TaskType = '[Verified putaway task type]'
UNION ALL
SELECT wt.WarehouseOrder, 'Putaway Task Confirmed', wt.TaskConfirmedTime, CAST(NULL AS TIMESTAMP), wt.MaterialNumber, wt.[User], wo.WarehouseOrderType, wo.WarehouseOrderStatus, wo.Priority FROM warehouse_tasks wt LEFT JOIN warehouse_orders wo ON wo.WarehouseOrder = wt.WarehouseOrder WHERE wt.TaskType = '[Verified putaway task type]' AND wt.TaskConfirmedTime IS NOT NULL
UNION ALL
SELECT wt.WarehouseOrder, 'Picking Task Created', wt.TaskCreatedTime, CAST(NULL AS TIMESTAMP), wt.MaterialNumber, wt.[User], wo.WarehouseOrderType, wo.WarehouseOrderStatus, wo.Priority FROM warehouse_tasks wt LEFT JOIN warehouse_orders wo ON wo.WarehouseOrder = wt.WarehouseOrder WHERE wt.TaskType = '[Verified picking task type]'
UNION ALL
SELECT wt.WarehouseOrder, 'Picking Task Confirmed', wt.TaskConfirmedTime, CAST(NULL AS TIMESTAMP), wt.MaterialNumber, wt.[User], wo.WarehouseOrderType, wo.WarehouseOrderStatus, wo.Priority FROM warehouse_tasks wt LEFT JOIN warehouse_orders wo ON wo.WarehouseOrder = wt.WarehouseOrder WHERE wt.TaskType = '[Verified picking task type]' AND wt.TaskConfirmedTime IS NOT NULL
UNION ALL
SELECT pk.[Warehouse order ID field], 'Packing Started', CAST(pk.[Packing start timestamp field] AS TIMESTAMP), CAST(NULL AS TIMESTAMP), CAST(pk.[Material number field] AS VARCHAR(255)), CAST(pk.[User field] AS VARCHAR(255)), wo.WarehouseOrderType, wo.WarehouseOrderStatus, wo.Priority FROM [Your packing event table] pk LEFT JOIN warehouse_orders wo ON wo.WarehouseOrder = CAST(pk.[Warehouse order ID field] AS VARCHAR(255))
UNION ALL
SELECT pk.[Warehouse order ID field], 'Packing Completed', CAST(pk.[Packing completion timestamp field] AS TIMESTAMP), CAST(NULL AS TIMESTAMP), CAST(pk.[Material number field] AS VARCHAR(255)), CAST(pk.[User field] AS VARCHAR(255)), wo.WarehouseOrderType, wo.WarehouseOrderStatus, wo.Priority FROM [Your packing event table] pk LEFT JOIN warehouse_orders wo ON wo.WarehouseOrder = CAST(pk.[Warehouse order ID field] AS VARCHAR(255))
UNION ALL
SELECT st.[Warehouse order ID field], 'Staging Task Confirmed', CAST(st.[Staging confirmation timestamp field] AS TIMESTAMP), CAST(NULL AS TIMESTAMP), CAST(st.[Material number field] AS VARCHAR(255)), CAST(st.[User field] AS VARCHAR(255)), wo.WarehouseOrderType, wo.WarehouseOrderStatus, wo.Priority FROM [Your staging event table] st LEFT JOIN warehouse_orders wo ON wo.WarehouseOrder = CAST(st.[Warehouse order ID field] AS VARCHAR(255))
UNION ALL
SELECT ld.[Warehouse order ID field], 'Loading Started', CAST(ld.[Loading start timestamp field] AS TIMESTAMP), CAST(NULL AS TIMESTAMP), CAST(ld.[Material number field] AS VARCHAR(255)), CAST(ld.[User field] AS VARCHAR(255)), wo.WarehouseOrderType, wo.WarehouseOrderStatus, wo.Priority FROM [Your loading event table] ld LEFT JOIN warehouse_orders wo ON wo.WarehouseOrder = CAST(ld.[Warehouse order ID field] AS VARCHAR(255))
UNION ALL
SELECT ld.[Warehouse order ID field], 'Loading Completed', CAST(ld.[Loading completion timestamp field] AS TIMESTAMP), CAST(NULL AS TIMESTAMP), CAST(ld.[Material number field] AS VARCHAR(255)), CAST(ld.[User field] AS VARCHAR(255)), wo.WarehouseOrderType, wo.WarehouseOrderStatus, wo.Priority FROM [Your loading event table] ld LEFT JOIN warehouse_orders wo ON wo.WarehouseOrder = CAST(ld.[Warehouse order ID field] AS VARCHAR(255))
UNION ALL
SELECT gi.[Warehouse order ID field], 'Goods Issue Posted', CAST(gi.[Goods issue posting timestamp field] AS TIMESTAMP), CAST(NULL AS TIMESTAMP), CAST(gi.[Material number field] AS VARCHAR(255)), CAST(gi.[User field] AS VARCHAR(255)), wo.WarehouseOrderType, wo.WarehouseOrderStatus, wo.Priority FROM [Your goods issue posting table] gi LEFT JOIN warehouse_orders wo ON wo.WarehouseOrder = CAST(gi.[Warehouse order ID field] AS VARCHAR(255))
UNION ALL
SELECT wo.WarehouseOrder, 'Warehouse Order Completed', wo.WarehouseOrderCompletedTime, CAST(NULL AS TIMESTAMP), wo.MaterialNumber, wo.[User], wo.WarehouseOrderType, wo.WarehouseOrderStatus, wo.Priority FROM warehouse_orders wo WHERE wo.WarehouseOrderCompletedTime IS NOT NULL
UNION ALL
SELECT wo.WarehouseOrder, 'Warehouse Order Canceled', wo.WarehouseOrderCanceledTime, CAST(NULL AS TIMESTAMP), wo.MaterialNumber, wo.[User], wo.WarehouseOrderType, wo.WarehouseOrderStatus, wo.Priority FROM warehouse_orders wo WHERE wo.WarehouseOrderCanceledTime IS NOT NULL
)
SELECT
e.WarehouseOrder,
e.ActivityName,
e.EventTime,
e.EventEndTime,
p.source_system AS SourceSystem,
p.last_data_update AS LastDataUpdate,
e.MaterialNumber,
e.[User],
e.WarehouseOrderType,
e.WarehouseOrderStatus,
e.Priority
FROM events e
CROSS JOIN params p
WHERE e.WarehouseOrder IS NOT NULL
AND e.EventTime IS NOT NULL
AND e.EventTime >= p.start_time
AND e.EventTime < p.end_time
ORDER BY e.WarehouseOrder, e.EventTime, e.ActivityName; Készen áll a kezdésre?
Kezdje el még ma raktári működésének optimalizálását. Használja ezt a sablont a hatékonyság növeléséhez és a rendelések gyorsabb teljesítéséhez.
Szüntesse meg a komissiózási hibákat, fejlessze raktárkezelését még ma
Érjen el 99,5%-os készletpontosságot, és szüntesse meg a teljesítési késéseket néhány hét alatt.
Nincs szükség bankkártyára, a beállítás csak néhány perc.