Wednesday, November 18, 2009

Barcode Video Channels on YouTube

Hello there!

This post summarizes the available video playlists for barcode software from TEC-IT on YouTube.

Barcode Label Printing Software (English)

Content:

Tutorial videos for TFORMer Designer.
  1. Barcode label printing with TFORMer Designer

Barcode Label Printing Software (German)

Content:

Tutorial videos for TFORMer Designer.
  1. Barcode-Etikettendruck mit TFORMer Designer

Barcode Generator Component (English)

Content:

Tutorial videos for TBarCode.
  1. Using Barcodes in Microsoft Office / Microsoft Word
  2. Creating Serial Letters with Barcodes

Please check out the TEC-IT Barcode Software channel on YouTube on a regular base. More videos are coming soon - we are producing... ;-)

Wednesday, November 11, 2009

Barcode Generator for SQL Reporting Service

To generate bar codes (ALL barcodes - meaning linear barcodes, 2D barcodes like DataMatrix and GS1 DataBar codes) all you need is an internet connection. Advantage: no additional software is needed and no Visual Studio is required. The basic idea is to insert an barcode image generated by the online barcode generator of TEC-IT. This barcode generator is customizable via the URL - so it is possible to create each bar-code as required.

1) Create the required barcode using the online barcode generator
2) Scroll down to the section "Free Use of This Barcode Generator". Copy the URL (see screenshot below) into your clipboard:

Barcodegenerator

3) Start the MS SQL Server Report Builder
4) Create a new report
5) Insert a Picture object and change the “Image Source” property to “External” (see screenshot below)

ImageProperties
6) Click on the “fx” button to set the URL for the barcode image (see screenshot below)

ImageURLFunction
Function used in the example above:
=”http://www.tec-it.com/online-demos/tbarcode/barcode.aspx?code=Code128&data=” & CStr(Fields!UserName.Value) & "&dpi=96&rotation=0&modulewidth=fit"

This creates an Code128 barcode using our online barcode generator. The data encoded in the barcode is stored in the UserName field:
CStr(Fields!UserName.Value)

7) Close all dialogs with OK

That’s all you need to do to insert barcode functionality to the Microsoft SQL Reporting Service.

Result

Interested?

If you like this method for barcode creation you can use the online barcode generator for free (for non-commercial use only). For commercial users TEC-IT recommends a local barcode server in the companies intranet.

TWedge V2.3 Release Candidate

TWedgeV23RCWe are announcing the new version of the data acquisition software / software wedge TWedge.
TWedge is smart middleware which connects to arbitrary devices via RS232 (COM port), Bluetooth (native!) and TCP/IP. The received data is either simulated as keystrokes, stored in a file or saved directly into an ODBC database.

Improvements

  • 0-byte awareness
    Previous versions clipped received or transmitted data after an 0x00 in the data stream.
  • HEX data display
    Incoming data can be displayed as HEX string for better debugging
  • Silent mode
    Device data display can now be turned off

Release Candidate Download

Download data acquisition software TWedge (MSI setup file for Windows). 

Monday, November 9, 2009

Reading RFID Tags with TWedge


TEC-IT's data acquisition software TWedge allows an easy implementation of RFID controller protocols. TWedge can be adjusted to communicate with RFID controllers in a bi-directional way. Reading and processing tag identifiers is as easy as reading/writing tag data!

The following TWedge script can be used to read RFID Tag IDs from EMS Datalogic RFID Controllers (utilizing the ABx Fast Protocol).

The following script performs the following functions:
1) Query the RFID controller by pressing the hotkey

2) When data is received test it for a valid response

3) Display data in MessageBox

Try it yourself - Download the software wedge for free! Keep in mind: V2.3 or higher is required!

Global Helper Functions

HEX Conversion

function encodeHex(input) {
hexOutput = "";
for (i=0; i < input.length; i++) {
hexOutput = hexOutput + ' ' + Dec2Hex(input.charCodeAt(i));
}
return hexOutput;
}

function encodeDec(input) {
decOutput = "";
for (i=0; i < input.length; i++) {
decOutput = decOutput + ' ' + input.charCodeAt(i);
}
return decOutput;
}

function Dec2Hex(Decimal) {
var hexChars = "0123456789ABCDEF";
var a = Decimal % 16;
var b = (Decimal - a)/16;
hex = "" + hexChars.charAt(b) + hexChars.charAt(a);
return hex;
}

Test for TAG ID

function IsRFIDTagID (data)
{
// 0 1 2 3 4 5 6 7 8 9 10 11 12 13
// 02 02 00 09 0F E0 04 01 00 35 7F 5E 19 03

return data.length >= 14
&& data.charCodeAt(0) == 2
&& data.charCodeAt(1) == 2
&& data.charCodeAt(4) == 15;
}

Test for TAG Response

function IsRFIDReadResponse(data)
{
// 0 1 2 3 4 5 6 7 8 9 10
// 02 02 00 06 05 31 32 33 34 35 03

return data.length >= 6
&& data.charCodeAt(0) == 2
&& data.charCodeAt(1) == 2
&& data.charCodeAt(4) == 5;
}

Send RFID READ Request

var escZero = "\\0";
var escBack = "\\\\\\\\";

function SendRFIDReadRequest ()
{
var request;
// read 5 Bytes from address 1 with timeout 2000 msec
// 02 02 00 07 05 00 01 00 05 07 D0 03

//request = String.fromCharCode ( 2, 2, 0, 7, 5, 0, 1, 0, 5, 7, 208, 3 );
request = "\x02\x02" + escZero + "\x07"
+ "\x05" + escZero + "\x01" + escZero + "\x05"
+ "\x07\xD0\x03";

// MessageBox ('WriteToDevice: ' + request);
WriteToDevice (request, 2000);

}

Get RFID Response Data

function GetRFIDDataFromResponse ( data )
{
// 0 1 2 3 4 5 6 7 8 9
// 02 02 00 06 05 31 32 33 34 35 03
var len;
var out = "";
if (data.length >= 5)
{
len = data.charCodeAt(2) * 256 + data.charCodeAt(3) - 1;
for (i=0; i< len; i++)
{
out = out + String.fromCharCode(data.charCodeAt(5 + i));
}

//MessageBox ('Len: ' + len + ', ' + out);
return out;
}
return null;
}

OnData Script

if ( IsRFIDTagID (DATA) )
{
SendRFIDReadRequest ();
}
if ( IsRFIDReadResponse (DATA) )
{
MessageBox (encodeHex(DATA) + ' (' + DATA.length + ' Bytes)');
MessageBox ('Nutzdaten: ' + GetRFIDDataFromResponse (DATA));
}

HotKey Script

SendRFIDReadRequest ();
 
Programming Blog Directory Add to Technorati Favorites Blogverzeichnis frisch gebloggt Bloggeramt.de RSS Verzeichnis RSS World Software
Blogging Fusion Blog Directory Find the best blogs at Blogs.com. Directory of Computers/Tech Blogs BlogESfera Directorio de Blogs Hispanos - Agrega tu Blog US Business Directory & Local Blogs
2D Barcode Software and RFID/AIDC News N1 Website Directory Central Blogs
BloggerInternet.com - Browse our directory for collection of weblogs, blogs about entertainment, internet, media, music, personal, politics, sports, travel and more.
Blog Catalog Submit Blog Directory The Blog Resource Blog Directory SEOTalk Web Directory Bulla Racing