You are here:   Blog
Register   |  Login

 

Nov 15

Written by: Delordson
Fri, 15 Nov 2013 23:37:03 GMT  RssIcon

LightSwitch is the fastest way to build line of business applications and we have the Apps to prove it! This post is part of a series showcasing the use of LightSwitch in Visual Studio 2013 to build html5 single page applications.

Welcome to the LightSwitch html5 Training Manager App:

image

 

 

The Training Manager App is a tool for managing internal employee training requirements. The Training Manager App allows organisation to define a series of training courses and then assign employees to those courses, offering them the opportunity to book training sessions and track training as it takes place.

This is a fully featured complete LightSwitch html5 line of business application which you can extend and adapt to your specific needs. The source code is now available priced at just just $9.99.  Get your copy now.

The Training Manager demo can be accessed on windows azure at http://delordson.cloudapp.net/TrainingManagerApp/htmlclient/. To get the most out of the demo add yourself to the Employees table once you’ve logged in! Join the conversation by leaving a comment to this post for any suggestions of thought about the Training Manager App.

 

Modules

The Training Manager App Home Page is laid out in two tabs, a Menu tab and a Settings tab. The Menu tab is used to access the primary modules which include the Manage Courses Module,  the My Courses Module, the All Training Records Module, the My Training Records Module and the Training Sessions Module. The settings tab is used to access the Employees, Employee Groups, Employee Job Roles as well as the Course Statuses.

 

These modules are supported by a mature database schema…

image

 

…and key validation and business rules. These include:

 

  • All Employees must belong to one and only one employee group
  • An employee can have multiple job roles
  • Employees can be assigned individually to training courses
  • An Employee Group can also be assigned to a training course. When an Employee Group is assigned, all employees in that group are automatically assigned to the Course
  • Finally a Job Role can be assigned to a training course. When a Job Role is assigned, all employees with that job role are automatically assigned to the course
  • There is built in validation logic that prevents a training completion date from being set to a date earlier than the training commencement date
  • An email is automatically sent to an employee as soon as they are assigned to a course
  • A training record is created for an employee as soon as they are assigned to a course
  • When assigning employee to course, a target completion date must be set
  • It is not possible to set a training completion target that is earlier than the date training is assigned
  • The course administrator can organise an unlimited number of training sessions for a course
  • Validation logic does not allow a training session end date to be earlier than the start date
  • Each session must have a max permitted number of attendees. Training Manager does not allow more students to be assigned than is set for course capacity

 

Access

Access is controlled through a log in screen. The administrator uses an associated Silverlight application to configure new users, create roles and permissions for those roles as well as to assign users to roles.

screenshot_11122013_191803

 

The Home Screen Menu Tab

Access to all the key users features of the Training Manager App is from the home page Menu Tab. From here, users can navigate to the ‘Manage Courses Module’, the ‘My Courses Module’, the ‘All Training Records Module’, the ‘My Training Records Module’ and the ‘Training Sessions Module’.

screenshot_11122013_192043

 

Manage Courses

Clicking or tabbing on the Manage Courses button takes the user to the ‘Browse Courses’ Page. On this page, the user of presented with a list of all Courses. A search box is present for quickly navigating to a required Course.

 

screenshot_11162013_070146

Clicking or tabbing on any Courses listed takes the user to a page for managing that Course. This page provides for full details of the Course, including status and version.

The page is laid out in a series of tabs. The first tab presents key information about the Course such as its reference code, title, description, version number and status.

screenshot_11122013_192254

 

Of course the built in LightSwitch validation of required fields and field lengths works great as expected…

screenshot_11162013_060309

 

…but we’ve also added business logic where it makes sense. So you can’t add employees to a training session if the maximum number of attendees has been reached for instance. More on this later.

 

screenshot_11122013_192355

 

The Employees tab allows the user to assign individual Employees to a training course.

 

screenshot_11122013_192302

 

Each employee can have multiple job roles. The Job Roles tab allows the user to assign a job role to a training course. When a Job Role is assigned, all Employees with that Job Role are automatically assigned to the course.

 

screenshot_11122013_192306

 

Each Employee belongs to one and only one Employee Group. The Employee Groups tab allows the user to assign an employee group to a training course. When an Employee Group is assigned, all Employees with that job role are automatically assigned to the course.

screenshot_11122013_192310

 

All Employees who are assigned to a training course, whether assigned as individual Employees, through a Job Role or through an Employee Group, get an email alert.

 

image

 

Finally the Training Session tab allows the course administrator to lay on a number of sessions.

screenshot_11122013_192315

 

Clicking or tabbing on a session opens the Session details screen. This screen is laid out in two tabs. A details tab showing the start and end times as well as the max number of attendees…

 

screenshot_11122013_192321

 

…and an Attendees tab used to book attendance.

screenshot_11122013_192327

 

Business rules prevent further Employees from booking if the maximum number of attendees has been reached.

 

screenshot_11122013_192355

 

 

My Courses

The My Courses Module presents a list of Courses that the logged in user has been assigned to.

screenshot_11162013_070153

 

Clicking or tabbing on any of these courses takes the user to the same course details screen described above…

screenshot_11122013_192210

 

 

All Training Records

The All Training Records module provides a list of all training records in the application. A training record is created by the system each time an Employee is assigned to a training courses. This is the case whether the Employee is assigned directly or is assigned through a Job Role or through their Employee Group.

screenshot_11162013_071008

 

Clicking or tabbing on any of these opens an edit screen allowing the user to record training details.

screenshot_11162013_072606

 

 

My Training Records

The My training Records module provides a list of all training record for the logged in user.

screenshot_11162013_072544

 

 

Clicking or tabbing on any of these opens the same edit screen described above.

 

Training Sessions

The Training Sessions module provides a top level list of all training sessions across all training courses allowing the user to quickly browse to a required session.

screenshot_11162013_072550

 

Clicking or tabbing on any of these finding actions opens a the same Training Session details screen shown earlier.

 

Settings

The Settings Module is the key module used by the administrator and any other users given the right permissions for managing key application reference data. The Settings module is accessed by clicking or tabbing on the Settings tab on the home page. This takes the user to the settings page.

screenshot_11122013_192050

 

The main items managed are the Course Statuses, the Employees Groups, Employees and Job Roles.

 

Course Statuses

screenshot_11122013_192101

 

Employee Groups

screenshot_11122013_192107

 

Job Roles

screenshot_11122013_192114

 

Employees

screenshot_11162013_073443

 

Clicking or tabbing on an employee takes the user to the Employee details screen. The screen is laid out in two tabs. A details tab and a Job Roles tab. The details tab shows the Employee name as well as the Employee Group they belong to.

screenshot_11122013_192130

 

An Employee can only belong to a single Employee Group…

screenshot_11122013_192139

 

The Job Roles tab show the list of Job Roles the Employee has. An Employee can have multiple Job Roles…

screenshot_11122013_192143

 

Summary

The Training Manager App is a fully featured complete LightSwitch html5 line of business application which you can extend and adapt to your specific needs. This is a fully featured complete LightSwitch html5 line of business application which you can extend and adapt to your specific needs. The source code is now available priced at just just $9.99.  Get your copy now.

Don’t forget to try out the demo on windows azure at http://delordson.cloudapp.net/TrainingManagerApp/htmlclient/. To get the most out of the demo add yourself to the Employees table once you’ve logged in. Finally please join the conversation by leaving a comment to this post for any suggestions of thoughts.

Thanks

Delordson

Tags:
Categories:
Location: Blogs Parent Separator DELORDSON

Microsoft Visual Studio is a registered trademark of Microsoft Corporation / LightSwitch is a registered trademark of Microsoft Corporation