BarCode Buddy


Flu jabs are the quintessential conveyer belt system in general practice and the idea is to get through as many patients in the shortest amount of time while still maintaining safety. The non modifiable factors are not on the patient side eg it’s hard to tell a lovely elderly lady to hurry on and show her arm as you have 20 patients waiting behind her but gains can be made in entering the data in a quicker way. Even shaving 30secs to 1 minute is heaven in this scenario. This is the concept which Mark Essop came up with and I take no credit for this whatsoever.

Barcode Buddy is built on this absolutely brilliant document from Mark Essop and this blog is not to take any fire away from this document. Indeed I’m not planning to repeat any of what he’s written. This app has a specific purpose within the workflow at the time the flu jab is given.

The idea for Barcode Buddy came from a natural workflow need to be able to quickly print out barcodes onto label printers mainly for the flu jab in realtime with the patient not requiring to bring their barcoded NHS number. We plan to implement this in our surgery this flu season but I thought I’d take the extra effort to make it deployable for general use and consumption.

Barcode Buddy avoids the need for the patient to bring a barcoded document with their NHS number.

Barcode Buddy is provided free of charge but does include some advertising. If you notice any bugs or issues please contact me on the Emis Facebook forum or via the links to my other apps.


The problem with implementing flu clinics using barcodes is that you have to rely on the patient to bring the ticket with the barcode to be scanned. Using Barcode Buddy will hopefully alleviate this dependence. It can also be used moving forward for any situation where you need to bulk see patients eg for the 50-64s in November and for the (hopefully) upcoming Covid Immunisations.

You can also be totally disconnected to EMIS and use a laptop with Barcode Buddy installed with the patient data primed and ready to go. Once you’ve created your list you can upload it to EMIS at a later date via batch coding.

I see 2 case scenarios when using Barcode Buddy

  • In a room, before entering the flu jabber while waiting in the queue the admin brings up the patients details using Barcode Buddy on their computer. They then have 2 options
    1. They can scan the NHS Number from the computer screen directly into the text document to record NHS Numbers. They need to make sure the text document is in focus otherwise the NHS Number will be sent to whatever the current application is.
    2. They can print out the Barcoded NHS Number onto a label printer which can be scanned by the flu jabber prior to administering the jab.
  • Whilst in the clinic the flu jabber brings up the patients Barcoded NHS number using Barcode Buddy installed on their computer and scans this into the text document directly. Although a bit more work for the flu jabber they can make sure the flu jab is recorded for the intended person.


You need the following, some of which is covered in Mark’s document

A PC with .net 4.72 installed.

All Windows 10 PCs should have this installed and most Windows 7. If there an issue please contact your IT department.

A Barcode Scanner

There are several on the market. I don’t think it matters which one so long as you install the corresponding barcode font. We use the Newland HR22 in our surgery.

When you connect the barcode scanner to the computer it just works and windows sets everything up. You do not need any additional software. The scanner just pushes text to the screen as if it was you typing on the keyboard.

Installed compatible Barcode Font

The Newland HR22 uses the Codabar font but one of the more common compatible font is 3 of 9. Just make sure you get the right font for your scanner.

I thought I’d write a paragraph on how barcodes work as they are very easy. Barcodes are just a special type of font which each character represented by lines which can be read by the scanner. The only caveat you have to understand is that there needs to be a defined prefix character and suffix character so the scanner knows which bits in between the characters you would like scanned. This is scanner specific. So for the NewLand its A<Whatever you need to scan>B. The A and B also need to be in the barcoded font. For other scanners it’s *<Whatever you need to scan>* or *x. Again this is covered in Mark’s document. In BarCode Buddy you’ll see I’ve allocated a text box for you to define your prefix and suffix characters.

To install the font download the appropriate font from the link above and extract to a folder on the desktop

Goto this folder and right click on the font then click on Install or install for all users. You might need admin rights to do this

A Label Printer

Again I don’t think it matters which one you use. We have the Dymo Labelwriter 450 which we’ve tested Barcode Buddy with. If you are having difficulties printing with any other label printer please let me know and I’ll see if I can fix this.


There are 3 ways you can install BarCode Buddy. Make sure you run any patches before using.

Via an install file


Just click on the link, download and run the file. It will automatically create and icon on the desktop and install BarCode Buddy and you are good to go

This icon will automatically appear on the desktop

Via a zip file


Extract in a folder on the desktop and run barcodebuddy.exe within this extracted folder. This is the most unreliable way but will probably work so long as you have .net 4.7.2

Via your IT department


Please contact IT and give them this link as they can deploy to your PC remotely. Please inform them to set the correct permissions on the Barcode Buddy Folder (C:\ProgramData\BarcodeBuddy)

If you are met with this screen when you try to run

Right click on the downloaded file and click on properties. Then tick on the unblock check box to unblock this file so you can then run it to install BarcodeBuddy


Create the Export

The way Barcode Buddy works is that it requires a manual export from EMIS of the currently registered population which it uses to suck up the patient demographics to use. You need to set this up in EMIS using the Search found in the Barcode Buddy Folder. You can also find it here

You only need to set up the search once

Goto EMIS -> Population Reporting -> Your Surgery and choose a folder.

Click on the import button on the top

Choose Currently Registered file in the Barcode Buddy Folder for from here

Once imported in you will use this Search during the Workflow

Set up the Font

As stated above you need to install the compatible barcode font for your barcode scanner. We use Codabar in our surgery but 3 of 9 is also very popular. You might need admin rights to install these fonts so ask IT if you have problems.


Going down each section

  • The top box allows you to choose a patient. You can type in the FirstName, Surname or Date of Birth and it will Autocomplete for you
  • The next Drop Down menu helps you choose your font
  • The next Drop Down menu helps you choose your local printer
  • The Prefix allows you to add a Prefix to the Bar Code
  • The Suffix allows you to add a Suffix to the Bar Code
  • Label Printer will help with the orientation of the print so tick this box if printing to a Label Printer
  • Add 0 to Suffix will add a trailing 0 for 3 of 9 font to create a carriage return on screen
  • Print Label will, you guessed it, print the label.


Before the session starts get the most upto date list.

Goto EMIS and choose the search created above.

Click on View results then export as csv

Copy this csv file to the desktop. Do not rename it.

Run BarCode Buddy!


Hopefully, you will find this application useful for the specific scenario of obtaining NHS Numbers efficiently during the clinic. Once obtained you can batch import them into EMIS.

Good luck!

Categories: C#, NHSIT