Operating System - OpenVMS
cancel
Showing results for 
Search instead for 
Did you mean: 

bar code printing problem with la36w printer

Tony Gallati
Occasional Contributor

bar code printing problem with la36w printer

I am printing barcodes using an la36w character printer and when I needed to print an * as part of the barcode string, it ignores the * character in the barcode and prints all other characters before and after. I am also printing human readable which prints below the bar code. I prints all other characters.
3 REPLIES
Hoff
Honored Contributor

Re: bar code printing problem with la36w printer

Which particular bar code scheme are you using with this Genicom LA36W dot matrix printer?

Some bar code schemes special-case the asterisk character. Barcode 39 tends to use the asterisk character as the start and stop marker, for instance.

Can you post up the escape sequences and character data you're seeking to print here?

FWIW, this looks to be a printer-specific question, and not anything particularly to do with OpenVMS itself.
Tony Gallati
Occasional Contributor

Re: bar code printing problem with la36w printer

14=channel number
27=esc
other ascii characters sent to serial line printer is open on.
DISPLAY(14,155,48,'25',59,59,59,'360',59,59,59,39,113)
DISPLAY
(14,155,57,53,2);CSI,Pn,`=Position to column 2
DISPLAY(14,27,37,32,48) ;ESC,%,SP,0=Start Bar Code
entry='P350205816*OP10'
DISPLAY(14,ENTRy) ;Print this in Bar Code
; DISPLAY(14,27,37,64) ;ESC,%,@=Stop Bar Code
DISPLAY(14,13) ;Set back to column 1
every character for entry field prints in barcode except the *
Hoff
Honored Contributor

Re: bar code printing problem with la36w printer

If I've decoded that wad of character data correctly, it looks like you're using 3 of 9 (also called 39), and the basic 39 barcode format does not permit asterisks. You get alphanumerics and dash, period, dollar, slash, plus and percent punctuation.

If you are using 39, then that format uses asterisks as part of the barcode, and that character should not be embedded within the barcode. Find the DECSBCA control sequence (CSI Ps1 ; Pn2 ; . . . ; Ps9 Ì q) here (which looks like the 155 48...) and confirm that.

I'm not in a position to freely contribute additional time to reverse-engineer and comment the control sequences present within this COBOL code.

Extended 39 barcode can provide an *, but that looks to need to be encoded as /J or some such escapement. And I'd guess that this printer predates the existence of extended 39.

http://www.idautomation.com/code39faq.html