Timesheet Application
Screenshots:
Click on any of the images below to see a larger view.
Summary
The Timesheet application is an ASP web app with an Access Database behind it. It allows users to enter their time spent on each project by week, and receive manager approval of those entries. The system also ties all timesheet entries to project contracts for monthly billing and paychecks.
Approach
The first step in creating this application was to accurately map the business processes. We needed to define what was done for billing each month. We created a master list of projects and contracts to be stored in the system.
Solution
The final product was centered on a timesheet entry page that was viewed like a calendar. Each column was one week in the fiscal month, and each row was a project. After users finished saving their hours, they could submit them for approval. The system would generate e-mails to managers informing them that hours needed approval. We also designed reports that tied project hours to contracts. This greatly reduced the number of hours spent on billing each month.
Technology
The site combines HTML, ASP, Javascript, VBscript, and SQL queries. Most content is generated dynamically based on the user type and event.
Results
We now spend 80% less time on billing each month and have a master record set of user-hours/projects/contracts.
What I Learned
The greatest problem to overcome was the timesheet form itself. A user needed to be able to dynamically add rows to a table (one row for each project) without refreshing the page, because that could cause them to lose any unsaved data. The implemented solution was a set of javascript functions which would traverse a web page and increase the number of rows in a table as needed.
