[ Zmaj @ 29.07.2004. 06:35 ] @
Kako se radi s njim, zato sto mi prikazuje samo jedan slog, jer kad izaberem drop down, u njemu nema nista?
[ Milos D @ 31.07.2004. 11:24 ] @
Ako mislis na lookup combo, pokusaj da uradis dataset.last (dataset je lookup dataset od combo-a). Ako nije lookup combo onda ne bi trebalo da bude ovakvih problema, treba da prikazuje ono sto mu stavis u Items...
[ Zmaj @ 01.08.2004. 22:53 ] @
Dobro to sam skontao, da moram rucno da popunim Items, jer se radi o obicnom TDBComboBox-u, ali imam drugo pitanje, kao da povezem dogadjaj select od combo boxa sa bazom, tj. kako da nadjem odgovarajuci slog u bazi na osnovu sadrzaja trenutno izabranog itema, da li postoji u tabelama nesta tipa skoci na neko fizicko polje u tabeli koje odgovara indesku u combo boxu.
[ dejov @ 02.08.2004. 01:13 ] @
E za to ti sluzi DBLookupCombobox ili obrnuto:)) Imas polja key field i listsource pa ih popuni u zavisnosti odakle ces da ti komponenta "cupa" podatke
[ Milos D @ 03.08.2004. 14:20 ] @
Ajde daj konkretan primer toga sto ti treba. Ako si hteo da odaberes u combo box-u "Pera Peric" i dobijes podatke o njemu, koliko ja znam, moras da u obican combo box upises sva imena iz tabele, pa u OnChange da odradis tabela.locate
[ Zmaj @ 04.08.2004. 01:50 ] @
Citat:
Milos D: Ajde daj konkretan primer toga sto ti treba. Ako si hteo da odaberes u combo box-u "Pera Peric" i dobijes podatke o njemu, koliko ja znam, moras da u obican combo box upises sva imena iz tabele, pa u OnChange da odradis tabela.locate


E to mi treba, znaci provalio sam kako da napunim dbcombobox, ali nemam blage veze kako posle da pronadjem taj podatak u bazi, tj da povezeme item u cb i odgovarajuce polje u tabeli.

Konkretno imam tabelu sa klijentima i tabelu sa radnim nalozima, treba mi da iz comboboxa izaberem klijenta i vidim njegove radne naloge.
[ Milos D @ 05.08.2004. 15:02 ] @
OK, ako postoji neko jednostavnije resenje sada cu da ispadnem neverovatno glup, ali ovaj problem bi resio tako sto bi obican (ne DB) combo box napunio sa sadrzajem koji te interesuje. Ako je u pitanju neki fiksni skup podataka tipa "skolska sprema" onda to mozes unapred na napunis (jer znas sve moguce vrednosti), a ako nije (npr. ime grada) moras u run-time da napunis combo.items tako sto ces, na primer, napraviti query "select distinct nesto from ime_tabele order by nesto", i onda u kodu, po potrebi (npr kad god korisnik otvori taj prozor),

combo.items.clear
query.open
query.first
while not query.eof do
begin
combo.items.add (query.fields[0].asstring)
query.next
end

I tako ces napuniti combo sa svim postojecim vrednostima tog polja. Kada korisnik odabere neku vrednost, u combo.OnChange treba da stavis kod koji ce locirati odabranu vrednost u tabeli koja ti sluzi za prikaz podataka u db-aware kontrolama.

npr, OnChange moze da bude ovakav:

table.locate (combo.text, 'nesto', [])

I to je otprilike to, ima i drugih nacina ali ja ne znam za jednostavniji. Problem je u tome sto se sve db-aware kontrole koje bi naizgled mogle da posluze za ovako nesto ponasaju tako da, ako im promenis vrednost, one smatraju da pokusavas da promenis trenutno aktivni record, a to ti ne treba. Mozda se na netu mogu naci db kontrole koje bi odgovarale za pretrazivanje.