The Hoju Saram

Wednesday, November 15, 2006

Timesheet Single Page application

(For reference a “single page application” or SPA is a fully functioning web application contained in a single html file )

In a previous post I talked about creating a SPA timesheet(this is an based on one of the commercial timesheeting applications I have written). I have now completed a test version of this and it is available here. It will work in both firefox and Internet Explorer.

You need to right click on the link and select “save target as” , or “save as..” and then save the file to a local drive ( Make sure you don't use Save from the file menu as it will mangle the file). Once it is saved you can then open it with a browser window.

Basically this is a full functioning timesheet that can self-replicate and support some nice business logic. It also supports many preferences so it can be programmed for flexible business rules.

The next stage of this will be to create a site where users can login set their prefences and then download a customised version of this file with all there preferences set.

This preference data will then persist across all create timesheets and controls the logic of how the timesheet looks and performs for the user. These preferences are things like:

1 ) Name, employee number, text info about where they work etc
2 ) Whether they have Flexible/Bank hours, Toil and/or Overtime
3 ) There hours required for each day for a 4 week work cycle.
4 ) The date they want to start
5 ) The types of leave they are allowed to take.
6 ) The date format they want to use DDMMYYYY or MMDDYYYY.

With these preferences the web site will generate a html file that the user can download (just like the file above ). The user can then use this file to create new timesheets ( every week ) without the need to return to the website unless they need to change any of their preferences.

The great part about this system is that it is simple to deliver applications this way and you can write some pretty nice application where the users only require a browser and as all of the data and logic is self-contained you don’t even need to be on-line to use it. It also can be multi-OS if written correctly.

Extending these application to allow them to interact outside the container of the web page is possible by using AJAX.

Now I just need to think of another idea of how this can be used for another type of application.

Labels: , ,


Post a Comment

Links to this post:

Create a Link

<< Home