Eric Patrick Posted June 4, 2010 Share Posted June 4, 2010 I'm setting up a Datamatrix barcode that has text information in field 1 "Sku" and then i want to it to horizontally tab to the next field "Qty" and populate that field with a number. My coding is: return MakeDataMatrixBarcode (Field("Sku") + ~0x09 + Field("Qty"), true, "TEXT", "6", "", "", ""); This gives me the barcode correctly but the tab doesn't work. Text "-10" is placed between the Sku data and the Qty data all in the first field. I've tried using the coding from IDAutomation "~d009" but that just places "009" in between the other data. I have checked the scanner and it is setup for a US Keyboard. What am I doing wrong? Thanks! Link to comment Share on other sites More sharing options...
Dan Korn Posted June 4, 2010 Share Posted June 4, 2010 return MakeDataMatrixBarcode (Field("Sku") + ~0x09 + Field("Qty"), true, "TEXT", "6", "", "", ""); That's not the right way to insert either a literal tilde or a tab character into a string in JavaScript. It's interpreting ~0x09 as the "bitwise not" operator followed by the number 9, which does result in the number -10, as you can see in the example here: https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Operators/Bitwise_Operators#.7e_%28Bitwise_NOT%29 I think you want to do this, and turn the "process tilde" flag to false: return MakeDataMatrixBarcode (Field("Sku") + [color=SeaGreen]"\t"[/color] + Field("Qty"), [color=SeaGreen]false[/color], "TEXT", "6", "", "", "");Or, using the ASCII code for the tab character: return MakeDataMatrixBarcode (Field("Sku") + [color=SeaGreen]Chr(9)[/color] + Field("Qty"), [color=SeaGreen]false[/color], "TEXT", "6", "", "", ""); Actually, looking at the spec, I think you can just put the string "~d009" in there, like so: return MakeDataMatrixBarcode (Field("Sku") + [color=SeaGreen]"[/color][color=#008000]~d009"[/color] + Field("Qty"), true, "TEXT", "6", "", "", ""); See the DataMatrix barcode spec: http://www.idautomation.com/datamatrixfaq.html#Encoding_ASCII_Functions Link to comment Share on other sites More sharing options...
Eric Patrick Posted June 4, 2010 Author Share Posted June 4, 2010 Awesome Dan! Thanks for the help. The "\t" worked like a charm. I tried the "~009" but it wouldn't work for me. Link to comment Share on other sites More sharing options...
Dan Korn Posted June 4, 2010 Share Posted June 4, 2010 Awesome Dan! Thanks for the help. The "\t" worked like a charm. Great! I tried the "~009" but it wouldn't work for me. I think it will work if you use "~d009" (with a "d") and set the second parameter (use tilde) back to "true," as in the example on the IDAutomation site. But what you have is working, and seems simpler. Link to comment Share on other sites More sharing options...
grazo Posted June 30, 2010 Share Posted June 30, 2010 Hello, I need to do the same but using a linear barcode. I tried using 128 barcode and 39 barcode. Do you know if I need to download a specific font? This is my rule: return Make128BBarcode("03" + "~d009" + Field("numero")); I also tried: return Make128BBarcode("03" + "\t" + Field("numero")); It ends up scanning symbols instead of the tab. Regards, Giovanni Razo Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.