Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 6 odgovora
  • 2.961 pregleda

Najnovija ↓

Praćenje korisničkih akcija u programu. 16.04.2007. u 14:09 · pre 237 meseci #1
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.
Potpis
Someone's sitting in the shade today because someone planted a tree a long time ago.
Re: Praćenje korisničkih akcija u programu. 16.04.2007. u 15:43 · pre 237 meseci #2
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
Potpis
Play Store
Re: Praćenje korisničkih akcija u programu. 16.04.2007. u 15:48 · pre 237 meseci #3
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.
Potpis
Do not be a help vampire (http://slash7.com/pages/vampires), use the google.

How to ask questions the smart way:
http://www.catb.org/~esr/faqs/smart-questions.html
http://solair.eunet.rs/~fangor...stions/smart-questions.sr.html
Re: Praćenje korisničkih akcija u programu. 16.04.2007. u 16:53 · pre 237 meseci #4
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?
Potpis
Someone's sitting in the shade today because someone planted a tree a long time ago.
Re: Praćenje korisničkih akcija u programu. 16.04.2007. u 18:42 · pre 237 meseci #5
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.
Potpis
Do not be a help vampire (http://slash7.com/pages/vampires), use the google.

How to ask questions the smart way:
http://www.catb.org/~esr/faqs/smart-questions.html
http://solair.eunet.rs/~fangor...stions/smart-questions.sr.html
Re: Praćenje korisničkih akcija u programu. 16.04.2007. u 22:49 · pre 237 meseci #7
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.

Potpis
Someone's sitting in the shade today because someone planted a tree a long time ago.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme