Printing to an IP adress

Post Reply
Jack
Posts: 249
Joined: Wed Jul 11, 2007 11:06 am

Printing to an IP adress

Post by Jack »

Hello,
I use this code to send character to a THERMAL PRINTER (Zebra ZPL) connected to LPT port

How to to if it is a network printer ?

nfp := fcreate("LPT1")
*
ww:="^XA" && tjs
fwrite(nfp,ww+CRLF)
ww:="^MD25" && temperature 0 a 30
fwrite(nfp,ww+CRLF)
ww:="^LH05,50" && home position 0.5 cm
fwrite(nfp,ww+CRLF)
ww:="^XZ"
fwrite(nfp,ww+CRLF)
fclose(nfp)
User avatar
cdmmaui
Posts: 653
Joined: Fri Oct 28, 2005 9:53 am
Location: The Woodlands - Dallas - Scottsdale - London
Contact:

Re: Printing to an IP adress

Post by cdmmaui »

Hi Jack,

I am printing direct to Zebra and Intermec printers using the following code. The text in aLabel is the Intermec coding, you can change to Zebra's ZPL.


// Init...
nPort := 9100
cIPAddr := "192.168.1.125"
aLabel := {}
cDat := ""

// Init...
AADD( aLabel, 'CLL' )
AADD( aLabel, 'FONT "Swiss 721 BT",20' )
AADD( aLabel, 'DIR 1' )
AADD( aLabel, 'ALIGN 5' )
AADD( aLabel, 'PRPOS 400,925' )
AADD( aLabel, 'PRTXT "ABC COMPANY' )
AADD( aLabel, 'FONT "Swiss 721 BT",32' )
AADD( aLabel, 'ALIGN 5' )
AADD( aLabel, 'PRPOS 400,800' )
AADD( aLabel, 'PRTXT "' + cMrNo + '"' )
AADD( aLabel, 'FONT "Swiss 721 BT",14' )
AADD( aLabel, 'ALIGN 5' )
AADD( aLabel, 'PRPOS 400,700' )
AADD( aLabel, 'PRTXT "CUSTOMER: XYZ"' )
AADD( aLabel, 'PRPOS 030,600' )
AADD( aLabel, 'FONT "Swiss 721 BT",14' )
AADD( aLabel, 'ALIGN 1' )
AADD( aLabel, 'PRTXT "NO.: ' + cNo + '"' )
AADD( aLabel, 'PRPOS 460,600' )
AADD( aLabel, 'PRTXT "PKG NO: ' + LTRIM(STR(nStart,9)) + ' OF ' + LTRIM(STR(VAL(cPkg_rcv),9)) + '"' )
AADD( aLabel, 'PRPOS 030,525' )
AADD( aLabel, 'PRTXT "P.O. NO.: ' + cPo + '"' )
AADD( aLabel, 'PRPOS 460,525' )
AADD( aLabel, 'PRTXT "PKG TYPE: ' + cPkg + '"' )
AADD( aLabel, 'PRPOS 030,450' )
AADD( aLabel, 'PRTXT "LBS: ' + LTRIM(TRANSF(nLbs,"999,999.99")) + '"' )
AADD( aLabel, 'PRPOS 030,375' )
AADD( aLabel, 'PRTXT "DIMS: ' + cDims + '"' )
AADD( aLabel, 'PRPOS 030,300' )
AADD( aLabel, 'PRTXT "DATE RECEIVED: ' + DTOC( dRecv ) + '"' )
AADD( aLabel, 'PRPOS 030,225' )
AADD( aLabel, 'PRTXT "PIECE NO: ' + LTRIM(STR(nPcno,9)) + '"' )
AADD( aLabel, 'PRPOS 400,110' )
AADD( aLabel, 'DIR 1' )
AADD( aLabel, 'ALIGN 2' )
AADD( aLabel, 'BARTYPE "CODE128"' )
AADD( aLabel, 'PRBAR "' + cBarcode + '"' )
AADD( aLabel, 'PRINTFEED' )

FOR nX1=1 TO LEN(aLabel)
cDat += aLabel[nX1] + CRLF
NEXT nX1
FWRITE( hHan, cDat )
SENDDATA( nPort, cIPAddr, cDat )

RETURN (.T.)

//-----------------------------------------------------------------------------
STATIC FUNCTION SENDDATA( nPort, cIP, cMsg )

LOCAL oSocket := TSocket():New( nPort )

oSocket:bConnect := { || oSocket:SendData( "MSG " + cMsg ),;
oSocket:End() }

oSocket:Connect( cIP )

RETURN NIL
*~*~*~*~*~*~*~*~*~*
Darrell Ortiz
CDM Software Solutions, Inc.
https://www.cdmsoft.com
Jack
Posts: 249
Joined: Wed Jul 11, 2007 11:06 am

Re: Printing to an IP adress

Post by Jack »

Thanks,

It works with my network printer .
Jack
Posts: 249
Joined: Wed Jul 11, 2007 11:06 am

Re: Printing to an IP adress

Post by Jack »

Is it the same if the printer is connect to a print server ??
I replace the IP with the print server name ?
Thanks .
User avatar
MarcoBoschi
Posts: 925
Joined: Thu Nov 17, 2005 11:08 am
Location: Padova - Italy
Contact:

Re: Printing to an IP adress

Post by MarcoBoschi »

I am also interested in this answer
Marco Boschi
info@marcoboschi.it
Post Reply