HATA

AÇIKLAMA
Bazı müşterilerde taleplerin içerisinde bulunan ekli dosyalar veritabanında ya da ayrı dosya sisteminde tutulabiliyor.
Taleplerin haliyle dosyaların sayılarının artmasıyla veritabanında yavaşlama söz konusu olacağından dosyalar ayrı bir dosya sistemine aktarılıyor.
Dosyaların dosya sisteminde tutulduğu yapılarda Emakin dosyayı çağırdığında öncelikli olarak veritabanına bakılıyor. Eğer henüz dosya, dosya sistemine yazılmamışsa ve hali hazırda dosya veritabanında ise Emakin dosyayı veritabanı üzerinden açıyor. Aksi taktirde dosya sistemine giderek oradan çağırıyor.
Emakin dosyanın nerede tutulduğunu nasıl anlıyor?
wFileregistry tablosunda kayıtların durumunu (state) gösteren bir alan mevcut.
Durumu 3 olduğunda dosya henüz veritabanında ve dosya sistemine aktarılmak için kuyrukta bekliyor demektir.
Durumu (state) 0 ise; dosya veritabanından dosya sistemine taşındı demektir.
Emakin veritabanında dosyanın durumuna bakıp dosya aktarılmışsa dosya sisteminde, aktarılmamışsa da veritabanında dosyayı arıyor.
Veritabanından kaynaklandığı düşünülen bazı nedenlerden dolayı bazen state güncellenmiyor ve emakin kontrol ettiğinde durum(state) 3 ve dosya veritabanında yoksa iş hataya düşüyor.
ÇÖZÜM

Öncelikle talep numarasını (instance number) temin ediyoruz. Müşteri Emakin den İş adımı ara kısmından aratıyoruz. Talebin içine girdiğimizde Mail ekleri kısmındaki dosyaya tıklıyıp açılıp açılmadığını (veya indirildiğini) gözlemliyoruz. 500 hatası veriyorsa geri gelip dosya üzerine sağ tıklayıp copy link address diyoruz. (Çözüm Katılım’daki hataya göre oluşturulduğundan farklı müşterilerde dosyalar farklı alanlarda olabilir)

Kopyaladığımız adresi internet tarayıcısında boş bir sekmeye yapıştırıp id’ yi alıyoruz.

Aldığımız Id yi veritabanında wFileRegistry tablosunda aratıyoruz ve durumunu (state) kontrol ediyoruz. Eğer State 3 ise 0 olarak güncelliyoruz.
update [ALTIKARE].[dbo].[wFileRegistry] set State=0 where FileId = ' id ' and State = 3
