Delphi Can

Orjinalini görmek için tıklayınız: UniComboBox1 Items Add kullanarak veri eklemek
Şu anda (Arşiv) modunu görüntülemektesiniz. Orjinal Sürümü Görüntüle internal link
Sayfalar: 1 2
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: 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.

Merhaba,
Tüm platformlar için hızlı uygulama geliştirme kitabımızdan bir alıntı.

[attachment=1414]
(30-10-2020, Saat: 10:09)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: [ -> ]
(30-10-2020, Saat: 09:18)Bay_Y Adlı Kullanıcıdan Alıntı: [ -> ]Bilgilendirme için teşekkürler . Ama next döngüsü içinde ekli denedim sorun görünmüyor.

Merhaba,
Tüm platformlar için hızlı uygulama geliştirme kitabımızdan bir alıntı.

teşekkürler Fesih Bey.
(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.
Sayfalar: 1 2