Varlık bakımı Veri Template iniz
Varlık bakımı Veri Template iniz
- Bakım günlükleri için gerekli veri alanları
- Standart süreç kilometre taşları ve iş emri aşamaları
- Hexagon EAM için teknik veri çıkarma mantığı
Varlık Bakımı Öznitelikleri
| Ad | Açıklama | ||
|---|---|---|---|
| Bakım iş emri WorkOrderNumber | Bakım iş emrinin benzersiz tanımlayıcısıdır. | ||
| Açıklama Bu öznitelik, bakım vakasının benzersiz birincil anahtarını temsil eder. İş emrini ilk talepten planlama, uygulama ve nihai finansal kapanışa kadar izler. Faaliyet günlüklerini, işçilik saatlerini ve malzeme tüketimini birleştirmek için merkezi vaka tanımlayıcısı olarak kullanılır. Neden önemli? Bakım sürecinin belirli örneğini tanımlar ve çevrim süreleriyle süreç varyantlarının uçtan uca izlenmesini sağlar. Nereden alınır? Hexagon EAM R5EVENTS tablosu, EVT_CODE alanı Örnekler WO-100234WO-100235WO-100236104592 | |||
| Faaliyet ActivityName | Gerçekleşen belirli görev veya durum değişikliği olayıdır. | ||
| Açıklama Bu öznitelik, 'Work Order Created' veya 'Material Issued' gibi gerçekleştirilen süreç adımını belirtir. İş emrine kaydedilen durum değişiklikleri geçmişinden veya belirli işlem olaylarından türetilir. Neden önemli? Event Log sırasını tanımlar ve süreç akışının yeniden oluşturulmasını ve darboğaz analizini sağlar. Nereden alınır? Hexagon EAM R5EVENTHISTORY tablosu, EVH_STATUS alanı, açıklamalara eşlenir, veya denetim günlükleri Örnekler İş emri oluşturulduİş emri planlandıİş emri tamamlandıMalzeme verildi | |||
| Kaynak sistem SourceSystem | Verilerin geldiği sistemin adıdır. | ||
| Açıklama Bu öznitelik, veriler için kayıt sistemini belirtir. Bu bağlamda, olası eski verilerden veya dış yüklenici sistemlerinden ayırt etmek için belirli EAM sisteminin adına sabitlenmiştir. Neden önemli? Özellikle birden fazla bakım örneğinden gelen veriler birleştirilirken veri soyunun açık olmasını sağlar. Nereden alınır? Sabit değer Örnekler Hexagon EAMInfor EAMDatastream 7i | |||
| Son veri güncellemesi LastDataUpdate | Kaydın en son çıkarıldığı veya yenilendiği zaman damgasıdır. | ||
| Açıklama Bu öznitelik, verilerin kaynak sistemden en son ne zaman alındığını izler. Analistlerin verilerin güncelliğini anlamasına ve raporlama hattındaki olası gecikme sorunlarını belirlemesine yardımcı olur. Neden önemli? Analizin güncelliğine güven sağlar ve veri senkronizasyonu sorunlarının hata ayıklamasına yardımcı olur. Nereden alınır? Çıkarma sırasındaki sistem zamanı Örnekler 2023-10-25T12:00:00Z2023-10-26T00:00:00Z | |||
| Zaman damgası EventTimestamp | Faaliyetin gerçekleştiği tarih ve saattir. | ||
| Açıklama Bu öznitelik, bir olayın veya durum değişikliğinin sisteme kaydedildiği kesin anı kaydeder. Faaliyetler arasındaki süreyi ve iş emrinin genel çevrim süresini hesaplamanızı sağlar. Neden önemli? Doğru zaman damgaları, çevrim sürelerini analiz etmek, gecikmeleri belirlemek ve SLA uyumluluğunu hesaplamak için gereklidir. Nereden alınır? Hexagon EAM R5EVENTHISTORY tablosu, EVH_DATE alanı Örnekler 2023-10-12T08:30:00Z2023-10-12T14:15:00Z2023-10-13T09:00:00Z | |||
| Departman MaintenanceDepartment | Çalışmayı gerçekleştirmekten sorumlu departman veya iş merkezidir. | ||
| Açıklama Bu öznitelik, iş emrine atanan ekibi veya bakım atölyesini, örneğin Elektrik, Mekanik veya Tesis Yönetimi, tanımlar. Farklı teknik ekipler arasında performans karşılaştırması yapmanızı sağlar. Neden önemli? Teknisyen iş gücü verimliliği Dashboardunu destekler ve kaynakların farklı uzmanlık alanları arasında etkili biçimde dağıtılmasına yardımcı olur. Nereden alınır? Hexagon EAM R5EVENTS tablosu, EVT_MRC alanı Örnekler Elektrik atölyesiMekanik bakımTesislerFilo hizmetleri | |||
| Gerçekleşen işçilik saatleri ActualLaborHours | İş emrine kaydedilen toplam saat sayısı. | ||
| Açıklama Bu öznitelik, teknisyenlerin iş emrine kaydettiği süreleri toplar. Verimliliği ölçmek, işçilik maliyetlerini hesaplamak ve tahmini saatlerle gerçekleşen saatler arasındaki farkı analiz etmek için kullanılır. Neden önemli? Teknisyen iş gücü verimliliği Dashboardu ve iş gücü saati sapması KPI için temel veri kaynağıdır. Nereden alınır? Hexagon EAM R5BOOKEDHOURS tablosu, BOO_HOURS alanı, İş Emri bazında toplanır Örnekler 2.54.012.00.5 | |||
| Hedef tamamlanma tarihi TargetCompletionDate | İş emri için planlanan son tarih. | ||
| Açıklama Bu öznitelik, bakım işinin tamamlanmasının beklendiği tarihi gösterir. Bu tarihi gerçek tamamlanma tarihiyle karşılaştırmak, SLA uyumluluğunu ve zamanında tamamlanma performansını hesaplamak için temel oluşturur. Neden önemli? Yüklenici SLA Uyumluluğu İzleyicisi ve planlama doğruluğunu değerlendirmek için önemlidir. Nereden alınır? Hexagon EAM R5EVENTS tablosu, EVT_TARGET alanı Örnekler 2023-11-012023-11-152023-12-01 | |||
| İş emri türü WorkOrderType | İş emrini önleyici, düzeltici veya acil olarak sınıflandırır. | ||
| Açıklama Bu öznitelik, bakım çalışmasının niteliğini sınıflandırır. Varlık sağlığının ve yönetim olgunluğunun önemli bir göstergesi olan planlı önleyici bakım ile reaktif acil onarımlar arasındaki oranı analiz etmek için kullanılır. Neden önemli? Önleyici bakım oranı analizi Dashboardunu destekler ve reaktif işleri azaltma fırsatlarını belirlemeye yardımcı olur. Nereden alınır? Hexagon EAM R5EVENTS tablosu, EVT_TYPE alanı Örnekler PPMCOREMGPRJ | |||
| Kullanıcı UpdatedBy | Etkinliği gerçekleştiren kişinin kullanıcı kimliği. | ||
| Açıklama Bu öznitelik, durum değişikliğini veya güncellemesini tetikleyen kişinin giriş kimliğini içerir. Ekip iş yükünü analiz etmek, eğitim ihtiyaçlarını belirlemek ve süreç uyumluluğunu denetlemek için kullanılır. Neden önemli? Bakım yaşam döngüsü boyunca kullanıcı davranışını ve kaynak kullanımını analiz etmenizi sağlar. Nereden alınır? Hexagon EAM R5EVENTHISTORY tablosu, EVH_USER alanı Örnekler JSMITHADAVISSYSTEMMGR_USR | |||
| Öncelik PriorityCode | İş emrine atanan aciliyet seviyesidir. | ||
| Açıklama Bu öznitelik, iş emrinin rutin ile acil arasındaki önem düzeyini belirtir. Kaynakların planlanmasını yönlendirir, SLA uyumluluğunu izlemek ve önceliğin kötüye kullanımını tespit etmek için büyük önem taşır. Neden önemli? Kritik görevlerin doğru biçimde önceliklendirilmesini sağlamak için Öncelik Kademelendirme ve Kaynak Denetimi Dashboardu açısından gereklidir. Nereden alınır? Hexagon EAM R5EVENTS tablosu, EVT_PRIORITY alanı Örnekler KritikYüksekOrtaDüşük | |||
| Varlık AssetCode | Bakımı yapılan ekipman veya tesisin benzersiz tanımlayıcısı. | ||
| Açıklama Bu öznitelik, iş emrini belirli bir ekipmana veya konuma bağlar. Varlık bazında arıza sıklığını analiz etmenizi ve sık sorun çıkaran ya da değiştirilmesi gereken ekipmanları belirlemenizi sağlar. Neden önemli? Varlık güvenilirliği metriklerini hesaplamak ve bakım çalışmalarının nerede yoğunlaştığını anlamak için temel oluşturur. Nereden alınır? Hexagon EAM R5EVENTS tablosu, EVT_OBJECT alanı Örnekler PUMP-001HVAC-204FLEET-99CONVEYOR-A | |||
| Acil durum eskalasyonu EmergencyEscalationFlag | Oluşturulduktan sonra önceliğin Acil durum seviyesine yükseltilip yükseltilmediğini gösteren işaret. | ||
| Açıklama Bu boolean öznitelik, daha düşük öncelikle başlayan ancak daha sonra Acil durum seviyesine yükseltilen iş emirlerini belirler. Sık görülmesi, ilk değerlendirmede sorunlara veya daha hızlı hizmet almak için sistemin kötüye kullanılmasına işaret edebilir. Neden önemli? Öncelik Kademelendirme ve Kaynak Denetimi Dashboardunu ve acil durum kademelendirme oranı KPI değerini destekler. Nereden alınır? Priority alanının denetim izinden türetilir Örnekler truefalse | |||
| İş emri açıklaması WorkOrderDescription | Bakım görevinin kısa metin özeti. | ||
| Açıklama Bu öznitelik, sorunun konu satırını veya kısa açıklamasını içerir. Belirli sorunlu vakaları incelerken ya da yapılandırılmamış metindeki örüntüleri belirlerken analistlere bağlam sağlar. Neden önemli? Süreç verilerinin insan tarafından incelenmesi için gerekli bağlamı sağlar. Nereden alınır? Hexagon EAM R5EVENTS tablosu, EVT_DESC alanı Örnekler Sızıntı yapan pompa contasını onarınAylık HVAC denetimiKonveyör bandını değiştirin | |||
| Kalite kontrolünden geçti QualityControlPassed | Kalite kontrol adımının belgelendiğini gösteren işaret. | ||
| Açıklama Bu boolean öznitelik, belirli bir kalite kontrol etkinliğinin veya kontrol listesi maddesinin tamamlandı olarak işaretlenip işaretlenmediğini kontrol eder. Güvenlik düzenlemelerine ve kurum içi standartlara uyumluluğu sağlar. Neden önemli? Kalite kontrol uyumluluk oranı KPI değerini besler ve uyumluluk ile dokümantasyon bütünlüğü Dashboardunu destekler. Nereden alınır? Kontrol listesi tablolarından veya Etkinlik Geçmişinden türetilir Örnekler truefalse | |||
| Malzeme talep tarihi MaterialRequisitionDate | Yedek parçaların talep edildiği tarih. | ||
| Açıklama Bu öznitelik, malzeme talebinin depoya veya satın alma birimine gönderildiği zaman damgasını içerir. Bu tarihten Malzeme Verildi etkinliğine kadar geçen süreyi analiz ederek tedarik zinciri verimliliğini görebilirsiniz. Neden önemli? Yedek parça tedarik teslim süreleri Dashboardu için gereklidir. Nereden alınır? Hexagon EAM R5REQUISITIONS tablosu veya bağlantılı işlem tablosu Örnekler 2023-10-012023-10-05 | |||
| Oluşturulma tarihi DateCreated | İş emrinin ilk oluşturulduğu tarih. | ||
| Açıklama Bu öznitelik, iş emri yaşam döngüsünün başlangıcını gösterir. Planlama için Ortalama Süreyi hesaplamanın ve birikmiş iş kalemlerinin yaşını belirlemenin temelidir. Neden önemli? Bakım planlama hızı Dashboardu ve birikmiş iş yaşı KPI için gereklidir. Nereden alınır? Hexagon EAM R5EVENTS tablosu, EVT_CREATED alanı Örnekler 2023-09-012023-09-15 | |||
| Önleyici bakım mı IsPreventive | İş emrinin önleyici bakım olup olmadığını gösteren işaret. | ||
| Açıklama Bu boolean öznitelik, iş emirlerini kolayca filtrelemenizi ve kategorilere ayırmanızı sağlar. Proaktif çalışmaları reaktif onarımlardan ayırarak Önleyici Bakım Oranı KPI'ının hesaplanmasını kolaylaştırır. Neden önemli? Önleyici bakım oranı analizi Dashboardu için temel bir segmentasyondur. Nereden alınır? WorkOrderType değerinden türetilir Örnekler truefalse | |||
| SLA durumu SLAState | İş emrinin hizmet seviyesi anlaşmasına uyup uymadığını gösterir. | ||
| Açıklama Bu hesaplanan öznitelik, Gerçekleşen Tamamlanma Tarihi ile Hedef Tamamlanma Tarihini karşılaştırır. Yüklenici ve kurum içi performans raporlamasını kolaylaştırmak için vakayı SLA içinde veya ihlal edildi olarak sınıflandırır. Neden önemli? SLA Uyumluluk Oranı KPI'ı için doğrudan veri kaynağıdır. Nereden alınır? Hesaplama: Gerçekleşen bitiş tarihi <= Hedef tarih Örnekler SLA içindeSLA ihlal edildiAçık | |||
| Toplam gerçekleşen maliyet TotalActualCost | İş emri için kaydedilen toplam finansal maliyet. | ||
| Açıklama Bu öznitelik, işçilik, malzeme ve hizmet maliyetlerinin toplamını içerir. Finansal mutabakat analizleri ve acil bakım ile önleyici bakımın maliyet etkisini anlamak için gereklidir. Neden önemli? Finansal mutabakat ve kapatma hızı Dashboardunu ve maliyete dayalı karar almayı destekler. Nereden alınır? Hexagon EAM R5EVENTS tablosu, EVT_ACTCOST alanı veya benzer özet sütun Örnekler 150.002500.5075.25 | |||
| Varlık kritiklik düzeyi AssetCriticality | Varlığın operasyonel önemini gösteren puan. | ||
| Açıklama Bu öznitelik, varlığın iş operasyonları açısından ne kadar kritik olduğunu gösterir. Yüksek öncelikli iş emirlerinin gerçekten kritik ekipmanlarla ilişkili olup olmadığını doğrulamak ve olası süreç kötüye kullanımlarını ortaya çıkarmak için sıklıkla kullanılır. Neden önemli? Önceliği varlık değeriyle ilişkilendirerek Öncelik Kademelendirme ve Kaynak Denetimi Dashboardunu destekler. Nereden alınır? Hexagon EAM R5OBJECTS tablosu, OBJ_CRITICALITY alanı, EVT_OBJECT üzerinden birleştirme gerekir Örnekler A - HayatiB - KritikC - İkincilD - Düşük | |||
| Yeniden işleme mi IsRework | İş emrinin tekrarlanan teknik görevler içerip içermediğini gösteren işaret. | ||
| Açıklama Bu hesaplanan öznitelik, sürecin kalite kontrolü veya tamamlanma durumundan etkin çalışma durumuna geri döndüğü vakaları belirler. Kalite sorunlarını ve eğitim eksiklerini ortaya çıkarmanıza yardımcı olur. Neden önemli? Teknik yeniden çalışma ve kalite kontrol Dashboardunu ve bakım yeniden çalışma oranı KPI değerini besler. Nereden alınır? Etkinlik tekrarlarına göre hesaplanır Örnekler truefalse | |||
Varlık Bakım Faaliyetleri
| Aktivite | Açıklama | ||
|---|---|---|---|
| İş emri başlatıldı | Teknisyenler varlık üzerinde fiili çalışmaya başlamıştır. Bu durum genellikle In Progress durumuna geçişle veya işçilik kaydının ilk zaman damgasıyla işaretlenir. | ||
| Neden önemli? Birikmiş iş hesaplamasının bitiş ve fiili çalışma süresinin başlangıç noktasıdır. SLA Adherence Rate için büyük önem taşır. Nereden alınır? Hexagon EAM r5statuslog. 'In Progress' durumuna geçiş, genellikle 'I' veya 'IP' durum kodu. Yakalayın r5statuslog üzerinde işlem gerçekleştirildiğinde günlüğe kaydedilir Olay türü explicit | |||
| İş emri kapatıldı | İş emri finansal olarak kilitlenir ve arşivlenir. Artık ek maliyet veya işçilik kaydı yapılamaz. | ||
| Neden önemli? Sürecin sonudur. Financial Settlement Processed analizi ve nihai maliyetlerin sabitlenmesi için büyük önem taşır. Nereden alınır? Hexagon EAM r5statuslog. 'C' (Closed) veya 'L' (Locked/Closed) durumuna geçiş. Yakalayın r5statuslog üzerinde işlem gerçekleştirildiğinde günlüğe kaydedilir Olay türü explicit | |||
| İş emri oluşturuldu | Bakım iş emri kaydının sistemde ilk kez oluşturulmasıdır. Bu olay, vakayı başlatır ve tüm bakım yaşam döngüsü için ilk zaman damgasını kaydeder. | ||
| Neden önemli? Süreç örneğinin başlangıcını işaretler ve toplam çözüm süresini ölçmek için temel oluşturur. Birikmiş işlerin yaşını hesaplamak açısından önemlidir. Nereden alınır? Hexagon EAM r5events tablosu. evt_code ile yeni bir kayıt eklendiğinde günlüğe kaydedilir. Yakalayın r5events üzerinde INSERT işlemi gerçekleştirildiğinde günlüğe kaydedilir Olay türü explicit | |||
| İş emri onaylandı | İş emrinin planlama ve tahmin incelemesinden geçtiğini gösteren durum değişikliğidir. Çalışmanın başlatılmasına izin verildiğini belirtir. | ||
| Neden önemli? Planlama aşamasının sonunu işaretleyerek Maintenance Planning Velocity analizini destekler. Görevlerin ayrılığı uyumluluk kontrolünde kullanılır. Nereden alınır? Hexagon EAM r5statuslog tablosu. 'A' (Approved) durumuna veya sistemdeki eşdeğerine geçişi arayın. Yakalayın r5statuslog üzerinde işlem gerçekleştirildiğinde günlüğe kaydedilir Olay türü explicit | |||
| İş emri tamamlandı | Teknik çalışma tamamlanır ve teknisyen işi bitmiş olarak işaretler. Varlık yeniden hizmete alınır. | ||
| Neden önemli? End to End Lifecycle Duration ve Mean Time to Repair için önemli bir kilometre taşıdır. Duruş süresi sayacını durdurur. Nereden alınır? Hexagon EAM r5statuslog. 'C' (Completed) veya 'F' (Finished) durumuna geçiş. Yakalayın r5statuslog üzerinde işlem gerçekleştirildiğinde günlüğe kaydedilir Olay türü explicit | |||
| İşçilik saatleri kaydedildi | Bir teknisyen iş emrine harcanan çalışma saatlerini kaydeder. Bu faaliyet her vaka için birden fazla kez gerçekleşebilir. | ||
| Neden önemli? İş gücü saati sapması ve teknisyen iş gücü verimliliği Dashboardları için temel oluşturur. Gerçekleşen çabayı planla karşılaştırmalı olarak gösterir. Nereden alınır? Hexagon EAM r5booklabor tablosu. Her satır, iş emri için bir puantaj kaydını temsil eder. Yakalayın r5booklabor üzerinde INSERT işlemi gerçekleştirildiğinde günlüğe kaydedilir Olay türü explicit | |||
| Malzeme verildi | Yedek parçalar depodan fiziksel olarak çıkarılır ve iş emrine işlenir. Bu işlem malzeme tüketimini gösterir. | ||
| Neden önemli? Material Availability Lead Time için bitiş noktasıdır. Çalışmanın başladığı ancak eksik parçalar nedeniyle durduğu gecikmeleri belirleyin. Nereden alınır? Hexagon EAM r5translines tablosu. İş emrine bağlı 'I' (Issue) işlem türü. Yakalayın r5translines üzerinde INSERT işlemi gerçekleştirildiğinde günlüğe kaydedilir Olay türü explicit | |||
| İş emri onaylanarak kapatıldı | Genellikle uyumluluk veya yüklenici ödemesi için gereken son idari onaydır. Tüm verilerin doğru olduğunu doğrular. | ||
| Neden önemli? Work Order Approval Cycle Analysis için izleyin. Buradaki gecikmeler finansal mutabakatın hızını etkiler. Nereden alınır? Hexagon EAM r5statuslog, 'Signed Off' durumuna geçiş, veya elektronik imza kayıt günlüğü. Yakalayın Durum alanını önceki ve sonraki değerleriyle karşılaştırın Olay türü inferred | |||
| İş emri planlandı | İş emrine planlanan bir başlangıç tarihi veya belirli bir kaynak atanır. Böylece iş emri birikmiş işlerden etkin plana geçer. | ||
| Neden önemli? Technician Labor Productivity analizi ve kaynak tahsisi verimliliğini anlamak için önemlidir. Nereden alınır? Hexagon EAM r5events tablosu, evt_schedstart güncellemesi, veya r5statuslog, 'S' (Scheduled) durumuna geçiş. Yakalayın Durum alanını önceki ve sonraki değerleriyle karşılaştırın veya evt_schedstart güncellemesini kontrol edin Olay türü inferred | |||
| Kalite kontrolünden geçti | Bir yönetici veya denetçi tamamlanan işi inceler ve kaliteyi onaylar. Bu adım, kapatılmadan önce onarımı doğrular. | ||
| Neden önemli? Quality Control Compliance Rate KPI'ını destekler. Buradan geri dönen döngüler teknik yeniden çalışmaya işaret eder. Nereden alınır? Hexagon EAM r5statuslog, 'Review' veya 'QC' durumuna geçiş, ya da belirli bir UDF doğrulaması için r5audittrail. Yakalayın Durum alanını önceki ve sonraki değerleriyle karşılaştırın Olay türü inferred | |||
| Kontrol listesi öğesi doğrulandı | İş emri içindeki belirli bir görev veya inceleme adımı tamamlandı olarak işaretlenir. Bu, işteki ayrıntılı ilerlemeyi gösterir. | ||
| Neden önemli? Uyumluluk ve Dokümantasyon Bütünlüğü için gereklidir. Güvenlik kontrollerinin sistematik olarak kaydedildiğini kanıtlar. Nereden alınır? Hexagon EAM r5checklist veya r5activities tablosu. Belirli bir faaliyet ya da görev satırındaki durum değişikliği. Yakalayın r5checklist üzerinde UPDATE işlemi gerçekleştirildiğinde günlüğe kaydedilir Olay türü explicit | |||
| Malzeme talebi oluşturuldu | Yedek parça veya malzeme talebi iş emriyle ilişkilendirilir. Bu işlem tedarik zinciri alt sürecini başlatır. | ||
| Neden önemli? Spare Parts Procurement Lead Times için başlangıç noktasıdır. Buradaki yüksek hacim, stok bulunabilirliğine bağımlılığa işaret eder. Nereden alınır? Hexagon EAM r5requisitions tablosu. req_evt (Work Order Code) üzerinden ilişkilendirilir. Yakalayın r5requisitions üzerinde INSERT işlemi gerçekleştirildiğinde günlüğe kaydedilir Olay türü explicit | |||
| Öncelik güncellendi | İş emri ilk oluşturulduktan sonra öncelik seviyesinde bir değişiklik meydana gelir. Bu olay, zaman damgasını ve yeni öncelik değerini kaydeder. | ||
| Neden önemli? Öncelik Kademelendirme ve Kaynak Denetimi Dashboardunda önceliklerin kötüye kullanımını veya kapsam genişlemesini belirlemek için gereklidir. Nereden alınır? Hexagon EAM r5audittrail, denetim etkinse, veya anlık görüntülerden çıkarılır. Genellikle evt_priority alanındaki denetim günlüğünden türetilir. Yakalayın evt_priority üzerinde UPDATE işlemi gerçekleştirildiğinde günlüğe kaydedilir Olay türü explicit | |||
Veri çıkarma rehberleri
Adımlar
- Advanced Reporting Authoring yetkilerine sahip bir kullanıcı hesabıyla Hexagon EAM uygulamasına giriş yapın.
- Genellikle Administration veya Reports menüsünde bulunan Reports modülüne gidin ve Advanced Reporting arayüzünü açın. Bu arayüz çoğunlukla Cognos veya yerleşik bir SQL rapor oluşturucudur.
- Yeni rapor oluşturma sihirbazını başlatın ve veri kaynağı türü olarak 'SQL' veya 'Free-hand SQL' seçin. Bu seçenek, standart business object model yerine doğrudan veritabanı sorgusu çalıştırmanızı sağlar.
- Aşağıdaki Query bölümünde verilen SQL betiğini kopyalayarak Veri Seti tanım penceresine yapıştırın.
- ([Your Organization Code] ve tarih aralıkları gibi) yer tutucu değerleri ortamınıza uygun değerlerle değiştirin.
- Veritabanı platformunun (Oracle veya SQL Server) UNION ifadelerini kabul ettiğinden emin olmak için sorgu söz dizimini düzenleyicide doğrulayın.
- Ortaya çıkan sütunları rapor düzeni listesine eşleyin. WorkOrderNumber, ActivityName ve EventTimestamp alanlarının görünür olduğundan emin olun.
- Tablo yapısının korunması ve birleştirilmiş hücreler ya da biçimlendirme başlıkları oluşmaması için raporu özellikle CSV veya Excel biçimine aktarılacak şekilde yapılandırın.
- Veri yapısını doğrulamak için raporu bir test dönemiyle, örneğin son 100 iş emriyle çalıştırın.
- Doğrulama tamamlandıktan sonra raporu düzenli aralıklarla çalışacak şekilde zamanlayın veya tam veri çıkarma dönemi için çalıştırın.
- Çıktı dosyasını indirin ve tarih biçimlerini kontrol edin. Sıralamanın doğru yapılabilmesi için zaman damgalarının mümkünse saniyeleri de içerdiğinden emin olun.
- Ortaya çıkan CSV dosyasını ProcessMind'e aktarın. SourceSystem sütununu vaka özniteliği, ActivityName sütununu ise faaliyet sınıflandırıcısı olarak eşleyin.
Yapılandırma
- Tarih aralığı: Sorgu performansını korumak için EVT_DATE (Oluşturma tarihi) alanına göre 6 ila 12 aylık hareketli bir dönemle filtreleme yapmanız önerilir.
- Organizasyon filtresi: Hexagon EAM çoğunlukla birden fazla organizasyonu destekler. Diğer iş birimlerinden veri karışmasını önlemek için sorguya kuruluşunuza özel Organization Code filtresini eklediğinizden emin olun.
- Veritabanı söz dizimi: Aşağıdaki sorgu mümkün olduğunca ANSI standardı SQL kullanır, ancak Hexagon EAM genellikle Oracle veya SQL Server üzerinde çalışır. Tarih işlevlerinde (örneğin SYSDATE ve GETDATE) küçük uyarlamalar gerekebilir.
- Durum yapılandırması: Status Code değerlerinin (örneğin 'A', 'C', 'R') Activity Name değerleriyle (örneğin 'Work Order Approved') eşlemesi, sisteminizdeki özel durum yapılandırmasıyla uyumlu olmalıdır.
- Yetkiler: Raporu çalıştıran kullanıcı hesabının R5EVENTS, R5EVENTSTATUS, R5BOOKEDHOURS, R5TRANSACTIONS ve R5AUDITVALUES tablolarına okuma erişimi olmalıdır.
a Örnek sorgu 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' Adımlar
- Veritabanı bağlantısını belirleyin: Hexagon EAM Oracle veya SQL Server arka uç veritabanı için okuma yetkisine sahip kimlik bilgilerinizin, genellikle bir servis hesabının, olduğundan emin olun.
- Temel tabloları bulun: R5EVENTS (İş emri başlıkları), R5STATUS (Durum geçmişi), R5BOOKEDHOURS (İş gücü), R5TRANSACTIONS (Malzemeler) ve R5AUDITVALUES (Denetim günlüğü) tablolarına erişiminizi doğrulayın.
- Durum kodlarını eşleyin: Hexagon EAM yapılandırılabilir durum kodları kullanır (örneğin A, C, O, R). Özel 1 veya 2 karakterli kodlarınızı Approved, Scheduled, Started, Completed, QC Passed, Signed Off ve Closed faaliyetleriyle eşlemek için sistem yapılandırmanızı inceleyin (Ekran: Administration -> Codes).
- Sorguyu yapılandırın: Aşağıda verilen SQL betiğini açın. Yer tutucu durum kodlarını (örneğin 'APPR', 'SCHD', 'COMP') sisteminizdeki gerçek kodlarla değiştirin.
- Tarih aralığını belirleyin: Sorgu performansını korumak için WHERE koşullarını EVT_DATE veya TRN_DATE alanına göre, genellikle son 12 ayı kapsayacak şekilde belirli bir dönemi seçecek biçimde güncelleyin.
- Veri çıkarmayı çalıştırın: Sorguyu SQL istemcinizde (SQL Developer, SSMS veya Toad) çalıştırın.
- Denetim verilerini doğrulayın: 'Priority Updated' faaliyeti satır döndürmüyorsa EAM sistem ayarlarınızda R5EVENTS tablosu için Audit işlevinin etkin olup olmadığını kontrol edin.
- Kontrol listesi verilerini doğrulayın: Sürümünüz için R5CHECKLISTVALUES tablosunun doğru tablo olduğundan emin olun. Eski sürümlerde görev düzeyindeki tamamlanma için R5ACTIVITIES kullanılıyor olabilir.
- Verileri dışa aktarın: Sonuç kümesini CSV veya Parquet dosyası olarak kaydedin. Ayrıştırma hatalarını önlemek için Timestamp sütununun ISO 8601 (YYYY-MM-DD HH:MM:SS) biçiminde olduğundan emin olun.
- ProcessMind'e aktarın: Düz dosyayı ProcessMind arayüzüne yükleyin. WorkOrderNumber alanını Case ID, ActivityName alanını Activity, EventTimestamp alanını da Timestamp olarak eşleyin.
Yapılandırma
- Zaman aralığı filtresi: Sorgu şu anda tüm verileri seçmektedir. Temel CTE'ye veya her SELECT bloğuna WHERE EVT_DATE >= SYSDATE - 365 (Oracle) ya da GetDate() - 365 (SQL Server) gibi bir filtre eklemeniz önemle önerilir.
- Durum kodu eşlemesi: SQL içindeki dize sabitlerini (örneğin 'APPR', 'COMP', 'QC'), R5STATUS kümenizde tanımlanan gerçek kodlarla değiştirmeniz gerekir.
- Denetim yapılandırması: 'Priority Updated' verilerinin çıkarılması R5AUDITVALUES tablosuna bağlıdır. EVT_PRIORITY sütunu için denetim kapalıysa bu faaliyet eksik olacaktır.
- Organizasyon/Tenant: EAM örneğiniz birden fazla organizasyon barındırıyorsa verilerin karışmasını önlemek için EVT_ORG veya EVT_MRC (Departman) filtresi ekleyin.
- Dil: Sorgu, standart İngilizce sütun başlıklarını varsayar. Veritabanınız yerelleştirilmiş sütun adları kullanıyorsa bunları uygun şekilde güncelleyin.
a Örnek sorgu 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 Adımlar
- Bu veri çıkarma işlemi için gereken bakım iş emri verilerinde Hexagon EAM Databridge Outbound'un yüklü, lisanslı ve yetkilendirilmiş olduğunu doğrulayın. Outbound işlem yapılandırmasını, hedefi, zamanlama özelliğini ve kaynak tablolara veya görünümlere erişimi kontrol edin. Menü adları ve işlem tanımlayıcıları EAM sürümüne göre değiştiği için geçerli yönetim menüsü yolunda [Configure based on your system] ifadesini kullanın.
- İş emri başlıkları, iş emri durum geçmişi, öncelik geçmişi, malzeme talepleri, malzeme çıkışları, iş gücü işlemleri, kontrol listesi veya denetim sonuçları, planlama atamaları, kalite onayları, imza kayıtları ve kapatma kayıtları için yetkili Hexagon EAM tablolarını veya görünümlerini belirleyin. Sorgudaki her [Your ... table name] yer tutucusunu ortamınızdaki karşılık gelen nesneyle değiştirin. Güncel bir iş emri başlığının geçmiş değişiklikleri içerdiğini varsaymayın.
- İlgili bir iş emri değişikliği kaydedildiğinde Databridge Outbound'u XML veya CSV işlemi yayımlayacak şekilde yapılandırın. İş emri numarasını, olay türünü, olay zaman damgasını, kaynak kullanıcıyı, önceliği, iş emri türünü, departmanı, hedef tamamlanma tarihini, varlığı, gerçekleşen iş gücü saatlerini ve yenileme veya veri çıkarma zaman damgasını ekleyin. Durum, iş gücü, malzeme, kontrol listesi, planlama, kalite, imza veya kapatma olaylarının kaynak işlem yapıları farklıysa ayrı Outbound eşlemeleri yapılandırın.
- Outbound yükünü, her iş olayının ayrı bir olay kaydı olarak temsil edileceği şekilde yapılandırın. Yalnızca en güncel iş emri durumunu göndermeyin. Tekrarlanan iş gücü kayıtları, malzeme çıkışları, kontrol listesi öğeleri, öncelik değişiklikleri veya diğer tekrarlanan olaylar için her oluşumda bir kayıt üretin. Databridge olay türünü gerekli 13 ActivityName değerinden biriyle eşleyin.
- Databridge XML veya CSV çıktısını kontrollü bir hazırlama konumuna alın, ardından sorguda başvurulan veritabanı nesnelerine yükleyin veya sorgunun kaynak nesnelerini hazırlama tablolarıyla değiştirin. Özgün olay tanımlayıcısını, iş emri numarasını, olay zaman damgasını, kaynak kullanıcıyı ve LastDataUpdate değerini koruyun. Databridge XML gönderiyorsa tekrarlanan olay düğümlerini faaliyet eşlemesini uygulamadan önce satırlara ayrıştırın. CSV gönderiyorsa ayraçları, tırnak işaretlerini, kodlamayı ve zaman damgası biçimlerini doğrulayın.
- Sorgudaki bağlantıya özel nesneler, tarih parametreleri ve şirket filtreleri için yer tutucuları değiştirin. Sorgu, her faaliyet için normalleştirilmiş bir olay kaynağı kullanır ve sonuçları UNION ALL ile birleştirir. Her blokta kullanılan kaynak sütunlarının uyumlu veri türlerine sahip olduğundan emin olun. Bir kaynak önerilen bir özniteliği sağlamıyorsa değer uydurmak yerine bu öznitelik için NULL döndürün.
- Sorguyu yaklaşık üç ila altı aylık bir başlangıç dönemi için çalıştırın. Sonuçta gerekli WorkOrderNumber, ActivityName, EventTimestamp, SourceSystem ve LastDataUpdate sütunlarının, mevcutsa önerilen özniteliklerle birlikte bulunduğunu doğrulayın. Çıktıyı WorkOrderNumber, EventTimestamp ve ActivityName alanlarına göre sıralayın; farklı kaynak olaylarını temsil eden yinelenen satırları koruyun.
- Çıkarılan satırları Databridge teslimat sayıları, kaynak işlem sayıları ve Hexagon EAM'deki örnek iş emirleriyle karşılaştırın. Eksik durum geçmişini, yinelenen teslimatları, geçersiz zaman damgalarını ve seçilen tarih aralığı dışındaki olayları inceleyin. Kararlı bir tekilleştirme kuralını yalnızca aynı kaynak olayının birden fazla kez teslim edildiği durumlarda uygulayın.
- Nihai sonucu UTF-8 CSV veya ProcessMind tarafından desteklenen başka bir Event Log biçiminde dışa aktarın. Her satırda tek bir olay bulunsun, zaman dilimi yönetimiyle tutarlı bir zaman damgası kullanın, WorkOrderNumber alanını vaka tanımlayıcısı, ActivityName alanını faaliyet, EventTimestamp alanını da olay zaman damgası olarak eşleyin. Dosyayı ProcessMind'e yükleyin ve 13 faaliyet adının tamamının olay modelinde kullanılabildiğini doğrulayın.
Yapılandırma
- Hexagon EAM Databridge Outbound'u olay düzeyinde XML veya CSV teslimatı yapacak şekilde yapılandırın. İşlem adları, yönetim ekranları ve menü yolları yüklü Hexagon EAM sürümüne bağlı olduğundan sürüme özel bir yol varsaymak yerine [Configure based on your system] ifadesini kullanın.
- WorkOrderNumber alanını ProcessMind vaka tanımlayıcısı, ActivityName alanını faaliyet alanı ve EventTimestamp alanını olay zaman damgası olarak yapılandırın. SourceSystem alanı Hexagon EAM ile doldurulmalı, LastDataUpdate ise veri çıkarma veya yenileme zamanını göstermelidir.
- 13 faaliyetin tamamı için Outbound eşlemeleri yapılandırın: 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 ve Work Order Closed.
- Geçmişteki oluşumları koruyun. Yalnızca güncel bir durum alanı, her durum geçişini, öncelik güncellemesini, iş gücü kaydını, malzeme çıkışını, kontrol listesi doğrulamasını, onayı veya imzayı yeniden oluşturamaz.
- İlk veri çıkarma için üç ila altı aylık bir tarih aralığı kullanın. Artımlı yüklemelerde Databridge teslimatını veya LastDataUpdate değerini referans noktası olarak kullanın ve geç gelen işlemlere karşı küçük bir örtüşme aralığı bırakın.
- Şirket, tesis, organizasyon, iş emri türü, departman ve durum filtrelerini yalnızca analiz için gerektiğinde uygulayın. Organizasyona özel kısıtlamalar için [Your company filter] veya [Configure based on your system] ifadelerini kullanın.
- Analiz tam yaşam döngüsünü kapsıyorsa kapatılmış iş emirlerini de dahil edin. Yalnızca açık iş emirlerine filtre uygulamak tamamlanma, kalite, imza ve kapatma faaliyetlerini dışarıda bırakır.
- Zaman dilimi yönetimini açıkça yapılandırın. ProcessMind'e yüklemeden önce tüm kaynak zaman damgalarını üzerinde anlaşılmış tek bir zaman dilimine dönüştürün ve mevcutsa özgün zaman dilimini veya farkını koruyun.
- Büyük Veri Setleri için kaynağında filtreleme yapın, veri çıkarma dönemini sınırlayın, olay zaman damgası ve iş emri numarasını indeksleyin veya bölümlere ayırın ve Databridge dosyalarını dönüşümden önce hazırlama alanına alın. Geçmişteki XML yükünün tamamını tekrar tekrar ayrıştırmaktan kaçının.
- Gerekli ön koşullar arasında Databridge Outbound kullanılabilirliği, ilgili EAM verilerini okuma yetkisi, Outbound hedefi veya hazırlama veritabanına erişim ve iş emri, durum, malzeme, iş gücü, kontrol listesi, planlama, onay, kalite, imza ve kapatma verilerine erişim bulunur.
- Gerekli bir iş olayı yerel bir Databridge işlemi olarak kullanılamıyorsa her açık olay için bir satır üreten kaynak görünümü veya hazırlama dönüşümü yapılandırın. ProcessMind eksik faaliyetleri diğer satırlardan çıkarmaz.
a Örnek sorgu 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; Başlamaya hazır mısınız?
Bu Template i izleyerek bakım verilerinizi uygulanabilir içgörülere dönüştürün. Veri hazırlama aşamanız sırasında teknik sorularınız olursa ekibimiz size yardımcı olmaya hazırdır.
Varlık bakımı gecikmelerini azaltın, performansı bugün artırın
Çevrim sürenizi yüzde 30 azaltın ve gizli darboğazları ortadan kaldırın.
Kredi kartı gerekmez. Kurulum birkaç dakika içinde tamamlanır.