Programiranje - Evidenca prisotnosti

Se je kdo izmed IMojstrov ukvarjal s programiranjem evidence prisotnosti?

Nekaj težav, s katerimi se srečam:
- nekdo se pozabi štempljat ob prihodu
- malica (je zunaj več kot je to določeno v nastavitvah)
- možnost več prihodov in odhodov
- delo čez polnoč
- privat izhod
- dopusti
- bolniške
- nekdo se pozabi štempljat ob odhodu
- ko pride nazaj se štemplja out namesto in (se zmoti pri dogodkih)

Kako prepoznati tiste pozabljene prihode, odhode?
Kako se lotit vsega tega, da ne bodo temelji zasnove gnili?

Podjetje bo kupilo napravico, ki vse to zna seštet in odštet, nima pa možnosti poročil in izbire stroškovnega mesta. Tukaj nastopim jaz in delam na tem sistemu.

Do sedaj so že uporabljali moj sistem, kjer je vsak ročno vnesel prihod, odhod in morebitni skupni izhod. Poleg tega si je v istem zapisu tudi izbral stroškovno mesto za ta dan in vpisal poročilo kaj je počel.

Sedaj pa bom bral iz Access baze od naprave prihode, odhode, malice... dodali pa bomo še dopuste in bolniške v samem sistemu itd...

Se je kdo uspešno lotil takega "naprednejšega" razvoja logike? Lahko postreže s kakimi predlogi?

14 odgovorov

še teh pet minut za čik pavzo bi nam rad uzev? :D

2202

Nikomur ne želim vzeti nič. Rad bi ugodil stranki in ji sistem prilagodil v njej uporabnega.

Meniš da tvoj komentar sodi v to temo?

Ujej, sem pozabil, da je vsako temo z nečim potrebno zapolnit... četudi z neuporabnimi komentarji :)

5

Gogy, mi smo delal nekaj podobnega - brick med evidenco dela in organizacijo/nacrtovanjem delovnih mest.

Po spominu je je bil najbolj problematicni uporabnikova napaka (napacno stempljanje, itd..) - vecino tega se je na roke popravljal AFAIK. Pri obracunih pa vecerno/nocno/nedeljsko delo, s tem da gre lahko tudi za vse od teh.
Kaj konkretno te pa zanima?

Včeraj sem uspel razvit tisti košček logike ko uporabnik pravilno štemplja vse dogodke znotraj istega dne, vendar le v tej meri, da prikaže posamezne dogodkovne pare.

Primer dogodkov iz dogodkovne tabele:
PRIHOD
MALICA
PRIHOD Z MALICE
IZHOD (npr privatni, ki se nen šteje v ure)
PRIHOD
ODHOD DOMOV

Primer dogodkovnih parov za zgodnji primer:
PRIHOD - ODHOD NA MALICO
ODHOD NA MALICO - PRIHOD Z MALICE
PRIHOD Z MALICE - PRIVAT IZHOD
PRIVAT PRIHOD - ODHOD DOMOV

Naslednja reč je razvoj ravno takih kontrol, ki bodo poskusile prepoznati napačne vnose in morda opozorile administratorko, ki bo prav tako ročno popravljala vnose. Ročno delajo tudi pri nas kjer sem zaposlen ker očitno drugače ne gre.

**V največji meri me zanima kako prepoznati napačno štempljanje?

Delate pri vas poročila direktno iz dogodkovne tabele ali delate zapise v drugi tabeli v obliki parov kot sem si sam zamislil?**

Tukaj bo verjetno treba dodelati še nekaj drugih podrobnosti kot je npr večkratno štempljanje za malico in potem odštevanje odvečnih minut, ki presežejo čas malice (čas malice nastavljen v nastavitvah - npr 30min), potem za delo čez polnoč, ker se zaključi drugi dan...

Gogy, mi mamo to tako rešeno da imamo za vsak profil uporabnika, urnike. Torej jaz morem biti vsak dan od 09:00 do 15:00 v pisarni. In če se ne štemplam do 9:00 prileti lahko mail pristojnim ljudem (kadrovski, šefu) in potem se ureja naprej zadeva. Če sem se pozabil štemplat more šef odobrit da sem se res. Če me res ni me pol vprašajo kje sem bil če sem samo zamudil more spet šef odobrit oz se kadrovska odloč kako in kaj. Če me ni več dni me potem vprašajo ali hočem bolniško ali dopust.

Med 10:00 in 13:00 imamo avtomatsko nastavljeno da če približaš čip terminalu te zabeleži za malco isto ko prideš nazaj.

Za izredne dogodke (privat izhodi, službeni izhodi, koriščenje ur) pa je potrebno oddat elektronsko dovolilnico, ki jo šef z klikom sprejme ali zavrne.

Prevečkrat štemplanja se lahko rešiš z timeoutom. Ko se enkrat štemplaš še 5 minut ne moreš več.

1

@Tody, to bi bila enostavna zadeva če bi bilo vse po pravilih. Urniki bi se lahko dodali brez problema in se mogoče tudi bodo. Težavo predstavljajo nepričakovani dogodki.

Problemi nastajajo bolj pri tem ko se kdo pozabi štempljat ali pa ko se pomotoma štemplja z napačnim dogodkom.

Naprava katero bo podjetje kupilo nima sposobnosti prepoznavanja mimoidočih in sortiranja, pravilnega beleženja zaporedja dogodkov (da bo v primeru odhoda na malico znalo reči da je naslednji dogodek prihod z malice in ne to kar je zaposleni pritisnil) ampak samo beleži to kar uporabnik označi ko pritisne kartico

Tukaj mora biti omogočeno več izhodov, več prihodov, večkrat na malico npr prvič 20min, drugič 15min in potem še odšteti teh 5min viška od delovnih ur, ker je prekoračil izhod.

Skratka, naprava samo beleži dogodke, ki jih zaposleni zabeleži ob štempljanju. Za drugo šaro mora poskrbeti logika moje aplikacije, saj bo samo vzela dogodke iz napravine baze in jih obdelala, da bo kazalo pravilne reporte.

1

Kljub temu kar si napisal o njihovem sistemu, lahko ti še vedno, takrat ko tvoj software zazna napačen vrstni red, zraven daš flag, ki ga mora potem nekdo ročno pogledat in ugotoviti, kaj se je z njim zgodilo. al?

1

Treba bo pogruntat nekaj kar bo pilo vodo :) čeprav 100% zaznavanja napak ne bo možno naredit.

1

Imam podoben problem pri eni aplikaciji za spremljanje proizvodnje... teh uporabniških napak enostavno ne moreš 100% preprečiti (predvsem zato, ker zaposlenim precej dol visi, pa še izgovarjajo se lahko na to, da aplikacija ne dela)

Lahko pa preverjaš v smislu, da če je prijavil prihod, da potem logično sledi izhod.
Najbolje, da sestaviš nek graf eventov (relacije), da veš, kateri sploh lahko sledijo izbranemu eventu

Nekaj malega izkušenj s tem imam, lahko mi pošlješ ZS pa predebatirava zadevo

Glavni dogodki pa so PRIHOD, MALICA, ODHOD.

Potek dogodkov je že sestavljen.

PRIHOD-u sledi lahko bodisi MALICA bodisi ODHOD

MALICI lahko sledi PRIHOD Z MALICE (ki je v bistvu kar dogodek PRIHOD - enako kot prihod na delo).

Te dni sem popoldan ko naj bi se temu posvetil sam doma z otrokom, tako da nimam časa študirati naprej... od sobote naprej pa se vrnem na stare tirnice in ponovno lotim.