Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Typed DataSet i filtriranje podataka

[es] :: .NET :: .NET Desktop razvoj :: Typed DataSet i filtriranje podataka

[ Pregleda: 1381 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

perun85
Republika Srpska

Član broj: 185562
Poruke: 116
79.143.174.*



Profil

icon Typed DataSet i filtriranje podataka05.11.2008. u 19:07 - pre 188 meseci
Imam typed DataSet u kome se nalazi nekoliko tabela. Na formi imam dve dataGridView kontrole, koje su sa dve Binding Source kontrole povezane sa jednom tabelom u DataSetu. Ta tabela ima jedno polje u koje je smesten odredjeni datum na osnovu koga vrsim filtriranje.
Preciznije jedan DataGridView prikazuje korisnike cija je vrednost datumske kolone veca od danasnjeg datuma, a drugi gde je ista vrednost manja. Ovo postizem tako sto u Form_Load dodam slede'i kod:

bindingSource1.Filter = "datum>=" + "\'" + DateTime.Now.ToString() + "\'";
bindingSource2.Filter = "datum<" + "\'" + DateTime.Now.ToString() + "\'";

Pri pokretanju programa svi redovi bivaju ispravno prikazani, no tu se javlja problem kada selektujem odredjeni red i zelim da iz njega izvucem vrednost odredjene kolone (FullRowSelect = true i MultiSelect = false) on mi vrati podatke korisnika koji se ne nalazi na poziciji sa tim indeksom u dataGridView. Da budem jos precizniji efekat je isti kao da su svi redovi bez obzira na datum ucitani u taj DataGridView,a prikazani su samo oni sa ispravnim datumom a ovi ciji datum nije ispravan su "sakriveni" ali su ostali na svojim pozicijama u DataGridVIew-u i zadrzali svoje indeksee.

Posto pretpostavljam da je ovo posledica upotreba Filter svojstva BindingSourca, postoji li nacin da ovu gresku ispravim? Ukoliko ne postoji, mozete li mi predloziti drugi nacin da izvedem ovo filtriranje? Meni je na pamet balo dodavanje jos jedne iste tabele u DataSet samo gde bi SELECT query izgledao "SELECT * FROM Tabela WHERE datum >= (GETDATE())", no mislim da postoji i bolje resenje od ovoga gde se bespotrebno dupliraju podaci.

Hvala unapred na odgovorima.
 
Odgovor na temu

Igor Gajic

Član broj: 93194
Poruke: 747
*.ADSL.neobee.net.



+987 Profil

icon Re: Typed DataSet i filtriranje podataka06.11.2008. u 06:17 - pre 188 meseci
Kako dolazis do podataka iz tabele na osnovu indexa reda u dataGridView ?

Ako koristis TabelaKojuKoristis.Rows, gde je i index trenutnog reda, onda sigurno nece prikazati redo koje zelis.

Poenta je da koristis nesto tipa:

Code:


(DataRowView)bindingSource1.Current



Ovako dobijas trenutno izabrani red.

Kada koristis Filter svojstvo, ne izbacujes redove iz tabele koju koristis vec samo izbacujes redove iz bindingSource-a. I samo ti redovi se prikazuju u dataGridView.
 
Odgovor na temu

perun85
Republika Srpska

Član broj: 185562
Poruke: 116
79.143.175.*



Profil

icon Re: Typed DataSet i filtriranje podataka06.11.2008. u 13:11 - pre 188 meseci
Upravo tako, do podataka sam dolazio na osnovu indexa reda. Probacu sa ovim kodom. Hvala na odgovoru.
 
Odgovor na temu

perun85
Republika Srpska

Član broj: 185562
Poruke: 116
79.143.175.*



Profil

icon Re: Typed DataSet i filtriranje podataka06.11.2008. u 13:45 - pre 188 meseci
Evo upravo sam doradio problematicni deo aplikacije i sada radi odlicno. Hvala jos jednom.
 
Odgovor na temu

[es] :: .NET :: .NET Desktop razvoj :: Typed DataSet i filtriranje podataka

[ Pregleda: 1381 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.