Eszközkarbantartási adatsablon
Eszközkarbantartási adatsablon
- A karbantartási naplók szükséges adatmezői
- A folyamat fő mérföldkövei és a munkalap állomásai
- Adatkinyerési útmutató a Hexagon EAM rendszerhez
Eszközkarbantartási attribútumok
| Név | Leírás | ||
|---|---|---|---|
| Forrásrendszer SourceSystem | Annak a rendszernek a neve, ahonnan az adatok származnak. | ||
| Leírás Ez az attribútum jelzi, melyik rendszer az adatok hiteles forrása. Ebben az esetben az érték a konkrét EAM-rendszer neve, így az adatok megkülönböztethetők a korábbi rendszerekből vagy külső vállalkozók rendszereiből származó adatoktól. Miért fontos? Egyértelművé teszi az adatok eredetét, különösen akkor, ha több karbantartási rendszer adatait egyesítik. Hol szerezhető be? Rögzített érték Példák Hexagon EAMInfor EAMDatastream 7i | |||
| Időbélyeg EventTimestamp | A tevékenység dátuma és időpontja. | ||
| Leírás Ez az attribútum rögzíti, hogy egy eseményt vagy állapotváltozást pontosan mikor mentettek a rendszerbe. Segítségével kiszámítható a tevékenységek közötti időtartam és a munkalap teljes ciklusideje. Miért fontos? A pontos időbélyegek nélkülözhetetlenek az átfutási idők elemzéséhez, a késések feltárásához és az SLA-teljesítés méréséhez. Hol szerezhető be? Hexagon EAM R5EVENTHISTORY tábla, EVH_DATE mező Példák 2023-10-12T08:30:00Z2023-10-12T14:15:00Z2023-10-13T09:00:00Z | |||
| Karbantartási munkalap WorkOrderNumber | A karbantartási munkalap egyedi azonosítója. | ||
| Leírás Ez az attribútum a karbantartási eset egyedi elsődleges kulcsa. A munkalapot az első igénytől a tervezésen és végrehajtáson át a végső pénzügyi lezárásig követi. Központi esetazonosítóként szolgál a tevékenységnaplók, a munkaórák és az anyagfelhasználás összekapcsolásához. Miért fontos? Azonosítja a karbantartási folyamat konkrét esetét, így a ciklusidők és a folyamatváltozatok elejétől a végéig követhetők. Hol szerezhető be? Hexagon EAM R5EVENTS tábla, EVT_CODE mező Példák WO-100234WO-100235WO-100236104592 | |||
| Tevékenység ActivityName | A végrehajtott konkrét feladat vagy állapotváltozási esemény. | ||
| Leírás Ez az attribútum a folyamat végrehajtott lépését jelöli, például a „Munkalap létrehozva” vagy az „Anyag kiadva” eseményt. A munkalaphoz rögzített állapotváltozások előzményeiből vagy konkrét tranzakciós eseményekből származik. Miért fontos? Meghatározza az eseménynapló sorrendjét, így rekonstruálható a folyamat menete, és elemezhetők a szűk keresztmetszetek. Hol szerezhető be? Hexagon EAM R5EVENTHISTORY tábla, EVH_STATUS mező (leírásokhoz rendelve), vagy auditnaplók Példák Munkalap létrehozvaMunkalap ütemezveMunkalap elvégezveAnyag kiadva | |||
| Utolsó adatfrissítés LastDataUpdate | Az időbélyeg, amely megmutatja, mikor nyerték ki vagy frissítették utoljára a rekordot. | ||
| Leírás Ez az attribútum rögzíti, mikor töltötték le utoljára az adatokat a forrásrendszerből. Segít az elemzőknek megítélni az adatok frissességét, és feltárni a jelentéskészítési folyamat esetleges késéseit. Miért fontos? Jelzi, mennyire aktuális az elemzés, és segít az adatszinkronizálási problémák hibakeresésében. Hol szerezhető be? A kinyerés időpontjában érvényes rendszeridő Példák 2023-10-25T12:00:00Z2023-10-26T00:00:00Z | |||
| Eszköz AssetCode | A karbantartott berendezés vagy létesítmény egyedi azonosítója. | ||
| Leírás Ez az attribútum összekapcsolja a munkamegrendelést egy adott berendezéssel vagy helyszínnel. Segítségével eszközönként elemezhetők a meghibásodások, és azonosíthatók a gyakran meghibásodó vagy cserére szoruló berendezések. Miért fontos? Alapul szolgál az eszközök megbízhatósági mutatóinak kiszámításához és annak megértéséhez, hogy mire fordítják a karbantartási erőforrásokat. Hol szerezhető be? Hexagon EAM R5EVENTS tábla, EVT_OBJECT mező Példák PUMP-001HVAC-204FLEET-99CONVEYOR-A | |||
| Felhasználó UpdatedBy | A tevékenységet végző személy felhasználói azonosítója. | ||
| Leírás Ez az attribútum rögzíti annak a személynek a bejelentkezési azonosítóját, aki elindította az állapotváltozást vagy a frissítést. A csapat leterheltségének elemzésére, a képzési igények felmérésére és a folyamatok megfelelésének ellenőrzésére használható. Miért fontos? Lehetővé teszi a felhasználói viselkedés és az erőforrások kihasználtságának elemzését a karbantartási folyamat teljes életciklusa során. Hol szerezhető be? Hexagon EAM R5EVENTHISTORY tábla, EVH_USER mező Példák JSMITHADAVISSYSTEMMGR_USR | |||
| Munkalap típusa WorkOrderType | A munkalapot megelőző, javító vagy sürgősségi karbantartásként sorolja be. | ||
| Leírás Ez az attribútum a karbantartási munka jellegét osztályozza. Segítségével elemezhető a tervezett megelőző karbantartás és az utólagos sürgősségi javítások aránya, amely az eszközök állapotának és a karbantartás érettségének fontos mutatója. Miért fontos? Támogatja a megelőző karbantartás arányát elemző dashboardot, és segít feltárni az utólagos javítások csökkentésének lehetőségeit. Hol szerezhető be? Hexagon EAM R5EVENTS tábla, EVT_TYPE mező Példák PPMCOREMGPRJ | |||
| Prioritás PriorityCode | A munkalaphoz rendelt sürgősségi szint. | ||
| Leírás Ez az attribútum a munkalap fontosságát jelzi a rutinfeladattól a sürgősségi munkáig. Befolyásolja az erőforrások ütemezését, és fontos az SLA-teljesítés nyomon követéséhez, valamint a prioritással való visszaélés feltárásához. Miért fontos? A Priority Escalation and Resource Audit dashboard segít biztosítani, hogy a kritikus feladatok megfelelő prioritást kapjanak. Hol szerezhető be? Hexagon EAM R5EVENTS tábla, EVT_PRIORITY mező Példák KritikusMagasKözepesAlacsony | |||
| Részleg MaintenanceDepartment | A munkát végző részleg vagy munkaközpont. | ||
| Leírás Ez az attribútum azonosítja a munkamegrendeléshez rendelt csapatot vagy karbantartó műhelyt, például az elektromos, gépészeti vagy létesítményüzemeltetési részleget. Lehetővé teszi a különböző műszaki csapatok teljesítményének összehasonlítását. Miért fontos? A Technician Labor Productivity dashboard adatait biztosítja, és segít hatékonyan elosztani az erőforrásokat a különböző szakmák között. Hol szerezhető be? Hexagon EAM R5EVENTS tábla, EVT_MRC mező Példák Elektromos műhelyGépészeti karbantartásLétesítményüzemeltetésJárműflotta-szolgáltatás | |||
| Tényleges munkaórák ActualLaborHours | A munkamegrendelésre elszámolt munkaórák összesen. | ||
| Leírás Ez az attribútum összesíti a technikusok által a munkamegrendelésre elszámolt időt. A termelékenység mérésére, a munkaerőköltség kiszámítására és a becsült munkaóráktól való eltérés elemzésére használható. Miért fontos? A Technician Labor Productivity dashboard és a Labor Hour Variance KPI elsődleges adatforrása. Hol szerezhető be? Hexagon EAM R5BOOKEDHOURS tábla, BOO_HOURS mező (munkamegrendelésenként összesítve) Példák 2.54.012.00.5 | |||
| Tervezett befejezési dátum TargetCompletionDate | A munkamegrendelés tervezett határideje. | ||
| Leírás Ez az attribútum azt a dátumot jelöli, ameddig a karbantartási munkának várhatóan be kell fejeződnie. A tényleges befejezési dátummal összevetve számítható ki az SLA betartása és a határidőre történő teljesítés. Miért fontos? A Contractor SLA Adherence Monitor működéséhez és a tervezés pontosságának értékeléséhez is szükséges. Hol szerezhető be? Hexagon EAM R5EVENTS tábla, EVT_TARGET mező Példák 2023-11-012023-11-152023-12-01 | |||
| Anyagigénylés dátuma MaterialRequisitionDate | A pótalkatrészek igénylésének dátuma. | ||
| Leírás Ez az attribútum rögzíti, mikor küldték el az anyagigényt a raktárnak vagy a beszerzésnek. Az ettől az időponttól az anyag kiadásáig eltelt idő megmutatja az ellátási lánc hatékonyságát. Miért fontos? A Spare Parts Procurement Lead Times dashboard működéséhez szükséges. Hol szerezhető be? Hexagon EAM R5REQUISITIONS tábla vagy kapcsolódó tranzakciós tábla Példák 2023-10-012023-10-05 | |||
| Eszköz kritikussága AssetCriticality | Az eszköz működés szempontjából vett fontosságát jelző érték. | ||
| Leírás Ez az attribútum azt mutatja meg, mennyire fontos az eszköz az üzleti működés szempontjából. Segítségével ellenőrizhető, hogy a magas prioritású munkamegrendelések valóban kritikus berendezésekhez kapcsolódnak-e, és feltárhatók az esetleges visszaélések. Miért fontos? A Priority Escalation and Resource Audit dashboard a prioritás és az eszköz értékének összevetésére használja. Hol szerezhető be? Hexagon EAM R5OBJECTS tábla, OBJ_CRITICALITY mező (az EVT_OBJECT mező alapján kell összekapcsolni) Példák A - LétfontosságúB - KritikusC - MásodlagosD - Alacsony | |||
| Létrehozás dátuma DateCreated | A munkamegrendelés eredeti létrehozásának dátuma. | ||
| Leírás Ez az attribútum jelöli a munkamegrendelés életciklusának kezdetét. Ebből számítható ki az átlagos tervezési idő, és a hátralékos tételek kora. Miért fontos? A Maintenance Planning Velocity dashboard és a Backlog Age KPI működéséhez szükséges. Hol szerezhető be? Hexagon EAM R5EVENTS tábla, EVT_CREATED mező Példák 2023-09-012023-09-15 | |||
| Megelőző karbantartás IsPreventive | Jelzi, hogy a munkamegrendelés megelőző karbantartásra vonatkozik-e. | ||
| Leírás Ez a logikai attribútum megkönnyíti a munkamegrendelések szűrését és kategorizálását. A Preventive Maintenance Ratio KPI kiszámításakor elkülöníti a megelőző munkákat a meghibásodások utáni javításoktól. Miért fontos? A Preventive Maintenance Ratio Analysis dashboard egyik alapvető bontási szempontja. Hol szerezhető be? A WorkOrderType mezőből származtatva Példák truefalse | |||
| Minőségellenőrzés sikeres QualityControlPassed | Jelzi, hogy dokumentálták-e a minőségellenőrzési lépést. | ||
| Leírás Ez a logikai attribútum ellenőrzi, hogy egy adott minőségellenőrzési tevékenységet vagy ellenőrzőlista-elemet teljesítettként jelöltek-e meg. Segít betartani a biztonsági előírásokat és a belső szabványokat. Miért fontos? A Quality Control Compliance Rate KPI alapjául szolgál, és támogatja a Compliance and Documentation Integrity dashboard működését. Hol szerezhető be? Ellenőrzőlista-táblákból vagy tevékenységtörténetből származtatva Példák truefalse | |||
| Munkamegrendelés leírása WorkOrderDescription | A karbantartási feladat rövid szöveges összefoglalója. | ||
| Leírás Ez az attribútum tartalmazza a probléma tárgyát vagy rövid leírását. Kontextust ad az elemzőknek, amikor egy problémás eset részleteit vizsgálják, vagy strukturálatlan szövegben keresnek mintázatokat. Miért fontos? Szükséges kontextust ad a folyamatadatok emberi ellenőrzéséhez. Hol szerezhető be? Hexagon EAM R5EVENTS tábla, EVT_DESC mező Példák Szivárgó szivattyútömítés javításaHVAC-rendszer havi ellenőrzéseSzállítószalag cseréje | |||
| SLA-állapot SLAState | Jelzi, hogy a munkamegrendelés teljesítette-e a szolgáltatási szintre vonatkozó megállapodást. | ||
| Leírás Ez a számított attribútum összeveti a tényleges befejezési dátumot a tervezett befejezési dátummal. Az esetet „SLA-n belül” vagy „Határidőn túl” kategóriába sorolja, így egyszerűbbé teszi a vállalkozói és a belső teljesítmény jelentését. Miért fontos? Az SLA Adherence Rate KPI közvetlen adatforrása. Hol szerezhető be? Számítás: tényleges befejezési dátum <= cél dátuma Példák SLA-n belülHatáridőn túlNyitott | |||
| Sürgősségi szintre emelés EmergencyEscalationFlag | Jelzi, hogy a prioritást a létrehozás után sürgősségi szintre emelték-e. | ||
| Leírás Ez a logikai attribútum azokat a munkamegrendeléseket azonosítja, amelyek alacsonyabb prioritással indultak, majd később sürgősségi szintre kerültek. A gyakori előfordulás pontatlan kezdeti besorolásra vagy a rendszer kijátszására utalhat a gyorsabb kiszolgálás érdekében. Miért fontos? A Priority Escalation and Resource Audit dashboard és az Emergency Escalation Rate KPI működését támogatja. Hol szerezhető be? A prioritásmező változásnaplójából származtatva Példák truefalse | |||
| Tényleges összköltség TotalActualCost | A munkamegrendeléshez rögzített teljes költség. | ||
| Leírás Ez az attribútum összesíti a munkaerő, az anyagok és a szolgáltatások költségét. Segítségével elemezhető a pénzügyi elszámolás, valamint a sürgősségi és a megelőző karbantartás költségkülönbsége. Miért fontos? A Financial Settlement and Closure Speed dashboard működését és a költségeken alapuló döntéshozatalt támogatja. Hol szerezhető be? Hexagon EAM R5EVENTS tábla, EVT_ACTCOST mező (vagy hasonló összesítő oszlop) Példák 150.002500.5075.25 | |||
| Utómunka IsRework | Jelzi, hogy a munkamegrendelés ismételt műszaki feladatokat tartalmazott-e. | ||
| Leírás Ez a számított attribútum azokat az eseteket azonosítja, amikor a folyamat egy minőségellenőrzési vagy befejezési állapotból visszalép egy aktív munkavégzési állapotba. Segít feltárni a minőségi problémákat és a képzési hiányosságokat. Miért fontos? A Technical Rework and Quality Control dashboard és a Maintenance Rework Rate KPI alapjául szolgál. Hol szerezhető be? A tevékenységek ismétlődése alapján számítva Példák truefalse | |||
Eszközkarbantartási tevékenységek
| Tevékenység | Leírás | ||
|---|---|---|---|
| Anyag kiadva | A pótalkatrészeket fizikailag kiadják a raktárból, és a munkalapra könyvelik. Ez jelzi az anyagfelhasználást. | ||
| Miért fontos? Az anyag rendelkezésre állási átfutási idejének mérését lezáró pont. Feltárja azokat a késéseket, amikor a munka alkatrészhiány miatt megkezdődik, majd leáll. Hol szerezhető be? Hexagon EAM r5translines tábla. A munkalaphoz kapcsolt 'I' (Issue) tranzakciótípus. Rögzítés Az r5translines táblán végrehajtott INSERT tranzakció naplózza. Eseménytípus explicit | |||
| Munkalap elvégezve | A műszaki munka befejeződött, a karbantartó pedig készre jelölte a feladatot. Az eszköz ismét használatba vehető. | ||
| Miért fontos? Az elejétől a végéig tartó folyamat időtartamának és az átlagos javítási időnek fontos mérföldköve. Ekkor áll le az állásidő mérése. Hol szerezhető be? Hexagon EAM r5statuslog. Átmenet a 'C' (Completed) vagy az 'F' (Finished) állapotba. Rögzítés Az r5statuslog táblán végrehajtott tranzakció naplózza. Eseménytípus explicit | |||
| Munkalap jóváhagyva | Az állapotváltozás azt jelzi, hogy a munkalap sikeresen túljutott a tervezés és a becslés ellenőrzésén. A munka megkezdésére szóló engedélyt jelenti. | ||
| Miért fontos? A karbantartási tervezés sebességének elemzéséhez jelzi a tervezési szakasz végét. A feladatkörök szétválasztására vonatkozó megfelelés ellenőrzésére is használható. Hol szerezhető be? Hexagon EAM r5statuslog tábla. Az 'A' (Approved) állapotba történő átmenetet vagy ennek rendszerbeli megfelelőjét keresse. Rögzítés Az r5statuslog táblán végrehajtott tranzakció naplózza. Eseménytípus explicit | |||
| Munkalap létrehozva | A karbantartási munkalap első rögzítése a rendszerben. Ez az esemény létrehozza az esetet, és rögzíti a karbantartási folyamat kezdetének időpontját. | ||
| Miért fontos? Jelzi a folyamat kezdetét, és alapot ad a teljes megoldási idő méréséhez. A feladatok elöregedésének számításához is szükséges. Hol szerezhető be? Hexagon EAM r5events tábla. Új rekord evt_code értékkel történő beszúrásakor naplózódik. Rögzítés Az r5events táblán végrehajtott INSERT tranzakció naplózza. Eseménytípus explicit | |||
| Munkalap lezárva | A munkalapot pénzügyileg lezárják és archiválják. Ezután már nem könyvelhető rá további költség vagy munkaidő. | ||
| Miért fontos? A folyamat vége. A pénzügyi lezárás elemzéséhez és a végleges költségek rögzítéséhez szükséges. Hol szerezhető be? Hexagon EAM r5statuslog. Átmenet a 'C' (Closed) vagy az 'L' (Locked/Closed) állapotba. Rögzítés Az r5statuslog táblán végrehajtott tranzakció naplózza. Eseménytípus explicit | |||
| Munkalap megkezdve | A karbantartók megkezdték az eszköz tényleges, helyszíni javítását. Ezt gyakran az In Progress állapotba váltás vagy az első munkaidő-bejegyzés időbélyege jelzi. | ||
| Miért fontos? A feladatok elöregedésének mérését lezáró, a tényleges szerelési munka idejének mérését elindító pont. Az SLA-teljesítés arányának számításához is nélkülözhetetlen. Hol szerezhető be? Hexagon EAM r5statuslog. Átmenet az 'In Progress' állapotba, gyakran 'I' vagy 'IP' állapotkóddal. Rögzítés Az r5statuslog táblán végrehajtott tranzakció naplózza. Eseménytípus explicit | |||
| Munkaórák rögzítve | A karbantartó rögzíti a munkalapra fordított munkaórákat. Egy esethez több ilyen tevékenység is tartozhat. | ||
| Miért fontos? A munkaórák eltérését és a karbantartók munkaidő-termelékenységét elemző dashboardok alapja. Megmutatja a tényleges és a tervezett ráfordítás különbségét. Hol szerezhető be? Hexagon EAM r5booklabor tábla. Minden sor egy munkalaphoz (WO) tartozó munkaidő-bejegyzés. Rögzítés Az r5booklabor táblán végrehajtott INSERT tranzakció naplózza. Eseménytípus explicit | |||
| Anyagigénylés létrehozva | A munkalaphoz pótalkatrész- vagy anyagigénylés kapcsolódik. Ezzel indul el az ellátási lánc részfolyamata. | ||
| Miért fontos? A pótalkatrészek beszerzési átfutási idejének méréséhez szükséges kezdőpont. A magas esetszám a készlet rendelkezésre állásától való függést jelezheti. Hol szerezhető be? Hexagon EAM r5requisitions tábla. A req_evt mezőn keresztül kapcsolódik a munkalaphoz (Work Order Code). Rögzítés Az r5requisitions táblán végrehajtott INSERT tranzakció naplózza. Eseménytípus explicit | |||
| Ellenőrzőlista-elemek igazolva | A munkalap egy adott feladatát vagy ellenőrzési lépését befejezettként jelölik. Ez a munka részletes előrehaladását mutatja. | ||
| Miért fontos? A megfelelés és a dokumentáció teljességének ellenőrzéséhez szükséges. Igazolja, hogy a biztonsági ellenőrzéseket a rendszerben rögzítették. Hol szerezhető be? Hexagon EAM r5checklist vagy r5activities tábla. Egy adott tevékenység vagy feladatsor állapotváltozása. Rögzítés Az r5checklist táblán végrehajtott UPDATE tranzakció naplózza. Eseménytípus explicit | |||
| Minőségellenőrzés sikeres | A felügyelő vagy az ellenőr átvizsgálja az elvégzett munkát, és jóváhagyja annak minőségét. Ez a lépés a lezárás előtt ellenőrzi a javítást. | ||
| Miért fontos? A minőségellenőrzési megfelelési arány KPI mérését támogatja. Az innen visszavezető folyamatágak műszaki utómunkára utalnak. Hol szerezhető be? Hexagon EAM r5statuslog ('Review' vagy 'QC' állapotba történő átmenet), vagy r5audittrail egy adott UDF-ellenőrzéshez. Rögzítés Hasonlítsa össze az állapotmező értékét a módosítás előtt és után. Eseménytípus inferred | |||
| Munkalap aláírva | A megfeleléshez vagy a vállalkozó kifizetéséhez rendszerint végső adminisztratív jóváhagyás szükséges. Ez igazolja az adatok pontosságát. | ||
| Miért fontos? A munkalap-jóváhagyási ciklus elemzéséhez kövesse nyomon ezt a lépést. Az itt jelentkező késések lassítják a pénzügyi lezárást. Hol szerezhető be? Hexagon EAM r5statuslog ('Signed Off' állapotba történő átmenet), vagy az elektronikus aláírás rögzítésének naplója. Rögzítés Hasonlítsa össze az állapotmező értékét a módosítás előtt és után. Eseménytípus inferred | |||
| Munkalap ütemezve | A munkalaphoz tervezett kezdési dátumot vagy konkrét erőforrást rendelnek. Ezzel a munkalap a feladatlistából az aktív ütemtervbe kerül. | ||
| Miért fontos? A karbantartók munkaidő-termelékenységének elemzéséhez és az erőforrások elosztása hatékonyságának megértéséhez szükséges. Hol szerezhető be? Hexagon EAM r5events tábla (az evt_schedstart frissítése), vagy r5statuslog tábla ('S' állapotba, azaz Scheduled állapotba történő átmenet). Rögzítés Hasonlítsa össze az állapotmező értékét a módosítás előtt és után, vagy ellenőrizze az evt_schedstart frissítését. Eseménytípus inferred | |||
| Prioritás módosítva | A munkalap létrehozása után megváltozott annak prioritása. Az esemény rögzíti az időpontot és az új prioritási értéket. | ||
| Miért fontos? A Priority Escalation and Resource Audit dashboardon a prioritással való visszaélés és a feladatkör indokolatlan bővülésének feltárásához szükséges. Hol szerezhető be? Hexagon EAM r5audittrail, ha az auditálás engedélyezett, vagy pillanatképekből következtethető ki. Gyakran az evt_priority mező auditnaplójából származik. Rögzítés Az evt_priority mezőn végrehajtott UPDATE tranzakció naplózza. Eseménytípus explicit | |||
Adatkinyerési útmutatók
Lépések
- Jelentkezzen be a Hexagon EAM alkalmazásba olyan felhasználói fiókkal, amely rendelkezik Advanced Reporting Authoring jogosultsággal.
- Nyissa meg a Reports modult, amely általában az Administration vagy a Reports menüben található, majd indítsa el az Advanced Reporting felületet, például a Cognost vagy a beépített SQL-jelentéskészítőt.
- Indítsa el az új jelentés létrehozását, és válassza adatforrásként az „SQL” vagy a „Free-hand SQL” lehetőséget. Így közvetlenül az adatbázisból kérdezhet le adatokat a szokásos üzleti objektummodell helyett.
- Másolja ki az alábbi Query szakaszban megadott SQL-szkriptet, és illessze be az adatkészlet definíciós ablakába.
- Cserélje le a helyőrző értékeket, például a [Your Organization Code] értékét és a dátumtartományokat a saját környezetének megfelelő adatokra.
- Ellenőrizze a lekérdezés szintaxisát a szerkesztőben, és győződjön meg arról, hogy az adatbázis-platform, az Oracle vagy az SQL Server elfogadja az UNION utasításokat.
- Rendelje hozzá az eredményoszlopokat a jelentés elrendezéséhez, és ellenőrizze, hogy a WorkOrderNumber, az ActivityName és az EventTimestamp jól látható legyen.
- Állítsa be, hogy a jelentés CSV- vagy Excel-formátumba exportáljon. Így táblázatos adatokat kap összevont cellák és formázási fejlécek nélkül.
- Futtassa le a jelentést egy ellenőrzési időszakra, például az utolsó 100 munkalapra, és ellenőrizze az adatok szerkezetét.
- Az ellenőrzés után ütemezze a jelentés rendszeres futtatását, vagy futtassa le a teljes adatkinyerési időszakra.
- Töltse le az eredményfájlt, és ellenőrizze a dátumformátumokat. A pontos sorrendezéshez lehetőleg a másodperceket is tartalmazzák az időbélyegek.
- Importálja az eredményül kapott CSV-fájlt a ProcessMindbe. A SourceSystem oszlopot rendelje esetattribútumhoz, az ActivityName oszlopot pedig a tevékenység besorolásához.
Konfiguráció
- Dátumtartomány: A lekérdezés teljesítményének megőrzése érdekében javasolt az EVT_DATE (Creation Date) mező alapján gördülő, 6–12 hónapos időszakra szűrni.
- Szervezeti szűrő: A Hexagon EAM rendszerben gyakran több szervezet adatai szerepelnek. A más üzleti egységekből származó adatok keveredésének elkerülésére szűrjön a saját Organization Code értékére.
- Adatbázis-szintaxis: A lekérdezés lehetőség szerint ANSI szabványú SQL-t használ, de a Hexagon EAM rendszer jellemzően Oracle vagy SQL Server adatbázison fut. A dátumfüggvényeket szükség lehet módosítani, például SYSDATE helyett GETDATE használatára.
- Állapotok beállítása: Az állapotkódok, például az „A”, „C” és „R”, tevékenységnevekhez, például a „Work Order Approved” értékhez való hozzárendelésének meg kell egyeznie a rendszerben beállított kódokkal.
- Jogosultságok: A jelentést futtató felhasználói fióknak olvasási hozzáférésre van szüksége az R5EVENTS, R5EVENTSTATUS, R5BOOKEDHOURS, R5TRANSACTIONS és R5AUDITVALUES táblákhoz.
Példa-lekérdezés sql
/* 1. Work Order Created */
SELECT
evt_code AS WorkOrderNumber,
'Work Order Created' AS ActivityName,
evt_created AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
evt_type AS WorkOrderType,
evt_priority AS PriorityCode,
evt_mrc AS MaintenanceDepartment,
evt_updatedby AS UpdatedBy,
evt_target AS TargetCompletionDate,
evt_object AS AssetCode,
NULL AS ActualLaborHours
FROM r5events
WHERE evt_type IN ('JOB', 'PPM') -- Filter for relevant WO types
AND evt_created >= '2023-01-01' -- [Set Start Date]
AND evt_org = 'YOUR_ORG' -- [Set Organization]
UNION ALL
/* 2. Priority Updated (Requires Audit Log) */
SELECT
aud_code AS WorkOrderNumber,
'Priority Updated' AS ActivityName,
aud_date AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
NULL AS WorkOrderType,
aud_value AS PriorityCode,
NULL AS MaintenanceDepartment,
aud_user AS UpdatedBy,
NULL AS TargetCompletionDate,
NULL AS AssetCode,
NULL AS ActualLaborHours
FROM r5auditvalues
WHERE aud_table = 'R5EVENTS'
AND aud_field = 'EVT_PRIORITY'
AND aud_org = 'YOUR_ORG'
UNION ALL
/* 3. Status Changes (Approved, Scheduled, Started, Completed, Signed Off, Closed) */
/* This block maps generic status codes to specific ProcessMind activities */
SELECT
est_event AS WorkOrderNumber,
CASE est_status
WHEN 'A' THEN 'Work Order Approved'
WHEN 'S' THEN 'Work Order Scheduled'
WHEN 'IP' THEN 'Work Order Started'
WHEN 'C' THEN 'Work Order Completed'
WHEN 'QC' THEN 'Quality Control Passed'
WHEN 'SO' THEN 'Work Order Signed Off'
WHEN 'CL' THEN 'Work Order Closed'
ELSE 'Status Change: ' + est_status
END AS ActivityName,
est_date AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
NULL AS WorkOrderType,
NULL AS PriorityCode,
NULL AS MaintenanceDepartment,
est_auth AS UpdatedBy,
NULL AS TargetCompletionDate,
NULL AS AssetCode,
NULL AS ActualLaborHours
FROM r5eventstatus
WHERE est_status IN ('A', 'S', 'IP', 'C', 'QC', 'SO', 'CL')
AND est_org = 'YOUR_ORG'
UNION ALL
/* 4. Material Requisition Created */
SELECT
req_event AS WorkOrderNumber,
'Material Requisition Created' AS ActivityName,
req_created AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
NULL AS WorkOrderType,
NULL AS PriorityCode,
NULL AS MaintenanceDepartment,
req_createdby AS UpdatedBy,
NULL AS TargetCompletionDate,
NULL AS AssetCode,
NULL AS ActualLaborHours
FROM r5requisitions
WHERE req_event IS NOT NULL
AND req_org = 'YOUR_ORG'
UNION ALL
/* 5. Material Issued */
SELECT
trl_event AS WorkOrderNumber,
'Material Issued' AS ActivityName,
trl_date AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
NULL AS WorkOrderType,
NULL AS PriorityCode,
NULL AS MaintenanceDepartment,
trl_user AS UpdatedBy,
NULL AS TargetCompletionDate,
trl_part AS AssetCode, -- Storing Part ID in Asset column for context
NULL AS ActualLaborHours
FROM r5translines
WHERE trl_type = 'I' -- I = Issue
AND trl_event IS NOT NULL
AND trl_org = 'YOUR_ORG'
UNION ALL
/* 6. Labor Hours Recorded */
SELECT
boo_event AS WorkOrderNumber,
'Labor Hours Recorded' AS ActivityName,
boo_entered AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
NULL AS WorkOrderType,
NULL AS PriorityCode,
boo_mrc AS MaintenanceDepartment,
boo_person AS UpdatedBy,
NULL AS TargetCompletionDate,
NULL AS AssetCode,
boo_hours AS ActualLaborHours
FROM r5bookedhours
WHERE boo_event IS NOT NULL
AND boo_org = 'YOUR_ORG'
UNION ALL
/* 7. Checklist Item Verified */
SELECT
ckv_event AS WorkOrderNumber,
'Checklist Item Verified' AS ActivityName,
ckv_entrydate AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
NULL AS WorkOrderType,
NULL AS PriorityCode,
NULL AS MaintenanceDepartment,
ckv_enteredby AS UpdatedBy,
NULL AS TargetCompletionDate,
NULL AS AssetCode,
NULL AS ActualLaborHours
FROM r5checklistvalues
WHERE ckv_completed = '+' -- Logic for completed item depends on config
AND ckv_event IS NOT NULL
AND ckv_org = 'YOUR_ORG' Lépések
- Az adatbázis-kapcsolat azonosítása: Gondoskodjon róla, hogy rendelkezzen olvasási jogosultsággal, jellemzően szolgáltatásfiókkal, a Hexagon EAM Oracle- vagy SQL Server-háttéradatbázisához.
- Alaptáblák megkeresése: Ellenőrizze, hogy hozzáfér-e az R5EVENTS (munkamegrendelés-fejlécek), R5STATUS (állapotelőzmények), R5BOOKEDHOURS (munkaidő), R5TRANSACTIONS (anyagok) és R5AUDITVALUES (auditnapló) táblákhoz.
- Állapotkódok hozzárendelése: A Hexagon EAM-ban az állapotkódok beállíthatók, például A, C, O vagy R értékre. A rendszer beállításai között (képernyő: Administration -> Codes) rendelje hozzá a saját, egy- vagy kétkarakteres kódjait a következő tevékenységekhez: Jóváhagyva, Ütemezve, Megkezdve, Befejezve, Minőségellenőrzés sikeres, Aláírva és Lezárva.
- A lekérdezés beállítása: Nyissa meg az alábbi SQL-parancsfájlt. Cserélje le a helyőrző állapotkódokat (például: 'APPR', 'SCHD', 'COMP') a rendszerében használt kódokra.
- Időszak megadása: Módosítsa a WHERE feltételeket az EVT_DATE vagy TRN_DATE mező szűréséhez. Válassza ki a kívánt időszakot, általában az elmúlt 12 hónapot, hogy a lekérdezés megfelelő teljesítménnyel fusson.
- Adatkinyerés futtatása: Futtassa a lekérdezést az SQL-ügyfélben (SQL Developer, SSMS vagy Toad).
- Auditadatok ellenőrzése: Ha a „Prioritás módosítva” tevékenységhez nem jelenik meg sor, ellenőrizze, hogy az EAM rendszerbeállításaiban engedélyezve van-e az R5EVENTS tábla auditálása.
- Ellenőrzőlista-adatok ellenőrzése: Győződjön meg róla, hogy az Ön verziójában az R5CHECKLISTVALUES a megfelelő tábla. Régebbi verziókban a feladatszintű teljesítés adatai az R5ACTIVITIES táblában lehetnek.
- Adatok exportálása: Mentse az eredményt CSV- vagy Parquet-fájlba. Az időbélyeg oszlop formátuma legyen ISO 8601 (YYYY-MM-DD HH:MM:SS), így elkerülhetők a feldolgozási hibák.
- Importálás a ProcessMindbe: Töltse fel a fájlt a ProcessMind felületére. A WorkOrderNumber mezőt rendelje az Esetazonosítóhoz, az ActivityName mezőt a Tevékenységhez, az EventTimestamp mezőt pedig az időbélyeghez.
Konfiguráció
- Időszak szűrése: A lekérdezés jelenleg minden adatot kiválaszt. Javasoljuk, hogy az alapul szolgáló CTE-ben vagy minden SELECT blokkban adjon hozzá szűrőt, például WHERE EVT_DATE >= SYSDATE - 365 (Oracle) vagy GetDate() - 365 (SQL Server) feltétellel.
- Állapotkódok hozzárendelése: Cserélje le az SQL-ben szereplő szöveges értékeket, például az „APPR”, „COMP” és „QC” kódokat az R5STATUS készletben ténylegesen használt kódokra.
- Audit beállítása: A „Priority Updated” tevékenység adatkinyerése az R5AUDITVALUES táblától függ. Ha az EVT_PRIORITY oszlop auditálása ki van kapcsolva, ez a tevékenység nem fog megjelenni.
- Szervezet/bérlő: Ha az EAM-példány több szervezetet tartalmaz, adjon hozzá szűrőt az EVT_ORG vagy az EVT_MRC (Department) mezőre, hogy az adatok ne keveredjenek.
- Nyelv: A lekérdezés angol nyelvű, szabványos oszlopfejlécekkel számol. Ha az adatbázisban honosított oszlopnevek szerepelnek, módosítsa ennek megfelelően.
Példa-lekérdezés sql
/* 1. Work Order Created */
SELECT
E.EVT_CODE AS WorkOrderNumber,
'Work Order Created' AS ActivityName,
E.EVT_DATE AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
E.EVT_TYPE AS WorkOrderType,
E.EVT_PRIORITY AS PriorityCode,
E.EVT_MRC AS MaintenanceDepartment,
E.EVT_CREATEDBY AS UpdatedBy,
E.EVT_TARGET AS TargetCompletionDate,
E.EVT_OBJECT AS AssetCode,
NULL AS ActualLaborHours
FROM R5EVENTS E
WHERE E.EVT_TYPE IN ('JOB', 'PPM') -- Filter for Standard and Preventive WOs
UNION ALL
/* 2. Priority Updated (From Audit Log) */
SELECT
E.EVT_CODE AS WorkOrderNumber,
'Priority Updated' AS ActivityName,
A.AUD_DATE AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
E.EVT_TYPE AS WorkOrderType,
A.AUD_VALUE AS PriorityCode,
E.EVT_MRC AS MaintenanceDepartment,
A.AUD_USER AS UpdatedBy,
E.EVT_TARGET AS TargetCompletionDate,
E.EVT_OBJECT AS AssetCode,
NULL AS ActualLaborHours
FROM R5EVENTS E
JOIN R5AUDITVALUES A ON E.EVT_CODE = A.AUD_KEY1
WHERE A.AUD_TABLE = 'R5EVENTS'
AND A.AUD_FIELD = 'EVT_PRIORITY'
UNION ALL
/* 3. Work Order Approved */
SELECT
E.EVT_CODE AS WorkOrderNumber,
'Work Order Approved' AS ActivityName,
S.STA_DATE AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
E.EVT_TYPE AS WorkOrderType,
E.EVT_PRIORITY AS PriorityCode,
E.EVT_MRC AS MaintenanceDepartment,
S.STA_UPDATEUSER AS UpdatedBy,
E.EVT_TARGET AS TargetCompletionDate,
E.EVT_OBJECT AS AssetCode,
NULL AS ActualLaborHours
FROM R5EVENTS E
JOIN R5STATUS S ON E.EVT_CODE = S.STA_EVENT
WHERE S.STA_STATUS = 'APPR' -- Replace with your Approved status code
UNION ALL
/* 4. Material Requisition Created */
SELECT
E.EVT_CODE AS WorkOrderNumber,
'Material Requisition Created' AS ActivityName,
R.REQ_DATE AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
E.EVT_TYPE AS WorkOrderType,
E.EVT_PRIORITY AS PriorityCode,
E.EVT_MRC AS MaintenanceDepartment,
R.REQ_CREATEDBY AS UpdatedBy,
E.EVT_TARGET AS TargetCompletionDate,
E.EVT_OBJECT AS AssetCode,
NULL AS ActualLaborHours
FROM R5EVENTS E
JOIN R5REQUISITIONS R ON E.EVT_CODE = R.REQ_EVENT
UNION ALL
/* 5. Work Order Scheduled */
SELECT
E.EVT_CODE AS WorkOrderNumber,
'Work Order Scheduled' AS ActivityName,
S.STA_DATE AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
E.EVT_TYPE AS WorkOrderType,
E.EVT_PRIORITY AS PriorityCode,
E.EVT_MRC AS MaintenanceDepartment,
S.STA_UPDATEUSER AS UpdatedBy,
E.EVT_TARGET AS TargetCompletionDate,
E.EVT_OBJECT AS AssetCode,
NULL AS ActualLaborHours
FROM R5EVENTS E
JOIN R5STATUS S ON E.EVT_CODE = S.STA_EVENT
WHERE S.STA_STATUS = 'SCHD' -- Replace with your Scheduled status code
UNION ALL
/* 6. Work Order Started */
SELECT
E.EVT_CODE AS WorkOrderNumber,
'Work Order Started' AS ActivityName,
S.STA_DATE AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
E.EVT_TYPE AS WorkOrderType,
E.EVT_PRIORITY AS PriorityCode,
E.EVT_MRC AS MaintenanceDepartment,
S.STA_UPDATEUSER AS UpdatedBy,
E.EVT_TARGET AS TargetCompletionDate,
E.EVT_OBJECT AS AssetCode,
NULL AS ActualLaborHours
FROM R5EVENTS E
JOIN R5STATUS S ON E.EVT_CODE = S.STA_EVENT
WHERE S.STA_STATUS IN ('STRT', 'INPRG') -- Replace with your Started/In Progress status codes
UNION ALL
/* 7. Material Issued */
SELECT
E.EVT_CODE AS WorkOrderNumber,
'Material Issued' AS ActivityName,
T.TRN_DATE AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
E.EVT_TYPE AS WorkOrderType,
E.EVT_PRIORITY AS PriorityCode,
E.EVT_MRC AS MaintenanceDepartment,
T.TRN_USER AS UpdatedBy,
E.EVT_TARGET AS TargetCompletionDate,
E.EVT_OBJECT AS AssetCode,
NULL AS ActualLaborHours
FROM R5EVENTS E
JOIN R5TRANSACTIONS T ON E.EVT_CODE = T.TRN_EVENT
WHERE T.TRN_TYPE = 'ISSUE' -- Indicates material issue from store
UNION ALL
/* 8. Labor Hours Recorded */
SELECT
E.EVT_CODE AS WorkOrderNumber,
'Labor Hours Recorded' AS ActivityName,
B.BOO_DATE AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
E.EVT_TYPE AS WorkOrderType,
E.EVT_PRIORITY AS PriorityCode,
E.EVT_MRC AS MaintenanceDepartment,
B.BOO_PERSON AS UpdatedBy,
E.EVT_TARGET AS TargetCompletionDate,
E.EVT_OBJECT AS AssetCode,
B.BOO_HOURS AS ActualLaborHours
FROM R5EVENTS E
JOIN R5BOOKEDHOURS B ON E.EVT_CODE = B.BOO_EVENT
UNION ALL
/* 9. Checklist Item Verified */
SELECT
E.EVT_CODE AS WorkOrderNumber,
'Checklist Item Verified' AS ActivityName,
C.CKV_DATE AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
E.EVT_TYPE AS WorkOrderType,
E.EVT_PRIORITY AS PriorityCode,
E.EVT_MRC AS MaintenanceDepartment,
C.CKV_ENTEREDBY AS UpdatedBy,
E.EVT_TARGET AS TargetCompletionDate,
E.EVT_OBJECT AS AssetCode,
NULL AS ActualLaborHours
FROM R5EVENTS E
JOIN R5CHECKLISTVALUES C ON E.EVT_CODE = C.CKV_EVENT
WHERE C.CKV_COMPLETED = '+' -- Assuming '+' indicates checked/complete
UNION ALL
/* 10. Work Order Completed */
SELECT
E.EVT_CODE AS WorkOrderNumber,
'Work Order Completed' AS ActivityName,
S.STA_DATE AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
E.EVT_TYPE AS WorkOrderType,
E.EVT_PRIORITY AS PriorityCode,
E.EVT_MRC AS MaintenanceDepartment,
S.STA_UPDATEUSER AS UpdatedBy,
E.EVT_TARGET AS TargetCompletionDate,
E.EVT_OBJECT AS AssetCode,
NULL AS ActualLaborHours
FROM R5EVENTS E
JOIN R5STATUS S ON E.EVT_CODE = S.STA_EVENT
WHERE S.STA_STATUS = 'COMP' -- Replace with your Completed status code
UNION ALL
/* 11. Quality Control Passed */
SELECT
E.EVT_CODE AS WorkOrderNumber,
'Quality Control Passed' AS ActivityName,
S.STA_DATE AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
E.EVT_TYPE AS WorkOrderType,
E.EVT_PRIORITY AS PriorityCode,
E.EVT_MRC AS MaintenanceDepartment,
S.STA_UPDATEUSER AS UpdatedBy,
E.EVT_TARGET AS TargetCompletionDate,
E.EVT_OBJECT AS AssetCode,
NULL AS ActualLaborHours
FROM R5EVENTS E
JOIN R5STATUS S ON E.EVT_CODE = S.STA_EVENT
WHERE S.STA_STATUS = 'QC' -- Replace with your QC Passed status code
UNION ALL
/* 12. Work Order Signed Off */
SELECT
E.EVT_CODE AS WorkOrderNumber,
'Work Order Signed Off' AS ActivityName,
S.STA_DATE AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
E.EVT_TYPE AS WorkOrderType,
E.EVT_PRIORITY AS PriorityCode,
E.EVT_MRC AS MaintenanceDepartment,
S.STA_UPDATEUSER AS UpdatedBy,
E.EVT_TARGET AS TargetCompletionDate,
E.EVT_OBJECT AS AssetCode,
NULL AS ActualLaborHours
FROM R5EVENTS E
JOIN R5STATUS S ON E.EVT_CODE = S.STA_EVENT
WHERE S.STA_STATUS = 'SIGNOFF' -- Replace with your Sign Off status code
UNION ALL
/* 13. Work Order Closed */
SELECT
E.EVT_CODE AS WorkOrderNumber,
'Work Order Closed' AS ActivityName,
S.STA_DATE AS EventTimestamp,
'Hexagon EAM' AS SourceSystem,
GETDATE() AS LastDataUpdate,
E.EVT_TYPE AS WorkOrderType,
E.EVT_PRIORITY AS PriorityCode,
E.EVT_MRC AS MaintenanceDepartment,
S.STA_UPDATEUSER AS UpdatedBy,
E.EVT_TARGET AS TargetCompletionDate,
E.EVT_OBJECT AS AssetCode,
NULL AS ActualLaborHours
FROM R5EVENTS E
JOIN R5STATUS S ON E.EVT_CODE = S.STA_EVENT
WHERE S.STA_STATUS = 'CLOS' -- Replace with your Closed status code Lépések
- Ellenőrizze, hogy a Hexagon EAM Databridge Outbound telepítve van-e, rendelkezik-e licenccel, és jogosult-e az adatkinyeréshez szükséges karbantartási munkalapadatok kezelésére. Ellenőrizze a kimenő tranzakció beállításait, a célhelyet, az ütemezési lehetőségeket, valamint a forrástáblákhoz vagy nézetekhez való hozzáférést. A megfelelő adminisztrációs menüútvonalhoz használja a [Configure based on your system] helyőrzőt, mert a menünevek és tranzakcióazonosítók EAM-verziónként eltérnek.
- Azonosítsa a munkalapfejlécek, az állapotelőzmények, a prioritáselőzmények, az anyagigénylések, az anyagkiadások, a munkaidő-tranzakciók, az ellenőrzőlista- vagy vizsgálati eredmények, az ütemezési hozzárendelések, a minőségügyi jóváhagyások, az aláírási adatok és a lezárási adatok hiteles Hexagon EAM-tábláit vagy nézeteit. A lekérdezésben minden [Your ... table name] helyőrzőt cseréljen le a környezetében használt megfelelő objektum nevére. Ne feltételezze, hogy az aktuális munkalapfejléc tartalmazza az előzményeket is.
- Állítsa be a Databridge Outbound szolgáltatást úgy, hogy minden releváns munkalapváltozás rögzítésekor XML- vagy CSV-tranzakciót tegyen közzé. Az adat tartalmazza a munkalap számát, az esemény típusát és időbélyegét, a forrásfelhasználót, a prioritást, a munkalap típusát, az osztályt, a tervezett befejezési dátumot, az eszközt, a tényleges munkaórákat, valamint az adatok frissítésének vagy kinyerésének időbélyegét. Ha az állapot-, munkaidő-, anyag-, ellenőrzőlista-, ütemezési, minőségügyi, aláírási vagy lezárási események forrástranzakcióinak szerkezete eltér, külön kimenő hozzárendeléseket állítson be.
- Állítsa be a kimenő adatot úgy, hogy minden üzleti esemény külön eseményrekordként jelenjen meg. Ne csak a munkalap legutóbbi állapotát küldje el. Ismétlődő munkaidő-bejegyzések, anyagkiadások, ellenőrzőlista-elemek, prioritásváltozások és más ismétlődő események esetén minden előfordulásról külön rekordot küldjön. A Databridge eseménytípusát rendelje hozzá a 13 szükséges ActivityName érték egyikéhez.
- Töltse be a Databridge XML- vagy CSV-kimenetét egy ellenőrzött átmeneti tárhelyre, majd töltse be a lekérdezésben hivatkozott adatbázis-objektumokba, vagy cserélje le a lekérdezés forrásobjektumait az átmeneti táblákra. Őrizze meg az eredeti eseményazonosítót, a munkalap számát, az esemény időbélyegét, a forrásfelhasználót és a LastDataUpdate értékét. XML esetén a tevékenységek hozzárendelése előtt alakítsa a többször előforduló eseménycsomópontokat sorokká. CSV esetén ellenőrizze az elválasztókat, az idézőjeleket, a kódolást és az időbélyegformátumokat.
- Cserélje le a lekérdezésben a kapcsolatfüggő objektumokra, dátumparaméterekre és vállalati szűrőkre vonatkozó helyőrzőket. A lekérdezés minden tevékenységhez normalizált eseményforrást használ, majd UNION ALL művelettel egyesíti az eredményeket. Ellenőrizze, hogy az egyes blokkokban használt forrásoszlopok adattípusai kompatibilisek-e. Ha egy forrás nem tartalmaz egy ajánlott attribútumot, adjon vissza NULL értéket, ne találjon ki adatot.
- Futtassa le a lekérdezést egy kezdeti, körülbelül három–hat hónapos időszakra. Ellenőrizze, hogy az eredmény tartalmazza-e a szükséges WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem és LastDataUpdate oszlopokat, valamint az elérhető ajánlott attribútumokat. Rendezze az eredményt WorkOrderNumber, EventTimestamp és ActivityName szerint, de tartsa meg a különálló forráseseményekhez tartozó ismétlődő sorokat.
- Egyeztesse a kinyert sorokat a Databridge-kézbesítések és a forrástranzakciók számával, valamint a Hexagon EAM-ben szereplő munkalapok mintájával. Vizsgálja meg a hiányzó állapotelőzményeket, a többször kézbesített adatokat, az érvénytelen időbélyegeket és a kiválasztott dátumtartományon kívüli eseményeket. Csak akkor alkalmazzon következetes duplikátumszűrést, ha ugyanazt a forráseseményt többször kézbesítették.
- Exportálja a végleges eredményt UTF-8 kódolású CSV-fájlba vagy más, ProcessMind által támogatott eseménynapló-formátumba. Minden sor egy eseményt tartalmazzon, az időbélyegek formátuma legyen egységes, az időzóna kezelése pedig következetes. A WorkOrderNumber mezőt rendelje az esetazonosítóhoz, az ActivityName mezőt a tevékenységhez, az EventTimestamp mezőt pedig az esemény időbélyegéhez. Töltse fel a fájlt a ProcessMindbe, és ellenőrizze, hogy mind a 13 tevékenységnév elérhető-e a folyamatmodellben.
Konfiguráció
- Állítsa be a Hexagon EAM Databridge Outbound szolgáltatást eseményszintű XML- vagy CSV-adatküldésre. A tranzakciók, adminisztrációs képernyők és menük pontos neve a telepített Hexagon EAM-verziótól függ, ezért verzióspecifikus útvonal feltételezése helyett használja a [Configure based on your system] helyőrzőt.
- A WorkOrderNumber mezőt állítsa be ProcessMind-esetazonosítóként, az ActivityName mezőt tevékenységmezőként, az EventTimestamp mezőt pedig esemény-időbélyegként. A SourceSystem értéke legyen Hexagon EAM, a LastDataUpdate pedig az adatkinyerés vagy -frissítés időpontját jelezze.
- Állítson be kimenő hozzárendeléseket mind a 13 tevékenységhez: Work Order Created, Priority Updated, Work Order Approved, Material Requisition Created, Work Order Scheduled, Work Order Started, Material Issued, Labor Hours Recorded, Checklist Item Verified, Work Order Completed, Quality Control Passed, Work Order Signed Off és Work Order Closed.
- Őrizze meg az előzményeket. Az aktuális állapotmező önmagában nem alkalmas az összes állapotváltozás, prioritásmódosítás, munkaidő-bejegyzés, anyagkiadás, ellenőrzőlista-ellenőrzés, jóváhagyás vagy aláírás rekonstruálására.
- Az első adatkinyeréshez három–hat hónapos dátumtartományt használjon. Növekményes betöltésnél a Databridge-kézbesítés vagy a LastDataUpdate időbélyege alapján határozza meg a feldolgozás kezdőpontját, és hagyjon kisebb átfedést a késve érkező tranzakciók miatt.
- Csak akkor szűrjön vállalat, telephely, szervezet, munkalaptípus, osztály vagy állapot szerint, ha ezt az elemzés megköveteli. A szervezetspecifikus korlátozásokhoz használja a [Your company filter] vagy a [Configure based on your system] helyőrzőt.
- Ha az elemzés a teljes életciklust vizsgálja, a lezárt munkalapokat is vegye fel. A nyitott munkalapokra szűrés kihagyja a befejezési, minőségellenőrzési, aláírási és lezárási tevékenységeket.
- Állítsa be egyértelműen az időzóna kezelését. A ProcessMindbe való feltöltés előtt alakítsa az összes forrás-időbélyeget egy közösen elfogadott időzónára, és ha lehetséges, őrizze meg az eredeti időzónát vagy eltolást is.
- Nagy adatmennyiségnél szűrje az adatokat a forrásnál, korlátozza az adatkinyerési időszakot, indexelje vagy particionálja az esemény időbélyegét és a munkalap számát, a Databridge-fájlokat pedig az átalakítás előtt töltse átmeneti tárhelyre. Ne dolgozza fel újra és újra a teljes előzményeket tartalmazó XML-adatot.
- Előfeltétel a Databridge Outbound elérhetősége, a releváns EAM-adatok olvasására vonatkozó jogosultság, a kimeneti célhelyhez vagy az átmeneti adatbázishoz való hozzáférés, valamint a munkalap-, állapot-, anyag-, munkaidő-, ellenőrzőlista-, ütemezési, jóváhagyási, minőségügyi, aláírási és lezárási adatok elérhetősége.
- Ha egy szükséges üzleti esemény nem érhető el natív Databridge-tranzakcióként, állítson be olyan forrásnézetet vagy átmeneti átalakítást, amely külön eseménysort hoz létre. A ProcessMind nem következteti ki a hiányzó tevékenységeket más sorokból.
Példa-lekérdezés sql
WITH
created_events AS (
SELECT
CAST(c.[WorkOrderNumber] AS VARCHAR(100)) AS WorkOrderNumber,
CAST('Work Order Created' AS VARCHAR(100)) AS ActivityName,
CAST(c.[CreatedTimestamp] AS TIMESTAMP) AS EventTimestamp,
CAST('Hexagon EAM' AS VARCHAR(100)) AS SourceSystem,
CAST(c.[LastDataUpdate] AS TIMESTAMP) AS LastDataUpdate,
CAST(c.[WorkOrderType] AS VARCHAR(100)) AS WorkOrderType,
CAST(c.[PriorityCode] AS VARCHAR(100)) AS PriorityCode,
CAST(c.[MaintenanceDepartment] AS VARCHAR(100)) AS MaintenanceDepartment,
CAST(c.[CreatedBy] AS VARCHAR(100)) AS UpdatedBy,
CAST(c.[TargetCompletionDate] AS TIMESTAMP) AS TargetCompletionDate,
CAST(c.[AssetCode] AS VARCHAR(100)) AS AssetCode,
CAST(c.[ActualLaborHours] AS DECIMAL(18,2)) AS ActualLaborHours
FROM [Your work order creation table or view] c
WHERE c.[CreatedTimestamp] >= CAST('[Start date parameter]' AS TIMESTAMP)
AND c.[CreatedTimestamp] < CAST('[End date parameter]' AS TIMESTAMP)
AND [Your company filter]
),
priority_events AS (
SELECT
CAST(p.[WorkOrderNumber] AS VARCHAR(100)) AS WorkOrderNumber,
CAST('Priority Updated' AS VARCHAR(100)) AS ActivityName,
CAST(p.[PriorityChangedTimestamp] AS TIMESTAMP) AS EventTimestamp,
CAST('Hexagon EAM' AS VARCHAR(100)) AS SourceSystem,
CAST(p.[LastDataUpdate] AS TIMESTAMP) AS LastDataUpdate,
CAST(w.[WorkOrderType] AS VARCHAR(100)) AS WorkOrderType,
CAST(p.[NewPriorityCode] AS VARCHAR(100)) AS PriorityCode,
CAST(w.[MaintenanceDepartment] AS VARCHAR(100)) AS MaintenanceDepartment,
CAST(p.[UpdatedBy] AS VARCHAR(100)) AS UpdatedBy,
CAST(w.[TargetCompletionDate] AS TIMESTAMP) AS TargetCompletionDate,
CAST(w.[AssetCode] AS VARCHAR(100)) AS AssetCode,
CAST(w.[ActualLaborHours] AS DECIMAL(18,2)) AS ActualLaborHours
FROM [Your priority history table or view] p
LEFT JOIN [Your work order current or history table or view] w ON w.[WorkOrderNumber] = p.[WorkOrderNumber]
WHERE p.[PriorityChangedTimestamp] >= CAST('[Start date parameter]' AS TIMESTAMP)
AND p.[PriorityChangedTimestamp] < CAST('[End date parameter]' AS TIMESTAMP)
AND [Your company filter]
),
approved_events AS (
SELECT
CAST(s.[WorkOrderNumber] AS VARCHAR(100)) AS WorkOrderNumber,
CAST('Work Order Approved' AS VARCHAR(100)) AS ActivityName,
CAST(s.[StatusChangedTimestamp] AS TIMESTAMP) AS EventTimestamp,
CAST('Hexagon EAM' AS VARCHAR(100)) AS SourceSystem,
CAST(s.[LastDataUpdate] AS TIMESTAMP) AS LastDataUpdate,
CAST(w.[WorkOrderType] AS VARCHAR(100)) AS WorkOrderType,
CAST(w.[PriorityCode] AS VARCHAR(100)) AS PriorityCode,
CAST(w.[MaintenanceDepartment] AS VARCHAR(100)) AS MaintenanceDepartment,
CAST(s.[UpdatedBy] AS VARCHAR(100)) AS UpdatedBy,
CAST(w.[TargetCompletionDate] AS TIMESTAMP) AS TargetCompletionDate,
CAST(w.[AssetCode] AS VARCHAR(100)) AS AssetCode,
CAST(w.[ActualLaborHours] AS DECIMAL(18,2)) AS ActualLaborHours
FROM [Your work order status history table or view] s
LEFT JOIN [Your work order current or history table or view] w ON w.[WorkOrderNumber] = s.[WorkOrderNumber]
WHERE s.[NewStatus] = '[Your approved status value]'
AND s.[StatusChangedTimestamp] >= CAST('[Start date parameter]' AS TIMESTAMP)
AND s.[StatusChangedTimestamp] < CAST('[End date parameter]' AS TIMESTAMP)
AND [Your company filter]
),
requisition_events AS (
SELECT
CAST(r.[WorkOrderNumber] AS VARCHAR(100)) AS WorkOrderNumber,
CAST('Material Requisition Created' AS VARCHAR(100)) AS ActivityName,
CAST(r.[RequisitionCreatedTimestamp] AS TIMESTAMP) AS EventTimestamp,
CAST('Hexagon EAM' AS VARCHAR(100)) AS SourceSystem,
CAST(r.[LastDataUpdate] AS TIMESTAMP) AS LastDataUpdate,
CAST(w.[WorkOrderType] AS VARCHAR(100)) AS WorkOrderType,
CAST(w.[PriorityCode] AS VARCHAR(100)) AS PriorityCode,
CAST(w.[MaintenanceDepartment] AS VARCHAR(100)) AS MaintenanceDepartment,
CAST(r.[CreatedBy] AS VARCHAR(100)) AS UpdatedBy,
CAST(w.[TargetCompletionDate] AS TIMESTAMP) AS TargetCompletionDate,
CAST(w.[AssetCode] AS VARCHAR(100)) AS AssetCode,
CAST(w.[ActualLaborHours] AS DECIMAL(18,2)) AS ActualLaborHours
FROM [Your material requisition table or view] r
LEFT JOIN [Your work order current or history table or view] w ON w.[WorkOrderNumber] = r.[WorkOrderNumber]
WHERE r.[RequisitionCreatedTimestamp] >= CAST('[Start date parameter]' AS TIMESTAMP)
AND r.[RequisitionCreatedTimestamp] < CAST('[End date parameter]' AS TIMESTAMP)
AND [Your company filter]
),
scheduled_events AS (
SELECT
CAST(a.[WorkOrderNumber] AS VARCHAR(100)) AS WorkOrderNumber,
CAST('Work Order Scheduled' AS VARCHAR(100)) AS ActivityName,
CAST(a.[ScheduledTimestamp] AS TIMESTAMP) AS EventTimestamp,
CAST('Hexagon EAM' AS VARCHAR(100)) AS SourceSystem,
CAST(a.[LastDataUpdate] AS TIMESTAMP) AS LastDataUpdate,
CAST(w.[WorkOrderType] AS VARCHAR(100)) AS WorkOrderType,
CAST(w.[PriorityCode] AS VARCHAR(100)) AS PriorityCode,
CAST(w.[MaintenanceDepartment] AS VARCHAR(100)) AS MaintenanceDepartment,
CAST(a.[UpdatedBy] AS VARCHAR(100)) AS UpdatedBy,
CAST(a.[ScheduledStartDate] AS TIMESTAMP) AS TargetCompletionDate,
CAST(w.[AssetCode] AS VARCHAR(100)) AS AssetCode,
CAST(w.[ActualLaborHours] AS DECIMAL(18,2)) AS ActualLaborHours
FROM [Your work order scheduling table or view] a
LEFT JOIN [Your work order current or history table or view] w ON w.[WorkOrderNumber] = a.[WorkOrderNumber]
WHERE a.[ScheduledTimestamp] >= CAST('[Start date parameter]' AS TIMESTAMP)
AND a.[ScheduledTimestamp] < CAST('[End date parameter]' AS TIMESTAMP)
AND [Your company filter]
),
started_events AS (
SELECT
CAST(s.[WorkOrderNumber] AS VARCHAR(100)) AS WorkOrderNumber,
CAST('Work Order Started' AS VARCHAR(100)) AS ActivityName,
CAST(s.[StatusChangedTimestamp] AS TIMESTAMP) AS EventTimestamp,
CAST('Hexagon EAM' AS VARCHAR(100)) AS SourceSystem,
CAST(s.[LastDataUpdate] AS TIMESTAMP) AS LastDataUpdate,
CAST(w.[WorkOrderType] AS VARCHAR(100)) AS WorkOrderType,
CAST(w.[PriorityCode] AS VARCHAR(100)) AS PriorityCode,
CAST(w.[MaintenanceDepartment] AS VARCHAR(100)) AS MaintenanceDepartment,
CAST(s.[UpdatedBy] AS VARCHAR(100)) AS UpdatedBy,
CAST(w.[TargetCompletionDate] AS TIMESTAMP) AS TargetCompletionDate,
CAST(w.[AssetCode] AS VARCHAR(100)) AS AssetCode,
CAST(w.[ActualLaborHours] AS DECIMAL(18,2)) AS ActualLaborHours
FROM [Your work order status history table or view] s
LEFT JOIN [Your work order current or history table or view] w ON w.[WorkOrderNumber] = s.[WorkOrderNumber]
WHERE s.[NewStatus] IN ('[Your in progress status value]', '[Your started status value]')
AND s.[StatusChangedTimestamp] >= CAST('[Start date parameter]' AS TIMESTAMP)
AND s.[StatusChangedTimestamp] < CAST('[End date parameter]' AS TIMESTAMP)
AND [Your company filter]
),
issued_events AS (
SELECT
CAST(i.[WorkOrderNumber] AS VARCHAR(100)) AS WorkOrderNumber,
CAST('Material Issued' AS VARCHAR(100)) AS ActivityName,
CAST(i.[IssueTimestamp] AS TIMESTAMP) AS EventTimestamp,
CAST('Hexagon EAM' AS VARCHAR(100)) AS SourceSystem,
CAST(i.[LastDataUpdate] AS TIMESTAMP) AS LastDataUpdate,
CAST(w.[WorkOrderType] AS VARCHAR(100)) AS WorkOrderType,
CAST(w.[PriorityCode] AS VARCHAR(100)) AS PriorityCode,
CAST(w.[MaintenanceDepartment] AS VARCHAR(100)) AS MaintenanceDepartment,
CAST(i.[IssuedBy] AS VARCHAR(100)) AS UpdatedBy,
CAST(w.[TargetCompletionDate] AS TIMESTAMP) AS TargetCompletionDate,
CAST(w.[AssetCode] AS VARCHAR(100)) AS AssetCode,
CAST(w.[ActualLaborHours] AS DECIMAL(18,2)) AS ActualLaborHours
FROM [Your material issue table or view] i
LEFT JOIN [Your work order current or history table or view] w ON w.[WorkOrderNumber] = i.[WorkOrderNumber]
WHERE i.[IssueTimestamp] >= CAST('[Start date parameter]' AS TIMESTAMP)
AND i.[IssueTimestamp] < CAST('[End date parameter]' AS TIMESTAMP)
AND [Your company filter]
),
labor_events AS (
SELECT
CAST(l.[WorkOrderNumber] AS VARCHAR(100)) AS WorkOrderNumber,
CAST('Labor Hours Recorded' AS VARCHAR(100)) AS ActivityName,
CAST(l.[LaborEntryTimestamp] AS TIMESTAMP) AS EventTimestamp,
CAST('Hexagon EAM' AS VARCHAR(100)) AS SourceSystem,
CAST(l.[LastDataUpdate] AS TIMESTAMP) AS LastDataUpdate,
CAST(w.[WorkOrderType] AS VARCHAR(100)) AS WorkOrderType,
CAST(w.[PriorityCode] AS VARCHAR(100)) AS PriorityCode,
CAST(w.[MaintenanceDepartment] AS VARCHAR(100)) AS MaintenanceDepartment,
CAST(l.[RecordedBy] AS VARCHAR(100)) AS UpdatedBy,
CAST(w.[TargetCompletionDate] AS TIMESTAMP) AS TargetCompletionDate,
CAST(w.[AssetCode] AS VARCHAR(100)) AS AssetCode,
CAST(l.[LaborHours] AS DECIMAL(18,2)) AS ActualLaborHours
FROM [Your labor transaction table or view] l
LEFT JOIN [Your work order current or history table or view] w ON w.[WorkOrderNumber] = l.[WorkOrderNumber]
WHERE l.[LaborEntryTimestamp] >= CAST('[Start date parameter]' AS TIMESTAMP)
AND l.[LaborEntryTimestamp] < CAST('[End date parameter]' AS TIMESTAMP)
AND [Your company filter]
),
checklist_events AS (
SELECT
CAST(k.[WorkOrderNumber] AS VARCHAR(100)) AS WorkOrderNumber,
CAST('Checklist Item Verified' AS VARCHAR(100)) AS ActivityName,
CAST(k.[VerifiedTimestamp] AS TIMESTAMP) AS EventTimestamp,
CAST('Hexagon EAM' AS VARCHAR(100)) AS SourceSystem,
CAST(k.[LastDataUpdate] AS TIMESTAMP) AS LastDataUpdate,
CAST(w.[WorkOrderType] AS VARCHAR(100)) AS WorkOrderType,
CAST(w.[PriorityCode] AS VARCHAR(100)) AS PriorityCode,
CAST(w.[MaintenanceDepartment] AS VARCHAR(100)) AS MaintenanceDepartment,
CAST(k.[VerifiedBy] AS VARCHAR(100)) AS UpdatedBy,
CAST(w.[TargetCompletionDate] AS TIMESTAMP) AS TargetCompletionDate,
CAST(w.[AssetCode] AS VARCHAR(100)) AS AssetCode,
CAST(w.[ActualLaborHours] AS DECIMAL(18,2)) AS ActualLaborHours
FROM [Your checklist verification table or view] k
LEFT JOIN [Your work order current or history table or view] w ON w.[WorkOrderNumber] = k.[WorkOrderNumber]
WHERE k.[VerifiedTimestamp] >= CAST('[Start date parameter]' AS TIMESTAMP)
AND k.[VerifiedTimestamp] < CAST('[End date parameter]' AS TIMESTAMP)
AND [Your company filter]
),
completed_events AS (
SELECT
CAST(s.[WorkOrderNumber] AS VARCHAR(100)) AS WorkOrderNumber,
CAST('Work Order Completed' AS VARCHAR(100)) AS ActivityName,
CAST(s.[StatusChangedTimestamp] AS TIMESTAMP) AS EventTimestamp,
CAST('Hexagon EAM' AS VARCHAR(100)) AS SourceSystem,
CAST(s.[LastDataUpdate] AS TIMESTAMP) AS LastDataUpdate,
CAST(w.[WorkOrderType] AS VARCHAR(100)) AS WorkOrderType,
CAST(w.[PriorityCode] AS VARCHAR(100)) AS PriorityCode,
CAST(w.[MaintenanceDepartment] AS VARCHAR(100)) AS MaintenanceDepartment,
CAST(s.[UpdatedBy] AS VARCHAR(100)) AS UpdatedBy,
CAST(w.[TargetCompletionDate] AS TIMESTAMP) AS TargetCompletionDate,
CAST(w.[AssetCode] AS VARCHAR(100)) AS AssetCode,
CAST(w.[ActualLaborHours] AS DECIMAL(18,2)) AS ActualLaborHours
FROM [Your work order status history table or view] s
LEFT JOIN [Your work order current or history table or view] w ON w.[WorkOrderNumber] = s.[WorkOrderNumber]
WHERE s.[NewStatus] = '[Your completed status value]'
AND s.[StatusChangedTimestamp] >= CAST('[Start date parameter]' AS TIMESTAMP)
AND s.[StatusChangedTimestamp] < CAST('[End date parameter]' AS TIMESTAMP)
AND [Your company filter]
),
quality_events AS (
SELECT
CAST(q.[WorkOrderNumber] AS VARCHAR(100)) AS WorkOrderNumber,
CAST('Quality Control Passed' AS VARCHAR(100)) AS ActivityName,
CAST(q.[QualityApprovalTimestamp] AS TIMESTAMP) AS EventTimestamp,
CAST('Hexagon EAM' AS VARCHAR(100)) AS SourceSystem,
CAST(q.[LastDataUpdate] AS TIMESTAMP) AS LastDataUpdate,
CAST(w.[WorkOrderType] AS VARCHAR(100)) AS WorkOrderType,
CAST(w.[PriorityCode] AS VARCHAR(100)) AS PriorityCode,
CAST(w.[MaintenanceDepartment] AS VARCHAR(100)) AS MaintenanceDepartment,
CAST(q.[ApprovedBy] AS VARCHAR(100)) AS UpdatedBy,
CAST(w.[TargetCompletionDate] AS TIMESTAMP) AS TargetCompletionDate,
CAST(w.[AssetCode] AS VARCHAR(100)) AS AssetCode,
CAST(w.[ActualLaborHours] AS DECIMAL(18,2)) AS ActualLaborHours
FROM [Your quality approval table or view] q
LEFT JOIN [Your work order current or history table or view] w ON w.[WorkOrderNumber] = q.[WorkOrderNumber]
WHERE q.[QualityResult] = '[Your quality passed value]'
AND q.[QualityApprovalTimestamp] >= CAST('[Start date parameter]' AS TIMESTAMP)
AND q.[QualityApprovalTimestamp] < CAST('[End date parameter]' AS TIMESTAMP)
AND [Your company filter]
),
signoff_events AS (
SELECT
CAST(f.[WorkOrderNumber] AS VARCHAR(100)) AS WorkOrderNumber,
CAST('Work Order Signed Off' AS VARCHAR(100)) AS ActivityName,
CAST(f.[SignOffTimestamp] AS TIMESTAMP) AS EventTimestamp,
CAST('Hexagon EAM' AS VARCHAR(100)) AS SourceSystem,
CAST(f.[LastDataUpdate] AS TIMESTAMP) AS LastDataUpdate,
CAST(w.[WorkOrderType] AS VARCHAR(100)) AS WorkOrderType,
CAST(w.[PriorityCode] AS VARCHAR(100)) AS PriorityCode,
CAST(w.[MaintenanceDepartment] AS VARCHAR(100)) AS MaintenanceDepartment,
CAST(f.[SignedOffBy] AS VARCHAR(100)) AS UpdatedBy,
CAST(w.[TargetCompletionDate] AS TIMESTAMP) AS TargetCompletionDate,
CAST(w.[AssetCode] AS VARCHAR(100)) AS AssetCode,
CAST(w.[ActualLaborHours] AS DECIMAL(18,2)) AS ActualLaborHours
FROM [Your work order sign-off table or view] f
LEFT JOIN [Your work order current or history table or view] w ON w.[WorkOrderNumber] = f.[WorkOrderNumber]
WHERE f.[SignOffTimestamp] >= CAST('[Start date parameter]' AS TIMESTAMP)
AND f.[SignOffTimestamp] < CAST('[End date parameter]' AS TIMESTAMP)
AND [Your company filter]
),
closed_events AS (
SELECT
CAST(s.[WorkOrderNumber] AS VARCHAR(100)) AS WorkOrderNumber,
CAST('Work Order Closed' AS VARCHAR(100)) AS ActivityName,
CAST(s.[StatusChangedTimestamp] AS TIMESTAMP) AS EventTimestamp,
CAST('Hexagon EAM' AS VARCHAR(100)) AS SourceSystem,
CAST(s.[LastDataUpdate] AS TIMESTAMP) AS LastDataUpdate,
CAST(w.[WorkOrderType] AS VARCHAR(100)) AS WorkOrderType,
CAST(w.[PriorityCode] AS VARCHAR(100)) AS PriorityCode,
CAST(w.[MaintenanceDepartment] AS VARCHAR(100)) AS MaintenanceDepartment,
CAST(s.[UpdatedBy] AS VARCHAR(100)) AS UpdatedBy,
CAST(w.[TargetCompletionDate] AS TIMESTAMP) AS TargetCompletionDate,
CAST(w.[AssetCode] AS VARCHAR(100)) AS AssetCode,
CAST(w.[ActualLaborHours] AS DECIMAL(18,2)) AS ActualLaborHours
FROM [Your work order status history table or view] s
LEFT JOIN [Your work order current or history table or view] w ON w.[WorkOrderNumber] = s.[WorkOrderNumber]
WHERE s.[NewStatus] = '[Your closed status value]'
AND s.[StatusChangedTimestamp] >= CAST('[Start date parameter]' AS TIMESTAMP)
AND s.[StatusChangedTimestamp] < CAST('[End date parameter]' AS TIMESTAMP)
AND [Your company filter]
)
SELECT WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem, LastDataUpdate, WorkOrderType, PriorityCode, MaintenanceDepartment, UpdatedBy, TargetCompletionDate, AssetCode, ActualLaborHours FROM created_events
UNION ALL
SELECT WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem, LastDataUpdate, WorkOrderType, PriorityCode, MaintenanceDepartment, UpdatedBy, TargetCompletionDate, AssetCode, ActualLaborHours FROM priority_events
UNION ALL
SELECT WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem, LastDataUpdate, WorkOrderType, PriorityCode, MaintenanceDepartment, UpdatedBy, TargetCompletionDate, AssetCode, ActualLaborHours FROM approved_events
UNION ALL
SELECT WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem, LastDataUpdate, WorkOrderType, PriorityCode, MaintenanceDepartment, UpdatedBy, TargetCompletionDate, AssetCode, ActualLaborHours FROM requisition_events
UNION ALL
SELECT WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem, LastDataUpdate, WorkOrderType, PriorityCode, MaintenanceDepartment, UpdatedBy, TargetCompletionDate, AssetCode, ActualLaborHours FROM scheduled_events
UNION ALL
SELECT WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem, LastDataUpdate, WorkOrderType, PriorityCode, MaintenanceDepartment, UpdatedBy, TargetCompletionDate, AssetCode, ActualLaborHours FROM started_events
UNION ALL
SELECT WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem, LastDataUpdate, WorkOrderType, PriorityCode, MaintenanceDepartment, UpdatedBy, TargetCompletionDate, AssetCode, ActualLaborHours FROM issued_events
UNION ALL
SELECT WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem, LastDataUpdate, WorkOrderType, PriorityCode, MaintenanceDepartment, UpdatedBy, TargetCompletionDate, AssetCode, ActualLaborHours FROM labor_events
UNION ALL
SELECT WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem, LastDataUpdate, WorkOrderType, PriorityCode, MaintenanceDepartment, UpdatedBy, TargetCompletionDate, AssetCode, ActualLaborHours FROM checklist_events
UNION ALL
SELECT WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem, LastDataUpdate, WorkOrderType, PriorityCode, MaintenanceDepartment, UpdatedBy, TargetCompletionDate, AssetCode, ActualLaborHours FROM completed_events
UNION ALL
SELECT WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem, LastDataUpdate, WorkOrderType, PriorityCode, MaintenanceDepartment, UpdatedBy, TargetCompletionDate, AssetCode, ActualLaborHours FROM quality_events
UNION ALL
SELECT WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem, LastDataUpdate, WorkOrderType, PriorityCode, MaintenanceDepartment, UpdatedBy, TargetCompletionDate, AssetCode, ActualLaborHours FROM signoff_events
UNION ALL
SELECT WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem, LastDataUpdate, WorkOrderType, PriorityCode, MaintenanceDepartment, UpdatedBy, TargetCompletionDate, AssetCode, ActualLaborHours FROM closed_events
ORDER BY WorkOrderNumber, EventTimestamp, ActivityName; Kezdheti?
Alakítsa karbantartási adatait hasznosítható elemzésekké a sablon segítségével. Csapatunk a technikai kérdésekben is segít az adatok előkészítése során.
Csökkentse a karbantartás késéseit, és javítsa a teljesítményt
Csökkentse 30 százalékkal a ciklusidőt, és szüntesse meg a rejtett szűk keresztmetszeteket.
Nincs szükség bankkártyára. A beállítás néhány percet vesz igénybe.