Tüm Platformlar için Hızlı Uygulama Geliştirme --->    Kitabımız...      Delphi

Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Convert hata
#1
Merhaba; gecenin bir yarısı sorunu çözemedim için konu açmak durumunda kaldım.

Sorunum databasedeki integer değerleri saniye çevireceğim, fakat daha convert etmeden aşağıdaki hatayı almaya başladım, acaba sorun nedir anlayamadım, yardımlarınızı rica ederim. 

First chance exception at $763408B2. Exception class EVariantTypeCastError with message 'Could not convert variant of type (Null) into type (Int64)'. Process Smart.exe (10992)

Close;
          SQL.Clear;
          SQL.Add('Select SUM(SURE) as TOPLAM From DETAY Where MUZIKNO=:KN and TARIH=:TR');
          ParamByName('KN').AsString := Items.Item[I].SubItems[2];
          ParamByName('TR').AsDate := Ekleme.Date;
          Prepared := True;
          Open;
          if Not IsEmpty then
          begin
            Memo1.Lines.Add(IntToStr(FieldByName('TOPLAM').Value));

            // showmessage(IntToSaniye(FieldByName('TOPLAM').Value));
            // Items[I].Subitems[6] := IntToSaniye(FieldByName('TOPLAM').Value);
          end;


function TForm2.IntToSaniye(ASecs: Integer): String;
begin
  Result := Format('%.2d:%.2d:%.2d', [ASecs div 3600, ASecs mod 3600 div 60,
    ASecs mod 3600 mod 60]);
end;
Hayat bazen güzel olabiliyor.
Cevapla
#2
FieldByName('TOPLAM').AsInteger şeklinde bir deneyin olmaz ise
cast(SUM(SURE) as INT) şeklinde denermisiniz birde f9 ile adım adım takip edebilirsiniz exeyi
Narsist bir ruhta başkasına ihtiyaç yoktur !
Cevapla
#3
Hata mesajından anladığım, veritabanında null değerler var bunları int64'e convert edemiyorum diyor. SURE alanınızda null değer olup olamadığını kontrol edip varsa sorguyu ona göre duzenlemenizi öneririrm.
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
WWW
Cevapla
#4
(29-01-2018, Saat: 09:17)esistem Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlHata mesajından anladığım, veritabanında null değerler var bunları int64'e convert edemiyorum diyor. SURE alanınızda null değer olup olamadığını kontrol edip varsa sorguyu ona göre duzenlemenizi öneririrm.
Dediğiniz gibi bir durum varsa SUM(ISNULL(SURE,0))  sorunu çözecektir
Narsist bir ruhta başkasına ihtiyaç yoktur !
Cevapla
#5
Emeği geçen herkese teşekküller.
Hayat bazen güzel olabiliyor.
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Hata Mesajı Penceresi Yönetimi uparlayan 8 357 20-11-2017, Saat: 03:06
Son Yorum: fduman07
  Grid'den kayıt eklemek istediğimde autoincrement olan alanın boş şeklinde hata vermes burakb44 1 162 30-10-2017, Saat: 22:26
Son Yorum: burakb44
  Soap Datamodule'de oluşan Hata (ReceiveHeader) yhackup 3 298 02-06-2017, Saat: 16:23
Son Yorum: edo
  Convert serhat 0 188 30-05-2017, Saat: 14:22
Son Yorum: serhat
  Editler Boş İse Hata Verme Mericx 22 1.211 23-01-2017, Saat: 14:34
Son Yorum: Mericx



Konuyu Okuyanlar: 1 Ziyaretçi