MightyData

FileMaker and WordPress Consultants

  • Company
    • About
    • Contact
    • Team
    • Artists
  • Services
    • Consulting
    • Development
    • Our Process
    • Coaching
    • Training
  • Results
    • Customers
    • Success Stories
    • Testimonials
  • Blog

Scanning Barcodes with FileMaker Go – Part 3

January 17, 2013 by Anders Monsen 7 Comments

iMag Pro card reader for iOS

In this third and last post (see Part 1 and Part 2) we look at pulling data into FileMaker Go using magnetic stripe readers. In principle this is very similar to the barcode method. A button in the FileMaker database calls an Open URL script step. This Open URL step calls the iOS app – in this case CardSwipe – and includes a callback function to the FileMaker database to run a script. The script then receives the input from the card.

iMag Pro card reader for iOS

"ccqfm://?" & GetAsURLEncoded ( "fmp://$/" & Get ( FileName ) & "?script=swipe¶m=" )

With the swipe action, instead of URL encoding each character, we tried using FileMaker’s native function – GetAsURLEncoded(), and this seemed to have no ill effects. Once the button is pressed, the iPhone (or iPad) switches over to CardSwipe, which is then ready for you to swipe the card.

Cardswipe app for magnetic stripes

Once the card is read by the iMag device, it immediately switches back to FileMaker and runs the “swipe” script, which reads the data. Each card that is read encodes its data differently, so extracting information is a matter of trial and error, and the text parsing process must be coded specifically to each card. Characters like “^” often separate key pieces of information. Credit Card numbers get picked up, so security becomes an issue once you read these, as storing the numbers is never recommended. Once again we split the scripts into three separate pieces to assist with any troubleshooting.

  1. A button calls the first script, which has one purpose: Perform script #2
  2. This script opens the iOS app using the Open URL script step, which has a callback to script #3
  3. The script that receives the data, using a script parameter in step #2

Issues that arose in this process centered around getting the proper URL. Luckily CardSwipe has great developer documentation. However, in the example, the one that referred to a local file (vs. one on the server) used the tilde sign instead of the $ sign, which looks for a file on the device, rather than an already open file. This sometimes caused issues with locating the right file, but when switched to the $ sign the callback worked seamlessly.

The iMag Pro hardware is attached to the iPhone through the USB connectors at the bottom. I found that this connection doesn’t remain firmly seated in the iPhone 4, but works well with an iPad. The iMag came with an adapter that is supposed to allow it to stick more firmly on the iPhone, but this didn’t work with the 4 model. If the card reader doesn’t separate from the iPhone or iPad, this method is perfect for quickly reading data from a card with a magnetic stripe.

Conclusions

Getting data quickly into an iPhone/iPad by scanning barcodes or reading cards with magnetic stripes makes your process mobile. This method can be used to not just for credit card actions, but any card that can be swiped, such as ID cards. Once the data is in your app, the next question is, “what’s next?” Some time back I wrote about building a real world FileMaker app using barcode scanning and Insert from URL to reach out to external databases and pull book information using just the barcode. You also could use this process to scan people for admission to events, read student information during school lunches, or attendees at a conference. Card readers might offer ways to get data about employees, build a POS device, and check drivers licenses or insurance card for medical offices. With a small investment (or in the case of pic2shop – no cost whatsoever) your business can be set up to read data using iPhones without having to type in data, speeding up the process and eliminating typos.

Filed Under: Barcodes Tagged With: FileMaker 12, FileMaker Go, Magnetic stripe

Using Barcodes and Magnetic Stripes with iOS

October 10, 2012 by Kirk Bowman 10 Comments

Scanning / swiping iOS prototype

The other day, Anders Monsen and I were prototyping a custom iPad app to help a stage company manage work crews for large arena events. Each event has multiple shifts (7am, 7:45am, 8:30am, etc.). At the start of each shift, several employees need to clock-in quickly and receive their work assignments.

We researched two ways to identify an employee with an ID card: scanning a barcode and reading a magnetic stripe. We found three apps in the App Store that can integrate with FileMaker Go, two for scanning barcodes and one for reading a magnetic stripe using a third-party card reader.

I really enjoy exploring the usability of a solution during prototyping. In this article, I will share some of my observations for this use case. Anders will explain the technical side of integrating FileMaker Go and iOS apps with URL scripting in a separate articles.

Observations

For the prototype, we created a simple layout with two buttons, Scan and Swipe. The purpose of each button is to switch to the companion iOS app, perform the scan/swipe, and return the data to a text field in FileMaker Go.

Scanning / swiping iOS prototype

Scanning / swiping iOS prototype

Some of my preliminary observations include:

  • Holding the iPhone – I am right-handed so I visualize the user holding the device in his left hand and the ID card with his right. I liked cradling the iPhone in my left palm (portrait orientation), allowing my thumb to tap the buttons.
  • Holding the iPad – With the iPad, weight is the determining factor. I liked balancing it with my hand halfway between the top and bottom edges (portrait orientation). Again, my thumb was available to tap the buttons.
  • Button Design – Larger buttons that are easier to tap. I made the button height 50 points for the iPhone and 72 points for the iPad. To tap a button with a thumb, I made the buttons extremely wide, 75% of the iPhone screen and 85% of the iPad screen.
  • iPhone Case – For this app, a case cannot block the camera, which scans the barcode, or the dock connector, which connects to the third-party card reader. A thin case like the Fitted for iPhone 4 from Speck works nicely.
  • iPad Case – Besides working with the camera and dock connector, a case will need to help the user grip the iPad. A thin case with a rubber texture like the NGP Semi-Rigid Shell from Incipio is a good match.
  • Camera – For scanning a barcode, the device needs a good auto-focus camera. For this solution, we need either an iPhone 4/4S/5 or Retina display iPad. Of course, reading a magnetic stripe does not have the same requirement.
  • Barcode App – For scanning barcodes, we tested pic2Shop (free) and CNS Barcode ($9.99). I selected CNS Barcode because it is designed for FileMaker Go, scans more accurately, and supports scanning several barcodes in rapid succession.
  • Mag Stripe App – Reading a magnetic strip requires an app that can communicate with an external card reader and supports URL scripting. CardSwipe ($15.99) is designed for FileMaker Go and is the only app we found that meets these requirements.
  • Card Reader  – The iMag Pro MagStripe Reader ($60-$70) is the only card reader that CardSwipe supports. It plugs into the dock connector on the iPhone and iPad. So far, my only concern is it can become slightly unseated when aggressively swiping a card, especially with the iPhone.

In the end, our customer decided to scan barcodes with CNS Barcode. And, now we have knowledge of using magnetic stripes for future projects.

Filed Under: Barcodes Tagged With: CNS Barcode, FileMaker 12, FileMaker Go, Magnetic stripe

Scanning Barcodes with FileMaker Go – Part 1

October 8, 2012 by Anders Monsen 10 Comments

This is Part 1 of a 3-part series.

A smartphone today does far more than make calls. With a variety of apps available we have access to a world of information at our fingertips, or hours of distraction. Productivity is vital from the business side of mobile computing. Reading and storing data is one powerful aspect, but collecting data on the device makes our information interactive. Getting data on to the device quickly and error-free becomes imperative for any business.

FileMaker Go is a perfect tool for storing data on a iOS device like the iPhone and iPad. But, the lack of a physical keyboard makes data-entry a slow and tedious affair. Scanning bar codes or reading magnetic cards like credit cards, drivers licenses, and so forth, enables fast access to data. This three-part article first will discuss the requirements to pull data into FileMaker Go from an iOS device, and then demonstrate two different methods of adding data.

First, your iOS device will require some software and hardware. FileMaker Go is free, though you will need to develop your database using FileMaker Pro on the desktop. To read bar codes I have used two different apps. One, Pic2Shop, is free and performs its task fairly well, though it is limited to scanning one item at a time. CNS Barcode costs $9.99, but adds a variety of features such as multi-scanning, and also can create bar codes.

To read magnetic card strips the cost climbs. You will need a paid iOS app ($15.99), CardSwipe, and a small device that plugs into your iPad or iPhone (this was tested prior to iPhone 5), such as iMag Pro, around $60. With iMag Pro you can run cards through the reader from the context of the CardSwipe software.

The glue that binds the app and FileMaker Go database is called a URI scheme or protocol. When you build your FileMaker app (you’ll have to wait for part 2!), you create scripts that call the iOS app with their URI scheme. In that URI scheme you then have a callback action to FileMaker using its URI scheme, indicating the database name and the script to run.

With the exception of Pic2Shop, you must pay for the companion app. In part 2, we’ll switch over to FileMaker and see how to set up the database, and how to pull in the data without typing a single character by scanning a barcode. Part 3 will cover reading information from magnetic strips, such as drivers licenses or credit cards.

Filed Under: Barcodes Tagged With: CNS Barcode, FileMaker 12, FileMaker Go, Magnetic stripe

Let’s get started on your project.

It will be more fun than you think.

Get in Touch

  • Company
  • Services
  • Results
  • Blog

Copyright © 2023 · Parallax Pro Theme on Genesis Framework · WordPress · Log in