[ gygy @ 02.09.2003. 00:56 ] @
___________ ... _____________ .. _____________________
|MP3..........|....|Ime I Prezime |....|CD Br. + Naziv CD-a |
|Igre..........|....|Ime I Prezime |....|CD Br. + Naziv CD-a |
|Programi....|....|Ime I Prezime |....|CD Br. + Naziv CD-a |
|...............|....|...................|....|............................|
——————— ...————————....————————————

Situacija je sledeca zelim da napravim program za vodjenje evidencije cd-ova!
Kreirao sam bazu CD.cds, sledece strukture:
| Kategorija | Ime i prezime | CD Br. | Naziv CD-a |
koristim ClientDataSet i Data source za povezivanje sa bazom

1. E sad mi se javio problem kako da u DBLookupListBox1 izbacim duplikate da samo ostanu npr MP3, Igre, Programi po jedan a ne koliko ima podataka u bazi?
2. Kako kad kliknem na Mp3 u DBLookupListBox1-u on u drugi DBLookupListBox2 ispise sva imena osoba(naravno dez duplikata), onda kad kliknem na ime da iz baze iscita koji je Cd uzeo?

Probavam vec par dana da nekako obrisem (ili Sakrijem) duplikate iz DBLookupListBox1 ali me ne polazi za rukom!
Da li neko moze da mi pomogne, da mi objasni na koji nacin i kako to da uradim?

Unapred Hvala!!!
GYGY
[ morlic @ 17.09.2003. 08:42 ] @
Nije mi najjasnije sta si uradio. Treba ti vise od jednog ClientDataSet-a (CDS). Ovi CDS-ovi predstavljaju tabele u tvojoj bazi:

Nulti CDS (ovo sam nadnadno dodao) - Tabela sa kategorijama diskova
Prvi CDS - Tabela sa diskovima
Drugi CDS - Tabela musterija
Treci CDS - Tabela sa ID-em musterije i ID-em diska koji je iznajmljen i ID-em kategorije

Sada vrsis povezivanje tako sto u treci CDS dodas lookup box-ove preko kojih ID musterije, diska i kategorije pretvaras u prikaz imena (musterije) i naziva (diska) ...

Posle toga na treci CDS treba da primenis filter kojim mozes da ograncis prikaz po musteriji ili broju diska.

Ima tu jos stvari koje treba resiti: brisanje podataka, povecavanje baze (CDS radi tako sto podatke drzi u memoriji u toku rada). Ako mozes probaj da bazu uradis u InterBase-u. Bice dovoljno brzo, a ti ces imati mnogo vise prostora za manevrisanje.