Imprimir na MFP Laser HP M1132 com PrintFileRaw()

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
rubens
Colaborador
Colaborador
Mensagens: 1520
Registrado em: 16 Ago 2003 09:05
Localização: Nova Xavantina - MT

Imprimir na MFP Laser HP M1132 com PrintFileRaw()

Mensagem por rubens »

Olá...

Alguém conseguiu imprimir na MFP Laser HP M1132?

Código: Selecionar todos

	cARQ := 'DUPL.TXT'
	SET PRINTER TO &cARQ
	SET DEVICE TO PRINTER

	nVLNOTFIS 	:= CR->VLNOTFIS_
	cNOTFIS		:= CR->NOTFIS_
	cNUMERO_		:= CR->NUMERO_    
	cCLIENTE		:= CR->CODIGO+"-"CLI->NOME
	cENDERECO 	:= TRIM(CLI->ENDCOB)+"-"+CLI->BAICOB
	cCIDADE		:= CLI->CIDCOB
	cESTADO		:= CLI->UFCOB
	cCEP			:= CLI->CEPCOB
	cPRACA		:= CR->PRACA_
	cCGC			:= IF(LEFT(CLI->CGC,1)!=SPACE(1),CLI->CGC,CLI->CPF)
	cRG			:= IF(!EMPTY(CLI->INSCRICAO),CLI->INSCRICAO,CLI->RG)
	cVALOREXT 	:= VALEXT( CR->VALOR_ )
	nVALOR 		:= CR->VALOR_
	SETPRC(0,0)
	@ PROW()	,00 SAY normal+"+-----------------------------------------------+------------------------------+"
	@ PROW()+1,00 SAY "|       "+NEGRITO+PERS->EMPRESA+NEGRITOD+"          |  C.G.C. "+PERS->CGC+"   |"
	@ PROW()+1,00 SAY "|      "+ITALICO+PERS->RAZAO+ITALICOD+"           |   Insc. Est. "+PERS->INSCRICAO+"    |"
	@ PROW()+1,00 SAY "+-----------------------------------------------+------------------------------+"
	@ PROW()+1,00 SAY "| "+ITALICO+pers->endereco+" "+pers->telefone+" Cep 78.690-000 Nova Xavantina-MT"+ITALICOD+" |"
	@ PROW()+1,00 SAY "+------------------------------------------------------------------------------+"
	@ PROW()+1,00 SAY "|                                   Data de Emissao:                           |" ; @ PROW(),53 SAY DIA( CR->DTEMIS_ )
	@ PROW()+1,00 SAY "+-----------------------------------------------------------+------------------+"
	@ PROW()+1,00 SAY "|         Fatura                 Duplicata                  |"+PEQUENO+"P/ uso Instituicao financeira"+NORMAL ; @ PROW(),79 SAY "|" 
	@ PROW()+1,00 SAY "+------------+----------+------------+----------+-----------|                  |"
	@ PROW()+1,00 SAY "|   Valor R$ |  Numero  |   Valor R$ | No.Ordem | Vencimento|                  |"
	@ PROW()+1,00 SAY "|            |          |            |          |           |                  |"
	@ PROW()	,02 SAY NEGRITO+TRAN( nVLNOTFIS  ,"@E 999,999.99")+NEGRITOD
	@ PROW()	,14 SAY NEGRITO+cNOTFIS+NEGRITOD
	@ PROW()	,26 SAY NEGRITO+TRAN( nVALOR	,"@E 999,999.99")+NEGRITOD
	@ PROW()	,38 SAY NEGRITO+cNUMERO_+NEGRITOD
	@ PROW()	,50 SAY NEGRITO+DTOC(CR->DTVENC_)+NEGRITOD
	@ PROW()+1,00 SAY "+------------+----------+------------+----------+-----------+------------------+"
	@ PROW()+1,00 SAY "|                       | Juros por dia de atraso:                             |"
	@ PROW()+1,00 SAY "|                       | Cliente: "+NEGRITO+LEFT(cCLIENTE,43)+NEGRITOD         ; @ PROW(),79 SAY "|" 
	@ PROW()+1,00 SAY "|                       | Endereco: "+PEQUENO+cENDERECO+NORMAL                  ; @ PROW(),79 SAY "|"                           
	@ PROW()+1,00 SAY "|                       | Municipio: "+cCIDADE+" UF:"+cESTADO+" CEP:"+cCEP 		; @ PROW(),79 SAY "|" 
	@ PROW()+1,00 SAY "|                       | Praca de Pagamento: "+PEQUENO+cPRACA +NORMAL       	; @ PROW(),79 SAY "|"
	@ PROW()+1,00 SAY "|                       | CGC/CPF:"+cCGC+"   IE/RG: "+ALLTRIM(cRG)			 		; @ PROW(),79 SAY "|"
	@ PROW()+1,00 SAY "|                       | Valor por extenso: "+PEQUENO+SUBLI+IF( LEN( cVALOREXT ) > 55,LEFT(cVALOREXT,55),cVALOREXT )+NORMAL+SUBLID ; @ PROW(),79 SAY "|"
	@ PROW()+1,00 SAY "|                       | "+PEQUENO+SUBLI+IF( LEN( cVALOREXT ) > 55,SUBSTR(cVALOREXT,56,LEN(cVALOREXT)-54),"")+SUBLID+NORMAL 
	@ PROW()+1,00 SAY "|                       | "+PEQUENO+"     Reconheco(emos) a exatidao desta DUPLICATA de Venda Mercantil/Prestacao de Servicos"+NORMAL ; @ PROW(),79 SAY "|"
	@ PROW()+1,00 SAY "|                       | "+PEQUENO+"na importancia acima que pagarei(emos) a "+PERS->RAZAO+" ou sua ordem na"+NORMAL ; @ PROW(),79 SAY "|"
	@ PROW()+1,00 SAY "| --------------------- | "+PEQUENO+"praca e vencimento indicados."+NORMAL
	@ PROW()+1,00 SAY "| "+PEQUENO+PERS->RAZAO+NORMAL ; @ PROW(),24 SAY '|' ; @ PROW(),79 SAY "|"
	@ PROW()+1,00 SAY "|                       |                                                      |"
	@ PROW()+1,00 SAY "|                       |   ______________         ___________________________ |"
	@ PROW()+1,00 SAY "+-----------------------+   Data do aceite            Assinatura do Cliente    |"
	@ PROW()+1,00 SAY "|   "+PEQUENO+"    A falta do pagamento no vencimento, serao cobrados juros legais mais despesas bancarias; nao dispensar nem condicional   "+NORMAL ; @ PROW(),79 SAY "|"
	@ PROW()+1,00 SAY "+------------------------------------------------------------------------------+"
	@ PROW()+4,00 SAY ""
	SET PRINTER TO
	SET DEVICE TO SCREEN

   cPRINTER := GETIMPRESSORA()
	PrintFileRaw( cPRINTER, cARQ , "DUPLICATA" )
	FERASE( cARQ )
	
RETURN NIL 

Código: Selecionar todos

********************************************************************************
// RETORNA IMPRESSORA ESCOLHIDA
FUNCTION GETIMPRESSORA()
LOCAL aPRINTERS := GETPRINTERS()

// DESCOBRE A LARGURA DO BROWSE
nLARGURA := LEN( aPRINTERS[1] )
FOR X = 1 TO LEN( aPRINTERS )
	IF LEN( aPRINTERS[X] ) > nLARGURA 
		nLARGURA := LEN( aPRINTERS[X] )
	ENDIF
NEXT

nLINI := (25-LEN(aPRINTERS))/2
nCINI := (80-nLARGURA)/2  
JANELA( nLINI,nCINI,nLINI+LEN(aPRINTERS)+1, nCINI+nLARGURA+1 , ' Impressoras ' ) 
nPRINTER := ACHOICE(nLINI+1,nCINI+1,nLINI+LEN(aPRINTERS),nCINI+nLARGURA, aPRINTERS )

IF nPRINTER = 0
	cPRINTER := GetDefaultPrinter()
ELSE
	cPRINTER := aPRINTERS[nPRINTER] 
ENDIF  
 	  
RETURN( cPRINTER ) 
Com esta rotina acima eu consigo imprimir tranquilo numa Brother 8080 Laser e numa hp deskjet hp 1000, hp 1460...
Mas na laserjet M1132 não...
Chega a mandar o arquivo para a fila de impressão mas não imprime...
A impressora tá funcionando. Eu mando outros relatórios que geram o txt e o notepad abre e imprime.
Será falta de compatibilidade do printFileRaw com esta impressora?
Ela é muito comum nos clientes, ela a hp1018, hpp1005, hp1102..


Obrigado
Rubens
"Eu e minha casa servimos ao Senhor e você ???"
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7929
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Imprimir na MFP Laser HP M1132 com PrintFileRaw()

Mensagem por Itamar M. Lins Jr. »

Ola!
Pois é! Essa só via WIN_PRN, PrintFileRaw() só em algumas que ainda suportam, a maioria agora só com WIN_PRN.
Essas impressoras não suportam ESC/POS.

Neste caso tem que transformar em PDF ou HTML.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Responder