Automating Healthcare
Solving business problems with savvy automation


Business problem
Thousands of employees at more than fifty locations, in a half-dozen divisions and more than a dozen payrolls, are submitting paper timesheets every week. These must be printed, distributed, completed, signed, collected, and couriered to the payroll department in time to process each payroll. The results are predictable: a high percentage of timesheets do not arrive in the payroll department on time; errors occur as payroll staff input the timesheets to Meditech payroll; and, a high rate of manual checks and retroactive adjustments consume payroll staff time.

Divide and conquer
Automating timesheets was the top priority from finance for the new web development group. We agreed that we should divide the project into two phases, with salaried staff in the first phase and hourly staff in the second.

The basic process for submitting a timesheet is the same in every company: stipulate the number of hours worked each day, and the category of pay (regular, overtime, paid time off, etc.). Designing a user interface for salaried workers was not terribly complicated. The hard work was on the "back end" — developing an automated process to get timesheet data into Meditech payroll (more later about this).

Phase one: salaried staff
The current, automated timesheet for a salaried employee looks like the image below. By default, it displays:

  • the current pay period for that employee (either weekly or biweekly);
  • whether the current timesheet has been approved; and,
  • a list of all departments in that employee's division (defaulting to the department for the employee's primary position).
  • Note: the toggle between "[overtime] eligible" and "not eligible" views was added in phase two, described later in this article.
  • Note: "View benefits hours" is described in another article.

Completing the timesheet
The employee completes the timesheet in one of two ways:

  • select paycode(s) and input hours for one day at a time (shown below); or,
  • select the "short-cut" at the bottom of the timesheet (shown above), which auto-fills every weekday with 8 hours of regular time.

The paycode list is specific to the individual employee's division and payroll. When a paycode is selected for a day, another row is automatically revealed, and a delete option is displayed for each selected paycode (shown below). For each selected paycode, the user must input a number of hours for that paycode for that day.

When the "short-cut" at the bottom of the timesheet is used, and every weekday is filled with 8 hours of regular time, the employee must edit the paycode for any days not at work. Someone who works less than full time must also edit the hours for each day.

When finished and submitted, the confirmation screen (shown below) shows the hours that were submitted for that payroll.

Changing a timesheet
The employee may change his/her timesheet at any time until the timesheet is approved. If a timesheet must be edited after approval, the manager first must "unapprove" the timesheet. Then the manager or employee may make any edits, and the timesheet must be re-approved.

Timesheet for another employee
The responsible manager for any cost center may grant any other employee permission in one of two roles:

  • manager (can approve timesheets and submit timesheets for anyone in that cost center)
  • superuser (can submit - but not approve - timesheets for anyone in that cost center)

New employees
There typically is a delay of a couple weeks before a new employee is active in Meditech payroll. During this period, the new employee will not be able to use the regular Timesheet process. Instead, a "manual timesheet" may be submitted for the employee using essentially the same on-line process. First, a special screen collects the information that normally would already be displayed:

  • employee name
  • cost center
  • payroll
  • contract

Then the regular form (described above) is used to submit hours for the pay period.

A series of e-mail reminders are automatically sent every week:

  • At 7AM and 4PM on the last Friday of a payroll period (either weekly or biweekly), each employee whose payroll ends that week receives an e-mail reminder to complete their timesheet
  • On weeks with no holiday, on the Monday following a payroll period each person holding manager permission for a cost center with unapproved timesheets receives up to three e-mail reminders to approve the timesheets — at 7AM, 11AM and 3PM.
  • On weeks with a holiday, the reminders to approve timesheets are sent several times on the morning of the transition to a new pay period (see Pay periods below).

Approving timesheets
Anyone with manager-level permission for a cost center may approve time sheets for the cost center. The approval screen (shown below) lists all timesheets submitted for that cost center (missing timesheets have zero hours as shown), and allows three actions:

  • click the "short-cut" at bottom left corner to select all timesheets for approval;
  • select individual timesheets for approval; or,
  • click the name of an employee to review the detailed timesheet and modify the timesheet if necessary, before being returned to the approval page.

Pay periods
The transition between pay periods occurs automatically at 4pm on Mondays, on weeks with no holiday:

  • all approved timesheets are queued for loading into Meditech payroll;
  • employee timesheets are reset to zero for the next pay period; and,
  • loading approved timesheets into Meditech payroll begins.
  • On weeks with a Monday holiday, the transition between pay periods occurs on Tuesday morning at 10AM.
  • On weeks with a non-Monday holiday, the transition between pay periods occurs on Monday morning at 10AM.

Loading data into Meditech
The real challenge was getting timesheet data into Meditech. Bill created an automated process to emulate a Meditech user and "script" each timesheet into the payroll module. Unfortunately, scripting is inherently unreliable, and the weekly process required baby-sitting. Timing was critical, delays were unacceptable, and the process had to be restarted immediately when it failed.
At best, the scripting process required four to five hours to run, and it was not unusual for it to run through the night.

The tyranny of this weekly process continued for a couple years until we were able to implement a "mailbox" in Meditech payroll. This allowed us to simply drop a file with the timesheet data in a designated spot, and Meditech automatically imports the file. Instead of taking all night, the mailbox process now takes less than a minute!

Phase two: hourly employees
With a rock-solid process for salaried employees, it was time to tackle the rest of the organization. An alternate view of the timesheet was created (shown below), keeping the basic process of hours and paycodes for each day the same. Because hourly timesheets can be more complicated, we added two tools to speed the process:

  • Copy last timesheet (with one click, loads all hours and paycodes from most recent timesheet into current timesheet)
  • Wizard (described below)

To document actual hours worked during a shift, "In/Out" fields were added (shown below). Depending on department practice, a worker might record "In" as arrival at start of shift and "Out" at end of shift. Alternatively, they can use the "+" button to add rows and document every break in work time until end of shift.

Because shift workers may have several paycodes relevant to each shift, we added the "Wizard" tool (shown below) to simplify the process. Instead of having to select each paycode separately and input hours for each paycode, the worker can input hours for the shift once, select all relevant paycodes, and submit everything at once.


  • Although we never tried to quantify the impact on payroll, automated timesheets gave the department's staff a huge boost. Instead of chasing missing timesheets and chronically tardy managers, they could focus on more important issues.
  • Staff and managers love the automated process. There is never any question about exactly what was submitted or whether a batch of timesheets actually made it to payroll.

Lessons learned

  • Even departments where staff do not use computers, such as nutrition or maintenance, can easily use automated timesheets. Non-computerized staff use departmental paper timesheets and a department administrative person quickly inputs to automated timesheets.
  • We should have pushed harder, sooner, to find a better way to get data into Meditech payroll. The benefits of automation were so substantial that we were willing to deal with weekly pain from the scripting process, but quite possibly we should have found the "mailbox" solution sooner.

Posted 16 June 2008


Custom Applications
ADT Event Alerts
Clinical Operations

Integrated Clerkship

On-call Schedules
People Profiles
Chronic Disease

Security Badge Requests
Charge Capture
Mental Health Treatment
      Plan Tracking

Earned Time Calculator

Supervisory Tree
E-mail Distribution Lists
User Access Requests
HR Requests
Employee Health &

Interpreter Dispatching
Generic Patient Registry
Conference Room

Tuition Reimbursement
Equipment Rental
Code Cart Tracking
Nursing Audits

Show me the data
Growing a Data

Building a Data Portal
Reporting on Full Auto

Intranet Design
Driving With Databases
Speeding with Static

Transparent Security
      and Permissions

Redesigning the

Who works here?
Organizational buckets
System access: Who
      has what?

System access: Use
      it or lose it

Integrating Security

Integrating Provider

Creating A Supervisory

Data Quality Dashboard


RSS Feed