Scripted Quality Control

A look at how scripting can enhance LIS function.

By Scott Warner

Once, it was common to post Levey-Jennings (L-J) charts on a wall. After quality control (QC) was run, points were directly plotted and evaluated. Handwritten notes on the charts let others know about problems or corrective action. And the big picture - too narrow or too wide ranges, shifts or trends, or systematic error - was right there. You just looked at the wall.

But modern data management - your analyzer software sending data to your laboratory information system (LIS) - has changed all that. Technicians and technologists are forced to evaluate QC based on a single data point or partial rendering of the all-important L-J charts.

Your LIS may apply Westgard rules, which can help create a mental picture of a chart (the 22s or 41s rules, for examples).1 A 17-inch monitor showing one set of points or one chart isn't a gestalt of many charts. Middleware - software that sits between an analyzer and your LIS - can use rule-based logic to check QC2  and that's become a popular fix for LIS shortcomings.


Computers have a capability in "scripting languages" designed to run repetitive commands. A script simulates a user pressing keys or clicking a mouse. While middleware controls the output of a program - the data - scripting controls the program itself.

Scripting languages are an important part of an operating system, the software that controls the computer, such as JavaScript, PHP and VBScript. Not only are scripting languages likely to be an integral part of your hospital's system, your IT department is probably familiar with programming at least one of them. The important thing to note is that any task the LIS does can in theory be scripted by another program.

For example, imagine a script that prints L-J charts by "pressing" keys and entering the data just like a human operator. Whatever a person can do to your LIS, a scripting language can do, saving time and effort.


Let's suppose that QC is sent to an LIS through an interface. The LIS flags Westgard rule violations, requiring the bench tech to document action before posting. If there is a problem, the L-J chart for each method can be looked at one at a time, but this is time-consuming. Practically speaking, only one point for each control is evaluated.

If the LIS operates in a Microsoft network environment, scripting can change all that. Here's how:

  • Print L-J charts daily in electronic form. An LIS can print the charts, but if they have to be printed one at a time they can't be compared to each other, and if all are printed there is significant delay. A script can run automatically and print them each day to a single PDF (Adobe Portable Document Format, an electronic image of paper) for each chart saved to a desktop in an application like Paperport, a PDF for all charts or both.
  • Print L-J charts on the fly. A script can automate user input at any time, even "reading the screen" to create a PDF of those methods ready to post.
  • Let the LIS tell you what controls haven't been done. An LIS may not know what needs to be run. A script can periodically check control files to see if controls are being run on schedule and create a summary report so techs always know what needs to be done.
  • Create a communications log. If corrective action is entered into your LIS at the time QC is posted, it may be less accessible than the L-J charts. A daily script can "read" the QC stored in the LIS and create a summary report of QC outliers for review. These can be stored electronically with comments attached or printed and put in a binder.

The steps are summarized in the Table. Since scripts run by themselves, there isn't extra work beyond the initial programming. And your IT department likely knows how to program the script. You just need to tell them exactly how a person generates the data.

Table: Status Quo vs. Scripting
Status Quo Scripting
L-J charts printed periodically for review by a supervisor who investigates problems. L-J charts printed daily in electronic form.
Quality control evaluated at posting with single data point, only flagged results evaluated. L-J charts are quickly searched or browsed at time of posting.
L-J charts are quickly searched or browsed at time of posting. A summary report shows what controls haven't been run and which are out.

Scott Warner is lab manager at Penobscot Valley Hospital, Lincoln, NE.


1.Westgard J. QC - the idea. The Westgard QC site.

Available here

2.Bagwell H. Middleware: providing value beyond autoverification. The Medical Device Link site.

Available here. Accessed 2/14/09.

3. Autoit main page.

Available here. Accessed 3/7/9

©Copyright 2013 Merion Matters. All rights reserved.

Log In / Register

Log In / Register