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

Kako da izracunam rb dbgrida?

[es] :: Pascal / Delphi / Kylix :: Kako da izracunam rb dbgrida?

[ Pregleda: 820 | Odgovora: 6 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

MatezYU
NS

Član broj: 4114
Poruke: 906
*.adanet.co.yu.

Sajt: www.matezyu.byethost6.com


Profil

icon Kako da izracunam rb dbgrida?03.07.2007. u 10:39

Pozicionirao sam misa na jedan record u dbgrid. Brisem tabelu i radim refreshj. Pokazivac ide na pocetak. Hocu da mi ostane u tom redu gde je bioi. Kako to da resim?
03.07.2007. u 10:39 

broker

Član broj: 2415
Poruke: 8521
77.46.232.*



Profil

icon Re: Kako da izracunam rb dbgrida?03.07.2007. u 10:52
Akoobrises tabelu onda nema gde da ode kursor.

Inace, ne pozicioniras se na gridu nego na tabeli, dakle u dataset-u zapamti gde si bio pa nakon refresh-a otidji opet na isti slog.
03.07.2007. u 10:52 

[KS]
Damir Kasipovic
Banjaluka

Član broj: 55395
Poruke: 44
*.teol.net.



Profil

icon Re: Kako da izracunam rb dbgrida?03.07.2007. u 11:41
Da, i ja sam imao taj problem i imao sam istu ideju (da zapamtim RecNo pa da se vratim na isti). Međutim, problem je sledeći. Skrolujem DBGrid prema dole i unos na koji kliknem nalazi se negdje na sredini trenutne pozicije dbgrid scrolla. Kad nakon toga RecNo proslijedim db komponenti taj slog se pojavi na vrhu! Znači pobjegne gore dva tri reda.

Ja sam to riješio ovako. OnDraw event mi je služio za pamćenje prvog vidljivog RecNo-a i onda bih taj RecNo (a ne izabrani) proslijedio u dataset. Radilo je odlično.

Nadam se da će ti pomoći. Poz.
Damir Kasipović
dkasipovic@gmail.com
+387 (0)65 979 949
03.07.2007. u 11:41 

broker

Član broj: 2415
Poruke: 8521
91.150.127.*



Profil

icon Re: Kako da izracunam rb dbgrida?03.07.2007. u 13:36
To radi odlicno sve dok korisnik ne pokrene neku akciju koja radi na tekucem slogu, a tekuci slog vise nije onaj koji je bio tekouci nego onaj koji je bio na vrhu grida.
03.07.2007. u 13:36 

MatezYU
NS

Član broj: 4114
Poruke: 906
*.adanet.co.yu.

Sajt: www.matezyu.byethost6.com


Profil

icon Re: Kako da izracunam rb dbgrida?04.07.2007. u 06:36
Citat:
broker: Akoobrises tabelu onda nema gde da ode kursor.

Inace, ne pozicioniras se na gridu nego na tabeli, dakle u dataset-u zapamti gde si bio pa nakon refresh-a otidji opet na isti slog.


Mislio sam da brisem rekord a ne tabelu. U stvari ja imam sql upit koji mi verzuje vise tabela i pokazuje rezultat. E sada kada brisem jedan rekord iz te
prve glavne tabele onda treba da nestane taj rekord u dbgrid. Onda moram da refresh-ujem taj upit i uvek mi kursor skoci gore.
04.07.2007. u 06:36 

MatezYU
NS

Član broj: 4114
Poruke: 906
*.adanet.co.yu.

Sajt: www.matezyu.byethost6.com


Profil

icon Re: Kako da izracunam rb dbgrida?04.07.2007. u 06:37
Da li moze neko da mi da primer?
04.07.2007. u 06:37 

rambo
Dejan Petković
Sremčica

Član broj: 6095
Poruke: 41
*.eunet.yu.

Sajt: solair.eunet.yu/~rambo


Profil

icon Re: Kako da izracunam rb dbgrida?04.07.2007. u 08:34
Ovo je normalno ponašanje zato što DataSet nije jedna tabela već upit koji vraća neku vrstu "pogleda" na podatke (joined query).

Da bi ovo rešio, recimo možeš da pre brisanja aktivnog zapisa upamtiš koji ti je zapis ispred (ili iza) tog koji brišeš (zapamtiš njegov ID, vrednost ključa) i onda nakon brisanja uradiš Find sa tim ključem. Ovo rešenje takođe može da bude i uzrok za pad performansi aplikacije kod čitanja podataka iz baze, jer moraš da uradiš više operacija nad istim DataSet-om (pređeš na prethodni slog, pročitaš ID, pređeš na aktuelni slog, obrišeš ga, osvežiš upit, uradiš Find sa zapamćenim ID-jem), pa zato moraš da odlučiš dali ti ovakva funkcionalnost zaista treba.

Postoje takođe komponente (DevExpress ExpressQuantumGrid, recimo) koje ti ovo rade automatski, ali opet moraš neke stvari da malo isplaniraš. Obavezno napravi probu sa više varijanti pa vidi šta ti najviše odgovara.


Live long and prosper!
04.07.2007. u 08:34 

[es] :: Pascal / Delphi / Kylix :: Kako da izracunam rb dbgrida?

[ Pregleda: 820 | Odgovora: 6 ]

Postavi temu Odgovori

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