Página 1 de 1
impressao
Enviado: 27 Jun 2014 21:08
por massa
boa noite ..
tenho programa desenvolvido no clipper 5 e a parte de relatorios eu uso set print on .. mas hj as impressoras sao usb qual rotina eu uso ou para gravar em doc ou para imprimir direto na porta usb ?? prefiro gerar um arquivo doc
impressao
Enviado: 28 Jun 2014 03:53
por rochinha
impressao
Enviado: 15 Jul 2014 10:38
por Maurício Elias
Olá, bom dia.
Se vc usar o Harbour 3.2, tem como imprimir direto na USB usando o objeto oPrinter.
Em clipper, vc pode usar o NODOSIMP ou o DOSPRINTER. Eu gosto mais do segundo.
Ou vc gera um TXT e manda abrir pelo Notepad. E imprime por ele.
Run Notepad ARQUIVO.TXT
Abraços.
impressao
Enviado: 15 Jul 2014 12:51
por rochinha
Amiguinhos
Run Notepad ARQUIVO.TXT
Voce quis dizer
Run "Notepad ARQUIVO.TXT /P" né?
impressao
Enviado: 15 Jul 2014 14:57
por Maurício Elias
Eu não sabia que funcionava com aspas tb.
Prá que serve o /P

impressao
Enviado: 15 Jul 2014 16:24
por rochinha
Amiguinho,
Me confundi com o recurso usado. Eu uso o WRITE que permite imprimir direto por ele.
run "write arquivo.txt /p"
impressao
Enviado: 15 Jul 2014 17:35
por Maurício Elias
Q legal esse comando, não conhecia, mas digitei ele direto no prompt, nada aconteceu.
Só funciona pela Aplicação

impressao
Enviado: 25 Jul 2014 14:36
por MSDN
Boa tarde,
Nos programas modo console que migrei do Clipper para o xHarbour, criei uma função que monta um menu com todas as impressoras instaladas no Windows, utilizando a função GetPrinters() do xHarbour, na época foi a forma mais rápida e eficiente que encontrei para resolver o problema, visto haver tanto impressoras USB como impressoras instaladas diretamente em ponto de rede, segue a função e exemplo de uso abaixo :
Código: Selecionar todos
Function EscolheImp()
Local nX := 0
Local Cor := SetColor()
Local Tela := SaveScreen()
aPrinter := GetPrinters()
SetColor('w+/r')
@ 00, 40 Clear To 00, 80
@ 00, 41 Say 'Escolha a impressora :'
SetColor('w/b*,n/gr*')
@ 01, 40 Clear To Len(aPrinter)+2, 80
While .T.
For nX := 1 To Len(aPrinter)
@ 01+nX, 41 Prompt aPrinter[nX]
Next nX
Menu To nOpPrinter
Do Case
Case nOpPrinter == 0
Alert('Primeiro escolha uma impressora')
Loop
Otherwise
Exit
EndCase
End
SetColor(Cor)
Return(Nil)
Código: Selecionar todos
while .t.
setcolor(COR18)
EscolheImp()
@ 19, 51 say 'Confirma:'
@ 20, 51 say 'Mensagem:'
@ 19, 61 prompt 'Sim'
@ 19, 66 prompt 'Nao'
menu to OP
do case
case OP == 0 .or. OP == 2
close all
Seta_on()
restscreen(,,,,TELA)
setcolor(COR)
return( NIL )
endcase
@ 20, 61 say 'Imprimindo...'
exit
end
Set Printer To (aPrinter[nOpPrinter])
Set Device To Print
Set Console Off
Set Printer On
@ 00, 00 say chr(027)+chr(040)+chr(115)+chr(049)+chr(054)+chr(054)+chr(048)+chr(050)+chr(084) // Arial
@ 00, 00 say chr(027)+chr(038)+chr(108)+chr(050)+chr(054)+chr(065) // A4
@ 00, 00 say chr(027)+chr(040)+chr(115)+"15"+chr(072)
Abraços