Page 1 of 1

IMPRESION EN TM-U220PA

Posted: Tue Jul 01, 2008 6:40 pm
by LuisPonce
Hola

Neesito imprimir en una impresora ticketera, es la EPSON TM-U220PA, tengo problemas para hace funcinar el corte de papel, o existe alguna libreria adicional.

En Clipper para DOS solia hacerlo sin problemas con la TM-300c era CHR(27)+"i" y listo, pero en Five Win no me funciona.

De ante mano

Gracias
Att.

Luis Ponce

Posted: Tue Jul 01, 2008 9:20 pm
by Willi Quintana
oPrn:Command("27","109") // corte de pagina para la TMU200D //
oPrn:Command("27","100","48") // corte de pagina para la STAR 2xxxxx

Salu2

TM-U220PA

Posted: Wed Jul 02, 2008 1:29 pm
by LuisPonce
Gracias Willy, pero te comento que no funciono, lo probe antes del oPrn:End() y despues, con comillas y sin comillas... tampoco funciona ahi te paso mi codigo:

nVer:=10
nVerSon:=(nVer+nMaxDoc)
nRow:=2

oPrnCmp:=TDosPrn():New(cLptDoc)
oPrnCmp:Command( { 27, 64 } )

IF lCabecera // imprime cabecera ??
oPrnCmp:Say( nRow, 00, PADC(cMiCia,40) )
nRow++
oPrnCmp:Say( nRow, 00, Repl('-',40), nCompress )
nRow++
oPrnCmp:Say( nRow, 00, PADC('R.U.C. '+IMPRUC,40), nCompress )
nRow++
oPrnCmp:Say( nRow, 00, PADC('N/s '+TRIM(IMPSIT),40), nCompress )
nRow++
ENDIF

oPrnCmp:Say( nRow, 00, Repl('-',40), nCompress )
nRow++
oPrnCmp:Say( nRow, 00, PADR(TRIM(cDesDoc)+' N° '+cNroSer+'-'+cNroTik,40), nCompress )
oPrnCmp:Say( nRow, 00, PADL("Vendedor : "+LEFT(cGrFero,5),40), nCompress )
nRow++
oPrnCmp:Say( nRow, 00, PADL(CFECHA(dFecAct,'E')+' '+TIME(),40), nCompress )
nRow++
oPrnCmp:Say( nRow, 01, "Cantidad Std Descripcion Importe", { nItalic,nCompress } )

Select("IFacturas")
IF IFacturas->( DbSeek( cCodDoc+cNroSer+'-'+cNroTik ) )
WHILE IFacturas->CARGO=cCodDoc.and.IFacturas->TIKET=cNroSer+'-'+cNroTik
cCodSer :=IFacturas->CODSER
nCanSer :=IFacturas->CANTIDAD
nPrecio :=IFacturas->PRECIO
nItmPre :=IFacturas->PREBSE

Select("IItems")
If IItems->( DbSeek( UPPER( cCodSer) ) )
cItmDes:=PADL(IItems->DESITM,15)
cItmUnd:=IItems->UNDITM
ELSE
cItmDes:=PADL('NO EXISTE...',15)
cItmUnd:='XXX'
ENDIF

Select("IFacturas")

oPrnCmp:Say( nVer,00, TRANS(IFacturas->CANTIDAD,MA53)+" "+cCodSur+" "+cItmDes, nCompress )
oPrnCmp:Say( nVer,29, TRANS(IFacturas->IMPORTE,MA72C), nCompress )

nVer ++

nTotIgv+=IFacturas->IGV
nTotFac+=IFacturas->IMPORTE
nTotBse+=IFacturas->BSEIMP

* Continua con otro item

IFacturas->(DbSKIP())

END
ENDIF

* a pagar

nVer ++
oPrnCmp:Say( nVer, 00, PADL("TOTAL"+cMoneda+" "+TRANS(nTotFac,MA72C),40), nCompress )
nVer ++
nVer ++
oPrnCmp:Say( nVer, 00, "FW "+mmINICIAL+' '+LEFT(cCancela,3)+" "+AUT, nCompress )
nVer+=8
oPrnCmp:Say( nVer, 00, " ", nCompress )
oPrnCmp:Command( { 27, 109 } )
oPrnCmp:End()

Posted: Thu Jul 03, 2008 12:42 am
by Willi Quintana
oPrn:Command("27","109") // corte de pagina para la

oPrn:Command("27","7") // NO SE QUE PARA LA EPSON RARA

oPrn:Command("27","110") // NO SE QUE PARA LA EPSON RARA

antes del oprn:end()

Salu2

Posted: Thu Jul 03, 2008 1:12 pm
by LuisPonce
Willy

No pasa nada, de todos modos gracias, creo que mejor estaba con clipper para DOS ahi si funcionaba

Si de algo sirve esta printer tiene puerto paralelo

no tengo tus fonos

Posted: Thu Jul 03, 2008 5:32 pm
by LuisPonce
Willy

Creo que lo que sucede es que no recibe ningun comando, le pongo con la tdosprn :

oPrnCmp:Say( nRow, 00, PADC(cMiCia,40),nBold )

y tampoco pasa nada. deberia imprimir el titulo en negrita y no hace nada, baje un pdf con los codigos de impresion y es el mismo que me dices 27,109 tendran algo que ver los swicht que estan debajo de la printer ???? por que no recibe los codigos ESC/POS

Posted: Thu Jul 03, 2008 5:40 pm
by Willi Quintana
Asegurate que la TMU esta "suicheada" para el protocolo "EPSON ESC"

Salu2

Posted: Thu Jul 03, 2008 5:42 pm
by LuisPonce
Sabes cual es la posicion de los swichts ???

no tengo su manual y no veo data al respecto

Posted: Thu Jul 03, 2008 5:49 pm
by Willi Quintana
me parece que el manual esta en el internet,,, podrias bajarlo i zas,.,,,,
Salu2

PD. (984906626)

Posted: Fri Jul 04, 2008 4:48 am
by mmercado
Hola Luis:

Prueba lo siguiente:
oPrnCmp:Say( nRow,0, Chr( 27 ) + Chr( 109 ), nCompress ) //Corte completo

oPrnCmp:Say( nRow,0, Chr( 27 ) + Chr( 105 ), nCompress ) //medio corte

Saludos.

Manuel Mercado

Posted: Fri Jul 04, 2008 11:46 pm
by LuisPonce
Muchas Gracias Manuel,

Tenia que ser uno de los Masters... obviamente funciono de maravilla, en teoria el oPrn:Command() debe realizar esa tarea.

Saludos desde PERU

Att.

Posted: Sat Jul 05, 2008 12:37 am
by Willi Quintana
Talvez sea cuestion de versiones, yo trabajo asi: Salu2
...
nRow := nRow + 7
oPrn:Say(nRow,0,"") // vacia el buffers
oPrn:Command("27","50") //1/6 salto vertical

CutPaper(oPrn,nRow)
Return(Nil)

//----------------------------------------------------
Function CutPaper(oPrn,nRow,vModo)
DEFAULT vModo := 1
Do Case
Case vModo = 1
oPrn:Command("27","109") // corte de pagina para la TMU200D //oPrn:Command("27","100","48") // corte de pagina para la STAR 2000 / SP2520
Case vModo = 2
oPrn:Command("27","7") // NO SE QUE PARA LA EPSON RARA
oPrn:Command("27","110") // NO SE QUE PARA LA EPSON RARA
Case vModo = 3
oPrn:Say(nRow,0,Chr(29),Chr(86),Chr(1)) //oPrn:Write( Chr(29)+Chr(86)+Chr(1) )
oPrn:Say(nRow,0,Chr(7))
oPrn:Say(nRow,0,Chr(27),Chr(112),Chr(0),Chr(25),Chr(250))
Other
Return Nil
EndCase
Return Nil

Posted: Sun Jul 06, 2008 12:44 am
by LuisPonce
Y si la printer fuera una Serial conectada al COM1, como haria con la TDOSPRN, esta solo imprime en LPT1.

Esto alguna vez lo solucione utilizando la PRINT ... FROM USER, es la unica solucion ?, o hay forma de que la TDOSPRN imprima en puerto serial

Gracias