Arkdaşlar merhaba programda dbgrid'e çift tıklayıp bilgilerimi gerekli alanlara dolduruyorum. Gerekli dğeişiklikleri yaptıktan sonra kaydet dediğim zaman
Minimum validity check failed
şeklinde bir hata alıyorum bunun anlamı nedir acaba?
Kaydet butonuna bastığım zaman gerekli update işlemini yapan kod aşağıdaki gibidir.
procedure Tsaticiaddfrm.Hesapduzelt;
var
temp2 : AnsiString;
begin
if (dxPickEdit2.Text <> '') and (RxDBLookupCombo2.Value <> '-') and (dxEdit18.Text <> '') Then
Begin
if anafrm.Mesaj(2) Then
Begin
sctable.Close;
sctable.SQL.Clear;
temp2 := 'UPDATE saticiaction set tutar=:tutar,ba=:ba,tarih=:tarih,aciklama=:aciklama,kid=:kid,yer=:yer where scariid=:id)';
sctable.SQL.Add(Temp2);
sctable.ParamByName('id').AsCurrency := saticitableid.AsCurrency;
sctable.ParamByName('tutar').AsCurrency := HusoEdit1.TextAsFloat;
sctable.ParamByName('ba').AsInteger := dxPickEdit2.ItemIndex;
sctable.ParamByName('tarih').AsDate := dxDateEdit1.Date;
sctable.ParamByName('aciklama').AsString := dxEdit18.Text;
sctable.ParamByName('kid').AsCurrency := StrToCurr(RxDBLookupCombo2.Value);
sctable.ParamByName('yer').AsCurrency := 0;
sctable.ExecSQL;
Hesaptemizle;
//sol menüdeki tablo ile ilgili bölüm
sactiontable.Close;
sactiontable.SQL.Clear;
sactiontable.SQL.Add('Select * From saticiaction where scariid=:id');
sactiontable.Active := True;
Toplambul;
End;
End Else anafrm.Mesaj(4);
end;
Cevaplarınız için şimdiden tşk ederim...
Var olmaya değer her şey bilinmeye de değerdir. Çünkü bilgi varlığın bir imgesidir. Onda iyi ve kötü aynı anda bulunmaktadır...
s.a.
hata veren satır hangisi peki
breakpoint koyup satır satır çalıştır. hata verdiği satırı bulduğun zaman büyük ihtimalle çözümüde bulursun.
eğer tabloyu açınca veya sql i çalıştırınca veriyorsa alana verdiğin değer ile ilgili bir sıkıntı vardır.
kolay gelsn.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
hocam dediklerinizi yaptım hata veren satır hesaptemizle olan satır ama bu satırı kapatıp tekrar deniyorum bu sefer bir alt satırda ve bu şekilde devam ediyor. Ama muhtemeleen
parametre ile atanan değerleri kontrol et.
doğrumu atanıyor
onlar elle değer ver sonra tek tek kodları çalıştır.
muhtemelen hatalı olan değeri bulacaksın.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
muhtemelen bir alana girlmesi gereken değerler dışında bir değer giriyorsunuz. örneğin a: integer olsun minimum değeride 20 olsun. buna 19 girerseniz validation hatası alırsınız. bunuda bir test edin
bu alanda olduğu buldum tek tek alanları update ettim ve bu şekilde sorun çözüldü. Ama şimdide başka bir sorun ile karşı karşıyayım. Yukarıda yazdığım kod çalıştığı zaman diyelimki borç durumunu ödeme değil de alacak durumuna getirdiğim zaman o indexe bağlı tüm detayların borç alanı borç durumuna geçiyor yani bir alanda değişiklik yapayım otomatik olarak tüm alanları değiştiriyor. Bu sorunu nasıl aşabilirim. Şimdiden teşekkür ederim...
Var olmaya değer her şey bilinmeye de değerdir. Çünkü bilgi varlığın bir imgesidir. Onda iyi ve kötü aynı anda bulunmaktadır...