Minimum validty check failed..

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
Biltes
Üye
Mesajlar: 361
Kayıt: 11 Oca 2005 02:24
Konum: Edirne

Minimum validty check failed..

Mesaj gönderen Biltes »

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.

Kod: Tümünü seç

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...
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

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
Kullanıcı avatarı
Biltes
Üye
Mesajlar: 361
Kayıt: 11 Oca 2005 02:24
Konum: Edirne

Mesaj gönderen Biltes »

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

Kod: Tümünü seç

sctable.ExecSQL; 
dedikten sonra hatayı veriyor. Sizce sorun ne olabilir yada neden kaynaklanabilir.
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...
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

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
ikut

merhaba

Mesaj gönderen ikut »

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
ulu coder
Üye
Mesajlar: 838
Kayıt: 01 Nis 2006 06:46
Konum: Ankara

Mesaj gönderen ulu coder »

aynı hatayı integer alana 0 ve 1 girmeye çalışırken almıştım.
Başka bi sebebi olabilir mi acaba?
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Veritabanı tarafta veya DataSet/FieldEditor/Properties den en küçük/minumum en büyük/maksimum değerler verilmiş olabilir :idea:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Kullanıcı avatarı
Biltes
Üye
Mesajlar: 361
Kayıt: 11 Oca 2005 02:24
Konum: Edirne

Mesaj gönderen Biltes »

Öncelikle günaydınlar;
Sorunun geri update ettiğim

Kod: Tümünü seç

sctable.ParamByName('tarih').AsDate := dxDateEdit1.Date;
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...
Cevapla