Barcodes “magic” revealed – part 2

  • Comments 1

Ok, in previous part I described how barcodes could be used. But to use barcodes, you need to understand, how it works. I mean, how it works on physical layer. Of course, I will not talk about how the black&white or color lines/dots are translated into data, but about possible hardware you can use. Of course, in context of Microsoft Dynamics NAV. We will start with simple one:

Keyboard scanner

632425133this type of scanner is connected directly into PC through USB port (not long ago it was connected through PS/2 port used for the keyboards). It works as common keyboard, but you cannot type on it. You can only scan the barcode and the scanner will “type” the data where the cursor is. This kind of scanners are cheap, you can find different models on the market, able to read 1D and 2D codes, connected through wire or through Bluetooth etc. Because it is just an “emulation” of keyboard, you need just have some textbox in the system, where you need to scan the data. Of course, for user it means that he must be sure, that cursor (focus) is in the correct application and in correct textbox. If user needs scan more barcodes in sequence, it is good to have the system created in a way, that after each scanned code, the focus is automatically transferred to the next text box, for next data entry. For example: when user scans operation code first and then item code, focus in NAV must be first on operation code field and then automatically on item no. field.

Serial port scanner

serialscannerSome scanners are supporting connection through serial port. They are similar to the keyboard scanners, you just needs some piece of software, which reads the data from the serial port. There are apps, which could make keyboard scanner from this one (reading the data and sending them as keyboard input by software way). Because it is simple to develop some application reading data from serial port, you can do more magic with this one. E.g. when there are incoming data, the app could send some special hot key combination to the NAV client and than the application could read the data from the scanner. In this way, the app could just create button, which is activated by this hot key, and through external library could read the data. User do not need to have correct focus in the application to be able to receive the data, but the app must be able to make difference between different data which are incoming (e.g. what is Item No. and what is Operation Code). Still, this kind of scanner is connected to specific PC.

Serial port scanner + RS232 to Wi-Fi converter

632425133wignome_vIf you combine serial port scanner and RS232 to Wi-Fi converter (cheap devices), you can connect the serial port scanner directly into your infrastructure. Depends on what the converter is able to do, you can than e.g. read the data on central server from all the connected scanners and than forward the data into your system. Best way how to do that is to use NAV Web Services. In this way, you can collect data from wide area without having computers in the field, you only needs Wi-Fi coverage. The business logic could than process the incoming data and do what you want. Example of usage is, that worker in the manufacturing scans serial no. of product, which he just somehow “processed”. If you know from which scanner the data are incoming (e.g. by IP), you can post operation for this serial no. in the system. It have one drawback – feedback for the user. There is no way, how to send some result to the user. Scanners are communicating only one-way. Some scanners could “beep” when you send them some data, but it depends on specific scanner and settings. To solve this, you can pair the scanner with different hardware, which will show you the result. It could be simple serial port display, or traffic light. How it works?

  1. User scans the serial no.
  2. NAV receive data and IP of the scanner from the service application (developed for this purpose)
  3. NAV knows, that IP is scanner on machine MC1, post the operation on current active prod. order on this machine, for serial number received.
  4. If posting is OK, NAV sends data “OK” to IP address of paired feedback device (it shows text “OK” or turn on the Green light)
  5. If there is error, NAV sends "data “ERR” to IP address of paired feedback device (it shows error text or turn on the Red light)
  6. If user wants to know more info about the error, he must go to the nearest PC and look into error history there.


Of course, instead RS232 to Wi-Fi converter could be used anything, what could take input from serial port and send it over LAN. It could be some terminal device, with display, with more serial ports etc. to be able to give the needed feedback. Just ask some Vendors, they will offer you tons of solutions.

Mobile computer with scanner

MC9090Some scanners are independent computers. They are not so cheap, but have different properties you can use. They have display, mostly they are wirelessly connected into infrastructure. In this case, you need some application directly on the scanner. If the display is only black&white, supporting only text, you can try to use ADCS module for Dynamics NAV. It support VT100 connections and it will show you the prompts directly on the device, and you only select the option or scan the data.

If the display is color, in most cases the device have Windows Mobile or Windows CE installed. In this case, you have more ways how to use it. If you are using NAV classic client, you can use terminal services to connect into NAV directly from the device. If you minimize all the things around which you do not want to see (toolbar, status bar, menu pane, start panel etc.), you can use special forms in NAV to interact with the application. When using this option, the scanner will work as a keyboard scanner connected to some PC running terminal client connected to server with NAV. It is simple to setup, simple to develop.  Of course, you need one session per device. Do not forget, that NAV classic client is going away and from long-therm view is not good choice now.

If you are using RTC, than you cannot use the previous way. There will be too much things around to use the page directly. You need to use special application (web, for the mobile windows, or regular running over terminal server) to collect the input and show the feedback. But still, the scanner will work as an keyboard scanner. No difference in this. And by using NAV Web Services, it is easy to develop something. In future you can expect more and more ways how to use these devices with NAV in much more effective ways.


And what about RFIDs?

Oh, ok. RFIDs. I cannot forget that. Very modern word. What is the hack? It is same as barcodes, just no visible “bar codes” and no laser scanners. Just chips which are sending the data inside them when some impulse from outside gives them the command. Scanner is than just wireless receiver for these data. There are many variants of RFIDs which differs in distance for reading, if data inside chip are fixed or programmable etc. And the cost mirrors that. In my experience, barcodes are much more flexible. Of course, sometime RFID solution could be the right one, but do not use it just because it is “in”. Still, the scanner works as any other barcode scanner. All the barcode scanners could be found in variants allowing you to “scan” RFID chips. RFIDs are good into environments, where barcodes could be problem (dust, size of barcode etc.).

Last, but not least

barcodeprinterWhen using barcodes, you need to print them. There is plenty of different special things in this field. You can print them on common printer to common paper. You can print them to special plastic medium (hard to destroy), you can engrave them by laser into metal labels (high temperature environments) etc. It means, first, you need to define the properties you need. Count with possible things like water, chemicals, dust, surface on which would be clued, temperatures, ease of tear off and other. For RFIDs you can bought pre-programmed chips or programmable ones. Once again, different chips have different operation limits like highest temperature for operation. Be aware of that.




Of course, there are many variants of the scanners as build-in, special purpose etc. Target of this article is not to make detailed list of all possibilities, but just describe some basics and common patterns. I am sure, that there are many add-ons for Microsoft Dynamics NAV offering different solutions for different tasks, using plenty of different devices. But to be able to select correct one, basic understanding of the technology is necessary. Of course, having good NAV partner which have enough experience and know-how on this field is big plus. Implementation of barcodes could looks like big increase of needed work to be done, but if done correctly, result is very positive. In some industry tracking and usage of barcodes are mandatory to be successful.

I wish you successfully implementation of any system, which helps you manage your processes effectively, quickly, easily and which helps you be better than others.