Firedac bileşeni parametreyi ilk çalıştırmada görmüyor.(Çözüldü)

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
softdestek
Üye
Mesajlar: 155
Kayıt: 17 Eyl 2010 03:53

Firedac bileşeni parametreyi ilk çalıştırmada görmüyor.(Çözüldü)

Mesaj gönderen softdestek »

Firedac bileşeninde şöyle bir hata alıyorum.
Paremetre gönderiyorum.Birinci çalıştırmam da paremetreyi görmüyor
Fakat ikinci çalıştırdığımda paremetreye göre işlem yapıyor.


Query bileşenim aşağıdadır

Kod: Tümünü seç

select * from dbo.personel
where dbo.personel.YIL=:PYIL

Kod: Tümünü seç

TBLFisMaster.Close;
TBLFisMaster.Prepared:=True;
TBLFisMaster.Prepare;
TBLFisMaster.ParamByName('PYEAR').AsInteger:=SPINYEAR.Value;
TBLFisMaster.Open;
NOTE:DELPHIXE6 and database:MS SQL 2014
En son softdestek tarafından 24 May 2015 10:41 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Kullanıcı avatarı
bulutsuzluk_35
Üye
Mesajlar: 124
Kayıt: 06 Eki 2007 04:14
Konum: İzmir-Ankara-İstanbul-Antalya
İletişim:

Re: Firedac bileşeni parametreyi ilk çalıştırmada görmüyor.

Mesaj gönderen bulutsuzluk_35 »

profiler ile izledin mi hiç ?

Kod: Tümünü seç

try
  try
    inc(Bilgi);
  except
    sabir;
  end;
finally
  inc(Mutluluk);
end;
Kullanıcı avatarı
softdestek
Üye
Mesajlar: 155
Kayıt: 17 Eyl 2010 03:53

Re: Firedac bileşeni parametreyi ilk çalıştırmada görmüyor.

Mesaj gönderen softdestek »

Aşağıdaki linkteki gibi bir program henüz kullanmadım
Sorun firedac bileşenin query bileşenine parametre aktarırken yaşanıyor sanırım.
Birinci paremetre geçişinde anlamıyor ama ikinci defa çalıştırınca paremetreyi görüyor..
Sanırım bir yerde bir paremetre ayarına ihtiyaç var bileşenle ilgili..

viewtopic.php?t=32355
Kullanıcı avatarı
bulutsuzluk_35
Üye
Mesajlar: 124
Kayıt: 06 Eki 2007 04:14
Konum: İzmir-Ankara-İstanbul-Antalya
İletişim:

Re: Firedac bileşeni parametreyi ilk çalıştırmada görmüyor.

Mesaj gönderen bulutsuzluk_35 »

şu prepare komutlarına gerek yok ilkönce onu kaldır.
ikinci olarak parametrenin tipini ver
olması lazım...
profiler eğer sql server'ın express versiyon değilse default olarak yüklü gelir yok ise google : expressprofiler
bu izleme aracı benim çok işime geliyor sql server 'a giden sqlleri görebilirsin...

Kod: Tümünü seç

try
  try
    inc(Bilgi);
  except
    sabir;
  end;
finally
  inc(Mutluluk);
end;
thelvaci
Kıdemli Üye
Mesajlar: 770
Kayıt: 11 Tem 2010 07:17
Konum: Istanbul
İletişim:

Re: Firedac bileşeni parametreyi ilk çalıştırmada görmüyor.

Mesaj gönderen thelvaci »

softdestek yazdı:Firedac bileşeninde şöyle bir hata alıyorum.
Paremetre gönderiyorum.Birinci çalıştırmam da paremetreyi görmüyor
Fakat ikinci çalıştırdığımda paremetreye göre işlem yapıyor.


Query bileşenim aşağıdadır

Kod: Tümünü seç

select * from dbo.personel
where dbo.personel.YIL=:PYIL

Kod: Tümünü seç

TBLFisMaster.Close;
TBLFisMaster.Prepared:=True;
TBLFisMaster.Prepare;
TBLFisMaster.ParamByName('PYEAR').AsInteger:=SPINYEAR.Value;
TBLFisMaster.Open;
NOTE:DELPHIXE6 and database:MS SQL 2014
Gördüğüm kadarı ile SQL sorgunuzdaki parametrenin adı PYIL ama atama yaparken PYEAR kullanmışsınız. Bu bir yazım hatası mıdır ?
Kullanıcı avatarı
softdestek
Üye
Mesajlar: 155
Kayıt: 17 Eyl 2010 03:53

Re: Firedac bileşeni parametreyi ilk çalıştırmada görmüyor.

Mesaj gönderen softdestek »

Öncelikle verdiğiniz bilgiler için teşekkkür ederim..
Bu arada SQL PROFILER mevcut kullanıyorum şu an teşekkür ederim.
Yukardaki kod bloğunun yerini değiştirince sorun düzeldi..
Cevapla