combobox1'e veritabanından veri atmak
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
combobox1'e veritabanından veri atmak
Combobox1'e formun showunda veritabanından veriyi aşağıdaki gibi atıyorum.Elist error List index out of bounds diye bir hata ile karşılaşıyorum.Sebebi nedir?Yardımlarınızı bekliyorum..
adoquery2.sql.Clear;
adoquery2.close;
adoquery2.SQL.Add('select group from group1 order by grid');
adoquery2.Open;
while not adoquery2.Eof do
begin
combobox1.Items.Add(adoquery2.Fields[0].value);
adoquery2.Next;
end;
combobox1.ItemIndex:=0;
adoquery2.Parameters[0].Value:=combobox1.Items[0];
adoquery2.Open;
end;
adoquery2.sql.Clear;
adoquery2.close;
adoquery2.SQL.Add('select group from group1 order by grid');
adoquery2.Open;
while not adoquery2.Eof do
begin
combobox1.Items.Add(adoquery2.Fields[0].value);
adoquery2.Next;
end;
combobox1.ItemIndex:=0;
adoquery2.Parameters[0].Value:=combobox1.Items[0];
adoquery2.Open;
end;
S.A.
kodlarını code tagı içerisinie alırsan daha okunaklı olur.
Tablonda kayıt varmı.
eğer tabloda kayıt yoksa comboboxa item eklemediği için items[0] hata döndürecektir.
ya tabloda kayıt kontrolu yapacaksıni yada trty except ile kontrol edeceksin.
bir ihtimalde adoquery nin parametresi varmı?
Kolay gelsin.
kodlarını code tagı içerisinie alırsan daha okunaklı olur.
Tablonda kayıt varmı.
eğer tabloda kayıt yoksa comboboxa item eklemediği için items[0] hata döndürecektir.
ya tabloda kayıt kontrolu yapacaksıni yada trty except ile kontrol edeceksin.
bir ihtimalde adoquery nin parametresi varmı?
Kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Tabloda kayıt var
Tabloda kayıt var dbgrid'e listeleyebiliyorum.Şu hatayı lütfen çözelim..
Kod: Tümünü seç
adoquery2.Parameters[0].Value
Satir satir islettignizde hatayi nerede veriyor?
Hatayi verdigi yerde ekrana Combobox1.items.count degerini showmessage ile gosterin mesela. Muhtemelen ya hic kayit yok ya da ulasmak istediginiz item yok... Bu hata mesajının tek sebebi budur zira....
Hatayi verdigi yerde ekrana Combobox1.items.count degerini showmessage ile gosterin mesela. Muhtemelen ya hic kayit yok ya da ulasmak istediginiz item yok... Bu hata mesajının tek sebebi budur zira....
* http://www.fahrettin.org Manzara Fotoğraflarım... 
* http://delphiturkiye.gunduz.info Seminerler...
* http://www.hakmar.com.tr Kalite bir haktır...

* http://delphiturkiye.gunduz.info Seminerler...

* http://www.hakmar.com.tr Kalite bir haktır...

-
- Kıdemli Üye
- Mesajlar: 574
- Kayıt: 01 Şub 2004 12:29
- Konum: Erdemli - MERSİN
Re: combobox1'e veritabanından veri atmak
query önce close sonra clear yapıllmalıAliRiza yazdı:adoquery2.sql.Clear;
adoquery2.close;
end;
Kod: Tümünü seç
adoquery2.close;
adoquery2.sql.Clear;
adoquery2.SQL.Add('select group from group1 order by grid');
adoquery2.Open;
adoquery2.first; // bu önemli !!!
while not adoquery2.Eof do
begin
combobox1.Items.Add(adoquery2.Fields[0].value);
adoquery2.Next;
end;
if combobox1.ItemCount > 0 then
begin
combobox1.ItemIndex:=0;
adoquery2.Parameters[0].Value:=combobox1.Items[0];
adoquery2.Open;
end;
end;
Bir de bunu dene...