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

Praćenje korisničkih akcija u programu.

[es] :: Pascal / Delphi / Kylix :: Praćenje korisničkih akcija u programu.

[ Pregleda: 2253 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Miloš Baić
Miloš Baić
ERP (Dynamics NAV) programer
Beograd

Član broj: 72468
Poruke: 1155
*.dialup.neobee.net.



Profil

icon Praćenje korisničkih akcija u programu.16.04.2007. u 13:09 - pre 207 meseci
Pozdrav,

radim na razvoju aplikacije sa bazom podataka, te sam došao na ideju da sebi olakšam posao prateći rad korisnika programa. Često se dešava da krajnji korisnici se ne snalaze sa programima, ne čitaju help a i kad im nešto na tanjiru daš često zaborave, pa rezultat bude neka greška, npr. pogrešan unos koji se treba ispraviti, etc. Još češće ne znaju ni da kažu šta su uradili.

Hteo bih da mi neko objasni, iskusniji, kako bih mogao pratiti rad korisnika u programu, odnosno akcija koje su izvršili. Praktično da u bazu beležim svaki pritisak tastera "ENTER", klik na neki TButton i tome slično, da tako imam predstavu šta je urađeno.

Npr. da se u tabelu beleži:
1) izvršena akcija
2) datum
3) vreme

Time bih imao pregled i argument za nastalu situaciju. Zaista bih cenio da me neko uputi.

Hvala unapred.
Someone's sitting in the shade today because someone planted a tree a long time ago.
 
Odgovor na temu

Srki_82
Srdjan Tot
Me @ My Home
Ljubljana

Član broj: 28226
Poruke: 1403
212.200.34.*

ICQ: 246436949


+10 Profil

icon Re: Praćenje korisničkih akcija u programu.16.04.2007. u 14:43 - pre 207 meseci
Uglavnom svaki veci projekat ima mogucnost pravljenja logova. Nije nikakav problem napraviti klasu koja ce se brinuti o logovanju korisnikovih akcija. Jednostavno posle svake akcije prosledis logeru opis onoga sto je korisnik uradio i miran si. Kada se pojavi greska, protrcis kroz log, nadjes sta se desilo i popravis stetu. Nije lose napraviti vise nivoa logovanja tako da u normalnom radu logujes samo recimo upise, promene i brisanja iz baze, a u nekom debug modu otvaranje svake konekcije, postavljanje parametara u queriju, koliko dugo je trajao upit i slicno...

Proguglaj malo: Google
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Praćenje korisničkih akcija u programu.16.04.2007. u 14:48 - pre 207 meseci
Treba ti procedura kojoj se prosleđuje naziv opcije ili neki drugi identifikator odabrane komande. U toj proceduri ćeš ubaciti taj podataka u bazu zajedno sa vremenom i ostalim što ti je potrebno. Zavisno od toga kako si organizovao program, da li koristiš akcije ili direktno dugmad i menije, treba organizovati gde će se ubaciti poziv te funkcije. To može biti Application.OnExecute, TActionList.OnExecute ili direktno u event handleru te opcije.
 
Odgovor na temu

Miloš Baić
Miloš Baić
ERP (Dynamics NAV) programer
Beograd

Član broj: 72468
Poruke: 1155
*.dialup.neobee.net.



Profil

icon Re: Praćenje korisničkih akcija u programu.16.04.2007. u 15:53 - pre 207 meseci
Koristim direktno menije na osnovu kojih se poziva TForm, na TForm su TButton - OnClick, TEdit - OnKeyDown, etc.
Napraviti proceduru koju ću pozivati kroz Application.OnExecute ili u event handleru te opcije?! Šta se u praksi pokazalo kao bolja varijanta?
Someone's sitting in the shade today because someone planted a tree a long time ago.
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Praćenje korisničkih akcija u programu.16.04.2007. u 17:42 - pre 207 meseci
Bolje je naravno da imaš centralizovano mesto za obradu, umesto poziv u svakom event handleru. Kako ne koristiš Akcije onda moraš:
1) Direktno u svakom handleru dodaš poziv log metode.
2) Promena stdctrls.pas i menus.pas tako da se prilikom klika na dugme ili meni poziva tvoja log metoda.
3) Hookuješ poruke koje stižu prozoru, identifikuješ menu klik i button klik i pozoveš log
4) Zameniš sve OnClik metode menija i buttona sa svojom, ali tako da negde sačuvaš originalnu metodu. Kada se pozove tvoja metoda, uradiš logovanje i proslediš akciju originalnom event handleru.
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.dynamic.sbb.co.yu.



+1 Profil

icon Re: Praćenje korisničkih akcija u programu.16.04.2007. u 20:16 - pre 207 meseci
Idealno, bilo bi ovako nesto:

http://en.wikipedia.org/wiki/Command_pattern

Jeste da sam ja zasao malo vise u teoriju u odnosu na ostale, nisam izdrzao :)
 
Odgovor na temu

Miloš Baić
Miloš Baić
ERP (Dynamics NAV) programer
Beograd

Član broj: 72468
Poruke: 1155
*.dialup.neobee.net.



Profil

icon Re: Praćenje korisničkih akcija u programu.16.04.2007. u 21:49 - pre 207 meseci
Ok, koliko vidim ima više načina na koji se to može odraditi, što je i logično.
Napravio sam log metodu koju sam dodelio svakom handleru, te svaka akcija se beleži u bazu.
Akcije koje se beleže u bazu mi same po sebi i ne znače puno sem nekog pregleda šta je korisnik odradio. Model sam proširio sa beleženjem i izuzetaka u bazu koji se vezuju za izvršenu akciju, stoga imam tačan pregled situacije.

Pretpostavljam, da u modelu koji sam osmislio ima nedostataka, verovatno se može i elegantnije odraditi, što ću videti u narednim danima, te do tad Vam se zahvaljujem na pomoći.


Someone's sitting in the shade today because someone planted a tree a long time ago.
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Praćenje korisničkih akcija u programu.

[ Pregleda: 2253 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

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