Jag har fått i uppdrag på mitt jobb, att skapa en tidsrapportering för våra
anställda. Jag är lite osäker på hur jag skall bygga upp det.
Så här tänker jag.
Jag bygger via en datagrid, tar reda på hur många dagar det finns i månaden,
plocka bort lör-söndag. Varje gång som det är en ny månad, så skall
datagriden rensas, och en ny byggas upp. När det gäller databasen så
tänkte jag ha en många till många relation, därför att det blir ju många
tidsrapporter per år för varje person.
Hur verkar det här, är jag helt ute och reser eller? :stud
När vi byggde en för flera år sedan så utgick vi lite från Time Tracker Starter Kit, dock är den inte uppdaterad så kör fortfarande ASP.NET 2.0 vilket är lite utdaterat, men du får i varje fall en liten idé hur det kan se ut och vara uppbyggt.
Nu har jag ju aldrig använt asp.net, men jag skulle ju inte ha byggt upp databasen efter tidrapporter, utan bara lagrat datum, person och hur han/hon jobbat.
Utifrån det är det naturligtvis lätt att plocka ut en tidrapport, för det är ju bara att hämta alla datum i en viss månad, men det är ju precis lika lätt att hämta ut hela året, förra veckan eller precis vad som helst beroende på vilka behov som uppkommer.
Jo tanken är att när man har kommit till den 1:e i varje månad, då skall man kunna få ett nytt "blad", när jag vill hämta gammalt då hämtar jag ut efter månad, det var så jag tänkte.
Jag skulle nog inte tagit bort lördagar och söndagar, det finns fall där man kanske är inne och jobbar dom dagarna och vill rapportera tiden på dom dagarna.
Har gjort en enkel tidrapportering för en liten grupp och byggde databasen med tre tabeller.
Tabel 1: 6 kolumner: Id, UserId, ProjektId, StartTid, SlutTid, Kommentar
Tabel 2: 4 kolumner: Id (mappas till UserId i tabel 1), konto, lösen, email
Tabel 3: 2 kolumner: Id (mappas till ProjektId i tabel 1), Projektnamn
Att ha en datagrid som grund tycker även jag är fel utgångsläge.
Det som är intressant med en tidrapport är kunna välja ett visst projekt och sedan se hur mycket tid som lagts på projektet, för att på så sätt se om det blev vinst eller förlust i slutändan! :)
För att åstadkomma detta behöver du lämpligtvis ett formulär med start- och slutdatum, alt. startdatum + timmar och minuter. Du bör även koppla tidredovisningen till ett projekt som i sin tur kopplas till en kund.
Då kan chefen enkelt välja ett visst projekt för att se hur mycket tid som gått åt och fundera på om han ska börja bli orolig eller ej! :)
Jo visst är det säkert jättebra med en gridview men det är som sagt inte det du ska fokusera på i första hand. Fokusera först på att ta fram en domänmodell/datamodell.
Som jag ser det nu, så fär jag dela upp det i två delar, en gridview där närvarorapportering och frånvarorn kan administreras. Därefter enligt doggelito för att
kunna lägga in uppdragen. Jag hadde först tanken på att ha allting i gridviewn men det
blir nog för klutrigt.
Jag är jättetacksam för era tankar och förslag.
128 ms totalt · 3 externa anrop · v20260731065814-full.25f56b17