Boş cxgrid de column toplamını almak isterken hata

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
a_self_lion
Üye
Mesajlar: 93
Kayıt: 01 Eki 2008 07:04

Boş cxgrid de column toplamını almak isterken hata

Mesaj gönderen a_self_lion »

Aşağıda ki kodlarımızda Seçili olan carinin borçlarını cxgrid içinde gösteriyordum
ve toplam tutar alanındaki borçlarını toplatırıp CxTextEdit7 ye yazdırıyordum
bir sorun yoktu.Fakat seçmiş olduğum carinin her hangi bir bilgisi bulunmazsa yani
cxgrid içinde görüntülenecek bir şey olmayınca o zaman tipdönüşüm hatası veriyor.
Bunu nasıl önleyebilirim.

Kod: Tümünü seç

procedure TForm2.CariyeGoreBorcSorgu;
var
  ToplamBorc : currency;
  s : string;
  harfduyarlilik:TReplaceFlags;//unutmayın Küçük büyük duyarlılığı yok
begin

  // burda bu nesneleri true yapyoruz ki kod içinde false oluşacak olursa tekrar başa dönünce ture oluyor.
  Button1.Enabled := True ;
  cxTextEdit1.Enabled := True;
  // toplam tutaru footer da toplatıyoruz ya o rakımı edit1 e yazdırmak
  //ToplamBorc :=StrToFloat(Stringreplace(cxGrid1DBBandedTableView1.DataController.Summary.FooterSummaryTexts[0],',','',harfduyarlilik));
  // buda kestirmesi iki üç satırda da oluyor oda
  s := cxGrid1DBBandedTableView1.DataController.Summary.FooterSummaryTexts[0];
  s := StringReplace(s,',','',harfduyarlilik); // binlik ayıracı siliniyor
  ToplamBorc := StrToFloat(s);

  if cxTextEdit6.Text <> 'YOK' then
  begin
    if ToplamBorc >= StrToFloat(CxTextEdit7.Text) then
    begin
      ShowMessage ('Kişinin Borç Toplamı= ' + FloatToStr(ToplamBorc) + ' TL '+
      'olmuştur SATIŞ YAPILAMAZ. Üst Sınırı= ' + CxTextEdit7.Text + ' TL dir. '+
      ' Lütfen Kişiyi arayınız ve TAHSİLATINIZI YAPINIZ.' );
      Button1.Enabled := False ;
      cxTextEdit1.Enabled := False;
      cxGrid1.SetFocus;
    end;
  end;
end;
ikra
Üye
Mesajlar: 901
Kayıt: 28 Nis 2005 01:26
Konum: Simdilik Topragin Üstü

Re: Boş cxgrid de column toplamını almak isterken hata

Mesaj gönderen ikra »

StrToFloatDef kullan.
Deger bos ise default deger alsin.
kıdemsiz üye
Cevapla