Sayın kadirdursun,
3.mesajınızda yazmış olduğunuz
Kod:
KontrolTarihi = Dlookup ("[VF_SEVK_TARIHI]", "T_ISLEMLER", "[BARKOD]='" & Me.BARKOD & "'")
kod üzerinden gitmek üzere aşağıdaki açıklamaların yapılması uygun görülmektedir.
Yukarıdaki kodun anlamı şu:
Me.BARKOD denetiminde yazılı BARKOD değerine göre,T_ISLEMLER adlı tablo veya sorgudaki VF_SEVK_TARIHI adlı alandaki değeri; KontrolTarihi adlı denetime yaz.
Yukarıdaki kodun işlem dönüşü şu:
Formun üzerindeki Me.BARKOD denetimindeki yazılı değeri T_ISLEMLER adlı tablo veya sorgu içerisinde aynı değere sahip bir kayıt bulursa bu barkod değerinin olduğu kayıt bilgisinin VF_SEVK_TARIHI adlı alanındaki tarih değerini, KontrolTarihi adlı denetime yazması.
Fakat burada iki önemli husus söz konusu:
1)
T_ISLEMLER adlı tablo/sorgu içerisindeki BARKOD alanında benzer olmayan tek barkod kayıtları mı mevcut?
Yoksa,benzer barkod değerine sahip birkaç kayıt da geçerli mi?
Eğer benzersiz tek kayıt varsa,o zaman sadece barkod kriterine göre kayıt aratmak geçerlidir.
Fakat,aynı barkod değeri ile başka kayıtlar da söz konusu ise,o zaman tek kriter ile aratmak yetersiz kalır.çünkü;aynı barkod değerinin hangi kayıt bilgisini yazacak? Bunu gidermek için,başka bir ya da birkaç kriter daha eklenmeli ki,tam olarak istenen kayıt bilgisine ulaşılabilsin.
2)
Eğer
Dlookup fonksiyonu ile elde edilmek istenen değer için yazılı olan BARKOD kriterine göre arama yapıldığında geri dönüş olarak bir değer elde edilemeyip aksine BOŞ (NULL) değer söz konusu ise,bu da doğal olarak bir hata vermesine neden olacaktır.
Bunun için de,ya
NZ Fonksiyonu kullanılmalı ya da öncesinde barkod kontrolü yaptırılarak,bu T_ISLEMLER adlı tablo/sorgu içerisindeki BARKOD alanında form üzerindeki barkod denetimindeki değer var mı yok mu,varsa
Dlookup fonksiyonunun çalıştırılması yoksa da barkod değerinin tekrar yazdırılması gibi bir kontrol yaptırılabilir.
Bilginize…iyi çalışmalar,saygılar.