Merhabalar
for I := 0 to QCariListesi.RecordCount do
begin
UniComboBox1.Items.Add(QCariListesi.ParamByName('CARI_UNVANI').AsString);
end;
QCariListesi deki verilerimi UniComboBox1.Items özelligine eklemek istiyorum yardımcı olur musunuz?
TFDQueryden UniComboBox1 e verileri aktarabilirmiyim?
(28-10-2020, Saat: 11:33)ibrahim.aydin@perga.com.tr Adlı Kullanıcıdan Alıntı: [ -> ]Merhabalar
for I := 0 to QCariListesi.RecordCount do
UniComboBox1.Items.Add(QCariListesi.FieldByName('CARI_UNVANI').AsString);
QCariListesi deki verilerimi UniComboBox1.Items özelligine eklemek istiyorum yardımcı olur musunuz?
TFDQueryden UniComboBox1 e verileri aktarabilirmiyim?
işinizi görür diye düşünüyorum.
Kolay gelsin.
With QCariListesi do
Begin
Active := False ;
SQl.Clear;
SQl.Text := 'Select Distinct CARI_UNVANI From QCariListesi '
Active := True ;
First;
UniComboBox1.Items.Clear ;
While QCariListesi.Eof do
begin
if QCariListesi.FieldByName('CARI_UNVANI').AsString<>'' then
UniComboBox1.Items.Add(QCariListesi.FieldByName('CARI_UNVANI').AsString);
End;
For döngüsü yerine While döngüsü kullanmanız daha mantıklı. Ayrıca for içinde next ifadesini vermediğiniz için sonsuz döngüye girecektir.
Merhaba
Bu satır
UniComboBox1.Items.Add(QCariListesi.ParamByName('CARI_UNVANI').AsString); veriyi değil, parametrenin adını ekler.
Şu sekılde olmalı sanırım
With QCariListesi do
Begin
Active := False ;
SQl.Clear;
SQl.Text := 'Select Distinct CARI_UNVANI From QCariListesi '
//burda parametre verilebilir.
Active := True ;
First;
UniComboBox1.Items.Clear ;
repeat
UniComboBox1.Items.Add(QCariListesi.FieldByName('CARI_UNVANI').AsString);
next;
until Eof;
(28-10-2020, Saat: 11:59)Bay_Y Adlı Kullanıcıdan Alıntı: [ -> ] (28-10-2020, Saat: 11:33)ibrahim.aydin@perga.com.tr Adlı Kullanıcıdan Alıntı: [ -> ]Merhabalar
for I := 0 to QCariListesi.RecordCount do
begin
UniComboBox1.Items.Add(QCariListesi.ParamByName('CARI_UNVANI').AsString);
end;
QCariListesi deki verilerimi UniComboBox1.Items özelligine eklemek istiyorum yardımcı olur musunuz?
TFDQueryden UniComboBox1 e verileri aktarabilirmiyim?
işinizi görür diye düşünüyorum.
Kolay gelsin.
With QCariListesi do
Begin
Active := False ;
SQl.Clear;
SQl.Text := 'Select Distinct CARI_UNVANI From QCariListesi '
Active := True ;
First;
UniComboBox1.Items.Clear ;
repeat
UniComboBox1.Items.Add(QCariListesi.ParamByName('CARI_UNVANI').AsString);
next;
until Eof;
bilgi için teşekkür ederim birazdan deneyecegim ('until Eof;') ne işe yaramakta bu?
(29-10-2020, Saat: 13:19)ibrahim.aydin@perga.com.tr Adlı Kullanıcıdan Alıntı: [ -> ] (28-10-2020, Saat: 11:59)Bay_Y Adlı Kullanıcıdan Alıntı: [ -> ]işinizi görür diye düşünüyorum.
Kolay gelsin.
With QCariListesi do
Begin
Active := False ;
SQl.Clear;
SQl.Text := 'Select Distinct CARI_UNVANI From QCariListesi '
Active := True ;
First;
UniComboBox1.Items.Clear ;
repeat
UniComboBox1.Items.Add(QCariListesi.ParamByName('CARI_UNVANI').AsString);
next;
until Eof;
bilgi için teşekkür ederim birazdan deneyecegim ('until Eof;') ne işe yaramakta bu?
yukarıda With QCariListesi do
denmiş until eof esasında -> until QCariListesi.eof dur
next ise QCariListesi.next dir,
repeat den önce QCariListesi.first 1. kayıda gidilmesini QCariListesi.next ile bir sonraki kayda geçilmelisini, ve son kayda gelindiğinde eof=true -> until QCariListesi.eof=true olduğundan çıkış şartı olarak mantıksal değer until e girmenize yarar.
repeat den önce UniComboBox1.beginupdate ve untilden sonra endupdate kullanmanız gerekebilir,
repeat until çalışırken uygulamanız kayıt sayısına ve cpu pefromansına göre windows mesajlarına ve uygulama içi ana thread deki queue çağrılarına yanıt vermeyeceği için kitlenmiş gibi görünecekdir, repeat until i thread içine veya timer içine taşımayı düşünebilirsiniz.
ekl olarak repeat e girmeden önce query den kayıt dönmüşmü diye baksanız dahada iyi olabilir,
uygulamanın ansızın kapatılma isteği için until e şart olarak veya repeat until arasına if application.terminated then ekleyerek döngüden çıkmasınıda sağlayabilirsiniz.
(28-10-2020, Saat: 14:06)serdar Adlı Kullanıcıdan Alıntı: [ -> ]Merhaba
Bu satır UniComboBox1.Items.Add(QCariListesi.ParamByName('CARI_UNVANI').AsString); veriyi değil, parametrenin adını ekler.
Şu sekılde olmalı sanırım
With QCariListesi do
Begin
Active := False ;
SQl.Clear;
SQl.Text := 'Select Distinct CARI_UNVANI From QCariListesi '
//burda parametre verilebilir.
Active := True ;
First;
UniComboBox1.Items.Clear ;
repeat
UniComboBox1.Items.Add(QCariListesi.FieldByName('CARI_UNVANI').AsString);
next;
until Eof;
Uyarı için teşekkürler Serdar bey yukarıdan kopyaladığım için dikkat etmemişim gerekli düzenlemeyi yaptım.
(28-10-2020, Saat: 13:17)mcuyan Adlı Kullanıcıdan Alıntı: [ -> ]For döngüsü yerine While döngüsü kullanmanız daha mantıklı. Ayrıca for içinde next ifadesini vermediğiniz için sonsuz döngüye girecektir.
Bilgilendirme için teşekkürler . Ama next döngüsü içinde ekli denedim sorun görünmüyor.
(30-10-2020, Saat: 09:18)Bay_Y Adlı Kullanıcıdan Alıntı: [ -> ] (28-10-2020, Saat: 14:06)serdar Adlı Kullanıcıdan Alıntı: [ -> ]Merhaba
Bu satır UniComboBox1.Items.Add(QCariListesi.ParamByName('CARI_UNVANI').AsString); veriyi değil, parametrenin adını ekler.
Şu sekılde olmalı sanırım
With QCariListesi do
Begin
Active := False ;
SQl.Clear;
SQl.Text := 'Select Distinct CARI_UNVANI From QCariListesi '
//burda parametre verilebilir.
Active := True ;
First;
UniComboBox1.Items.Clear ;
repeat
UniComboBox1.Items.Add(QCariListesi.FieldByName('CARI_UNVANI').AsString);
next;
until Eof;
Uyarı için teşekkürler Serdar bey yukarıdan kopyaladığım için dikkat etmemişim gerekli düzenlemeyi yaptım.
(28-10-2020, Saat: 13:17)mcuyan Adlı Kullanıcıdan Alıntı: [ -> ]For döngüsü yerine While döngüsü kullanmanız daha mantıklı. Ayrıca for içinde next ifadesini vermediğiniz için sonsuz döngüye girecektir.
Bilgilendirme için teşekkürler . Ama next döngüsü içinde ekli denedim sorun görünmüyor.
PArdon haklısnız While do içinde yazsaydınız sonsuz döngüye girerdi. ben yanlış anlamışım. Fakat Bu şekilde sürekli DBcombonun içine Cari_Ünvan Parametresinin içeriğini yazar kayıt sayısı kadar.