if IB_Bordro.Locate('B_TCNO',IB_PersonelP_TCKIMLIKNO.Value, [loCaseInsensitive]) then
Tek parametre geçtiğinde "VarArrayOf" kullanma. (Tek parametre = tek kolon ile arama yaptırma) Emin değilim ama string yapmana da gerek yok diye tahmin ediyorum. Test edersin.
Ayrıca "IB_Personel.Next" göremedim while döngüsü içinde. Kontrol edersin.
İyi çalışmalar,
Ertan Küçükoğlu
While Do içerisinde Procedure
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: While Do içerisinde Procedure
Sorunu şimdi anladım. Senin Personel kayıtlarında TCKimlikNo alanı boş (null) olanlar var. Bunları kontrol altına alman lazım. StrToInt null değer görünce hata veriyor.
Aşağıda Null kontrolünü ezberden yazıyorum. Kontrol edersin.
Aşağıda Null kontrolünü ezberden yazıyorum. Kontrol edersin.
Kod: Tümünü seç
if IB_PersonelP_TCKIMLIKNO.IsNull then
Hesapla(False)
else if IB_Bordro.Locate('B_TCNO',IB_PersonelP_TCKIMLIKNO.Value, [loCaseInsensitive]) then
Hesapla(True)
else
Hesapla(False);
Re: While Do içerisinde Procedure
Nacizane tavsiyem "IB_Personel.Next;" senin while döngün içinde görünür bir yerde olsun.
Re: While Do içerisinde Procedure
StrToFloatDef(IB_PersonelP_TCKIMLIKNO.Value,0) dene olur belki