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

Sta je brze - pouzdanije Rs.Find ili ...

[es] :: Visual Basic 6 :: Sta je brze - pouzdanije Rs.Find ili ...

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

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

djvlajko

Član broj: 89354
Poruke: 310
*.dynamic.isp.telekom.rs.



Profil

icon Sta je brze - pouzdanije Rs.Find ili ...28.03.2014. u 10:36 - pre 121 meseci
Evo sta bih hteo da uradim. Imam dve tabele vezane za fakture po principu master-detail.
U jednoj tabeli su zaglavlja - osnovni podaci o fakturi, u drugoj detalji - stavke fakture.

Na formi imam dva DataGrida, za svaku tabelu po jedan. Prilikom pomeranja kroz stavke zaglavlja faktura potrebno je da se u drugom gridu menja sadrzaj u zavisnosti od stavki-slogova detalja faktura.

Interesuje me da li je brze u kretanju kroz podatke :

1. Pri svakom pomeranju u master gridu formirati RecordSet i prikazati sadrzaj u detail gridu.

2. Na pocetku formirati RecSet stavki i selektovati ih uz pomoc RecSet.Find ... svaki put kada se promeni tekuci slog u master gridu.

Kolicina podataka u obe tabele je oko 200 (master) i 600 (detail) slogova.
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12846



+4783 Profil

icon Re: Sta je brze - pouzdanije Rs.Find ili ...28.03.2014. u 12:29 - pre 121 meseci
Sa tom kolicinom podataka verovatno neces primetiti nikakvu razliku. E sad...
Svaki od tih metoda ima svoje prednosti i mane:
1. imas ucitavanje pri svakoj selekciji sto znaci da je izmedju selekcije i prikaza u detail gridu imas ucitavanje. Takodje, ako se selektuje isti red vise puta u masteru, imas vise ucitavanja istih podataka. Sa druge strane, pocetni prikaz je brzi jer ucitavas samo master listu. Takodje, manje trosis memorije.
2. Brzi je prikaz prilikom promene selekcije ali je sporiji pocetni prikaz i trosis vise memorije.

Mozes i kombinovati. Npr. da koristis prvi metod ali kada jednom ucitas details da ih sacuvas za sledeci put, tako izbegavas da vrsis selekciju jednih istih vise puta. Ili da koristis drugi metod, ali da master prikazes odmah a onda u posebnom thread-u (da ne bi blokirao GUI) ucitavas details. Ovo je idealna varijanta ako ti ne zauzima previse memorije ali ti komplikuje zivot :) Npr. ako korisnik selektuje neki master pre nego sto thread ucita sve details.

E sad, nisam radio u vb6 jedno 10god tako da se ne secam bas najbolje kakva je situacija sto se tice objekata, nizova i sl. Ali u .net-u ti details liste objekata ne bi zauzimale mnogo memorije jer bi samo imale reference na listu svih details objekata.
 
Odgovor na temu

dava
Banja Luka

Član broj: 27208
Poruke: 893



+384 Profil

icon Re: Sta je brze - pouzdanije Rs.Find ili ...17.04.2014. u 09:56 - pre 121 meseci
Bitna stvar za izbor metodologije je i koliko računara/aplikacija radi sa tom bazom podataka. Ako postoje dve ili više aplikacija tada i nije pametno povući podatke i sržati ih u gridu jer je u međuvremenu moglo doći do promjene nekih od tih podataka od starane aplikacije na drugom računaru.

U tom slučaju ja bih pri startu forme povukao sva zaglavlja faktura, a po selektu zaglavlja fakture bih selektovao stavke te fakture u donji grid. Tu bi negdje bilo i dugme za refresh koje bi ponovo selektovalo sva zaglavlja faktura i to bi korisnik pozivao po potrebi.

U slučaju da tu bazu koristi samo jedan računar i sobzirom na tu količinu podataka možeš to izvesti kako hoćeš, neće biti nikakvih problema i usporenja.
SELECT * FROM หน่วยงานหลัก WHERE ยสันติ LIKE 'โดย%'
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.dynamic.sbb.rs.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: Sta je brze - pouzdanije Rs.Find ili ...17.04.2014. u 12:50 - pre 121 meseci
Večita dilema, lazy ili eager loading :) Ali, sa tako malom količinom podataka, mislim da nema preterane potrebe gubiti vreme na takvu analizu, jer je jedini način da primetiš neku razliku da poteraš aplikaciju na nekoj 486 mašini sa 8-16MB RAM-a, a možda ni tad :) Da je u pitanju baza za više miliona rekorda, onda bi možda imalo smisla meriti performans i vagati.

Lično sam za ovakve stvari uvek koristio prvu metodu, jer mi je nekako bilo logičnije da se radi sa manjom količinom podataka, odnosno da se učitava samo ono što je u tom trenutku potrebno, a s obzirom da na jednoj fakturi nikada neće biti mnogo stavki, ni to učitavanje neće biti duže od par milisekundi. Mada opet kažem, sa takvom količinom podataka, potpuno je svejedno, i jedno i drugo će se izvršavati za par milisekundi.
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

[es] :: Visual Basic 6 :: Sta je brze - pouzdanije Rs.Find ili ...

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

Postavi temu Odgovori

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