본문 바로가기

IT 관련

Powerbuilder - BIXOLON T400 barcode printing

728x90

파워빌더 C/S 환경에서

바코드 프린터를 Zebra와 T400으로 라벨출력을 했었는데

파워빌더 WEB(APPEON)으로 적용시 출력이 되지 않는 문제점이 발견되었다.

그래서 기존 Powerbuilder(PB)에서의 출력과 WEB(Appeon)으로 출력을 분리하였다.

물론 둘다 WEB(Appeon)으로 해도 될것 같지만 혹시나 해서 기존 PB는 냅두고 WEB만 적용.

 

아래가 기본 T400 바코드 출력을 위한 코드

 

SS3  //set speed

SOB  //Set Orientation : T (Top->Bottom)  B(Bottom ->Top)
SM0,0  //set margin
SW500  //set width
SL500,20,G  //set length
T10,20,2,2,3,-1,0,N,B,'TEST1234'  //test string
T20,100,e,2,2,-1,0,N,B,'test description'  //test string
B200,200,D,7,N,'QRdata_test_test1234567890'   //2D barcode
P1  // print

 

 

기존 C/S환경에서는 위의 내용을 

COM port로  fileopen, filewrite, fileclose 로 해서 출력을 아래 처럼 진행했었음.

ls_Port = 'COM1:'

ls_CRLF = '~r~n'

 

li_FileNum = fileopen(ls_Port,linemode!,write!,lockwrite!,replace!)

//speed
FileWrite(li_FileNum,"SS3"+ls_CRLF)
FileWrite(li_FileNum, "SOB"+ls_CRLF)
FileWrite(li_FileNum, "SM0,0"+ls_CRLF)
FileWrite(li_FileNum, "SW500"+ls_CRLF)
FileWrite(li_FileNum, "SL500,20,G"+ls_CRLF)
FileWrite(li_FileNum, "T10,20,2,2,3,-1,0,N,B,'TEST1234'"+ls_CRLF)
FileWrite(li_FileNum, "T20,100,e,2,2,-1,0,N,B,'test description'"+ls_CRLF)
FileWrite(li_FileNum, "B200,200,D,7,N,'QRdata_test_test1234567890'"+ls_CRLF)
FileWrite(li_FileNum, "P1"+ls_CRLF)

 

FileClose(li_FileNum)

 

이방식으로 Web(Appeon)에서 출력을 시도하면 먹통이 되는 현상이 나타나서

user object를 이용하여 처리하여 조치 함.

 

n_serial serial

 

serial = create n_serial

 

serial.init( liPort , "9600,N,8,1")

serial.write("SS3"+ls_CRLF)
serial.write("SOB"+ls_CRLF)
serial.write("SM0,0"+ls_CRLF)
serial.write("SW500"+ls_CRLF)
serial.write("SL500,20,G"+ls_CRLF)
serial.write("T10,20,2,2,3,-1,0,N,B,'TEST1234'"+ls_CRLF)
serial.write("T20,100,e,2,2,-1,0,N,B,'test description'"+ls_CRLF)
serial.write("B200,200,D,7,N,'QRdata_test_test1234567890'"+ls_CRLF)
serial.write("P1"+ls_CRLF)

serial.done()


destroy serial

 

 

 

 

728x90