Building a Barcode System in FileMaker Pro


I had a discussion recently from someone wanting to know how to setup FileMaker Pro with a barcode scanning system. I have setup a FileMaker Pro system called PassTracker that employs barcodes to keep track of membership activity at gyms. I was able to provide him with an overview of how to do this and thought it might be worth repeating for anyone wanting to get started with barcodes. No demo file this time, but hopefully the overview will get you started and through most of the major hurdles.

To employ Barcodes with a FileMaker Pro system, three or four things are required:

  1. A barcode font
  2. A barcode scanner
  3. A FileMaker Pro database system setup to create and input barcodes
  4. Optional – A dedicated computer to scan in the barcodes

Outbound – Sending Barcoded Items out into the World from FileMaker Pro
Install the font on the FileMaker Pro computer, (here are a couple of ‘how-to’s’ on installing fonts on Windows and Macintosh) so that it can be selected, in the same way that fonts such as Helvetica or Times, can be applied. In the FileMaker Pro database, create a serial number field. This serial number field will be the basis of your barcode field. Barcodes require a beginning and end character, usually the star character on your keyboard: ‘*’. Create a calculated field that wraps your serial number field with a star at either end of the field and set it to use the barcode font for display purposes.

Print Bar Code Wrapper

Place this field on a label field layout and print out a set of bar code labels.

Printing options include:

  • outputting to a label printer on sticky labels to apply to equipment
  • printing to plastic card printers
  • batch printing on business card stock, to issue identity cards etc.

Inbound – Bringing Barcoded items back into FileMaker Pro
One way to visualize a barcode scanner is to imagine it as a very fast typist entering a code into the computer. Imagine that fast typist banging away on the keyboard, if no field is selected, FileMaker Pro will simply beep for each keystroke sent. If the cursor is in the wrong field, gibberish will be entered into the wrong fields, potentially corrupting data. This is where a dedicated computer for the barcode scanner can be useful. If the project can justify it, the best possible solution is the purchase of a dedicated computer to receive the barcodes. That computer can be setup to always be in the right field and in the right mode, ready to execute any scripts setup to react to the barcode.

1) Select a barcode font

wpid2996-media_1355854849904.png

There are a number of barcode fonts available to choose from, some quite expensive. Fortunately, there are free versions of the common and useful Code 39 barcode font:

  1. http://www.idautomation.com/free-barcode-products/code39-font/
  2. http://www.barcodesinc.com/free-barcode-font/
  3. http://www.barcoderesource.com/freemacbarcodefontsoftware.shtml

Select a Barcode scanner

wpid2997-media_1355854979686.png

Again, there are many options available in barcode scanners. Select a model that will work for the projects requirements. I have had good luck with a relatively inexpensive model from Metrologic called the Voyager MS9520. This USB model is widely available, straightforward to configure and the units I have purchased have been in service for years with no issues. There are wireless models available as well for more portable scanning.

FileMaker Pro database setup for Barcode scanning

wpid2998-media_1355855483565.png

The example above is from PassTracker, a FileMaker Pro-based system, developed by me (HomeBase Software), designed to keep track of gym membership activities. Each member is issued a pass card with a barcode printed on it. When gym members show up at the gym, they place their card in front of the barcode scanner and it scans them in. A dedicated computer is setup to receive the scanned code. If the customer’s membership has expired, the system will beep a warning to staff and display an error message to the customer to review their purchase.

Outbound – Set up the label to be printed

wpid3004-media_1355858148878.png

Select the field that will display the barcode and set it to use the barcode font. In this case, the field with the barcode font was rotated for space concerns.

Printing out Barcode labels

wpid3003-media_1355858102600.png

This is a layout to print out sheets of barcode cards. It is also possible to print single labels to a label printer. The label printer output is on sticky backed paper that can be applied to equipment or cards etc. Printers are also available to print membership cards on plastic cards, such as the Evolis Pebble.

Inbound – Setting up the FileMaker Pro field for scanning

wpid2999-media_1355856960292.png

When the bar code is scanned into the field, FileMaker Pro needs to do something with the barcode number. According to my handy-dandy reference, the FileMaker Pro Timeline, since FileMaker Pro 10, developers have had the ability to use Script Triggers to trigger an event when something happens in a FileMaker Pro field. If you are working with a version of FileMaker Pro 10, check out some of these plugins to achieve a similar effect.

Configuring the Barcode Scanner

wpid3002-media_1355857443383.png

When setting up the barcode scanner, look for something called a scan Suffix in the Configuration Guide provided with the scanner. Enabling this configuration will add a Tab character to the end of each scan. Back in FileMaker Pro, select the barcode field and make sure that the “Go to next object using” option is set to move out of the field with the Tab character.

Setting up a Script Trigger in FileMaker Pro

wpid3000-media_1355857012626.png

Right click on your field and select “Set Script Triggers…” from the contextual menu that pops up.

Select a Script to react to the barcode being entered into the field.

wpid3001-media_1355857026160.png

The steps that will occur in the scanning process are:

  1. The cursor starts in the barcode field. An ‘On Open’ script can set this up to happen each time the database is opened.
  2. The barcode is scanned using the Barcode Scanner.
  3. The barcode text or serial number enters into the field, with a TAB character added at the end
  4. The TAB character causes the cursor to move out of the field
  5. The Script Trigger is triggered by the cursor leaving the field
  6. The scan processing script (in this example: “Button Triggered Scan”) is initiated
  7. Once the script executes and is completed, the cursor is returned to the barcode field in anticipation of the next scan.

The need for a dedicated computer to handle the barcode scanning

wpid3006-wpid-pricing-php-2.png

In low volume situations, it is possible to get by with a single computer. Every time a barcode is to be scanned, a human being must make sure that the cursor is in the appropriate field, ready to receive the barcode scan. This can work well if all input is to be done in a batch mode. In higher volume applications or when scanning occurs at random times, it is always better to have a dedicated computer setup with the script always returning the cursor to the scanning field after each scan. This allows for an unmanned computer to receive scans as they occur without any human intervention or risk of data corruption if the cursor is in the wrong field.

Return to barcode field at the end of the processing script

wpid3005-media_1355858686010.png

The script in PassTracker uses a global field for the barcode scan. At the end of each processing, the script clears the field and then selects the field, in anticipation of the next scan.

While the script is running, the scanner can send another code to the computer, but it will be ignored until the script returns the cursor to the field. Occasionally the system will beep, but unless the script enters another field during the execution, there should be no impact.

Conclusion: Hopefully this overview will help getting started with using barcodes in FileMaker Pro databases. Good luck.

Update 2013-07-26: I posted a link about this blog post on the ‘FileMaker Pro Users/Developers’ Facebook page. Reader Jason Wood commented that he had had success using Troi’s Serial Plugin with a $26 USB to Serial cable from Cables to Go. He says “With the Troi serial plug-in you configure a script to run if data is received over the serial port, then your script handles what to do with that data.”

The only downside of this approach is pricing. Troi, on their  web site, state that they view the plugin as a specialized plugin and don’t sell single installation versions. The cost to get started with it is to purchase a full cross platform developer license for $999.

2014-01-18 Update: Skeleton Key has a good article on why you might select one bar code font over another.

Related Posts

Bar Code Scanning in FileMaker Pro 13

11 Responses to “Building a Barcode System in FileMaker Pro”

  1. Great article! If you want a barcode scanner that tested to work with FileMaker, go to http://store.zerobluetech.com. We sell Bluetooth and USB scanners and RFID readers. All scanners act as a keybord and tab and enter characters (among others) can be programmed into the scanner. All Bluetooth scanners work with iOS devices, and the keyboard can be enabled with the push of a button. Any questions, contact us.

  2. Ernesto A. Macias January 21, 2013 at 10:30 pm

    I created a filemaker pro 5.5 database, and I want to start utilizing the power of barcoding. Your help on what to do first as to the device needed compatible with FMpro version 5 and a guide on how to start my computer running with this power will be appreciated.

    • Ernesto A. Macias January 21, 2013 at 10:34 pm

      Ernesto A. Macias

      I created a filemaker pro 5.5 database, and I want to start utilizing the power of barcoding. Your help on what to do first as to the device needed compatible with FMpro version 5 and a guide on how to start my computer running with this power will be appreciated.

      Your comment is awaiting moderation.

    • Hi Ernesto,

      The basics of this article are applicable with FileMaker Pro 5.5 as well. The older versions of FileMaker lack Script Triggers, so you will need to use a plugin to get the script to run when the cursor leaves the field. See this link for options that work with older versions of FileMaker Pro http://filemaker-plugins.com/features/script-triggering/.

      Good luck with your project.

  3. It is possible to create barcode in FileMaker Pro with a font or a Native control to achieve this. This Native FileMaker Pro barcode generator plug-in works well!
    http://www.keepautomation.com/products/native_barcode/filemaker.html

  4. You could also use a native app for iPhone ou iPod touch called V-scan and Vscan lite (www.v-hiculemedia.com) with or without an external scanner (lineaPro) . You can then scan from everywhere (without using plug-in or fmp protocol URI) with you Iphone and it will send the data to an hosted FM database that can be query later by your database (as a relation in the database graph) . You need to have access a Filemaker server and install the admin console database file free from our website.

  5. Watchara Yarnu May 22, 2014 at 5:53 am

    Reblogged this on Watchara Yarnu.

Trackbacks/Pingbacks

  1. Building a Barcode System in FileMaker Pro | Filemaker Info - January 2, 2013

    […] See on hbase.net […]

  2. Bar Code Scanning in FileMaker Pro 13 | HomeBase Software - December 7, 2013

    […] Building a Bar Code System in FileMaker Pro […]

  3. QR Codes in FileMaker 12 & 13 — No Plug-ins, No Custom Functions | HomeBase Software - December 18, 2013

    […] Creating and Storing 2D Bar Codes in FileMaker Bar Code Scanning in FileMaker Pro 13 Building a Barcode System in FileMaker Pro […]

  4. No Internet Connection, Can’t use Plugins, Need QR Codes? — Create QR Codes in FileMaker Pro using only Javascript | HomeBase Software - May 11, 2014

    […] QR Codes in FileMaker 12 & 13 — No Plug-ins, No Custom Functions Bar Code Scanning in FileMaker Pro 13 Building a Barcode System in FileMaker Pro […]