Saída USB
Moderador: Moderadores
-
Josmar dos Santos
- Usuário Nível 3

- Mensagens: 277
- Registrado em: 11 Jan 2006 18:36
- Localização: Botucatu-SP
Saída USB
Caros colegas, sei que ja foi muito discotido esse assunto aqui, mas como eu ja comentei em outras situações, sou iniciante e voces terao que ter paciencia comigo..rs..rs.
Bom, para eu imprimir em usb...eu fiz um atalho no meu sistema, em vez de em mandar para uma impressora eu mando para uma saída de aquivo txt...porém, toda vez que eu mando para esse arquivo, tenho que sair do sistema, abrir o bloco de notas e so assim consigo imprimir..Será que tem algum jeito de eu imprimir esse relatório sem sair do sistema, ou seja, ao desviar para o arquivo, ele ja imprimir direto....Nota...Vale lembrar que tambem consigo criar esses arquivos em extensao prn ...sem mais ..um abraço....Josmar
Bom, para eu imprimir em usb...eu fiz um atalho no meu sistema, em vez de em mandar para uma impressora eu mando para uma saída de aquivo txt...porém, toda vez que eu mando para esse arquivo, tenho que sair do sistema, abrir o bloco de notas e so assim consigo imprimir..Será que tem algum jeito de eu imprimir esse relatório sem sair do sistema, ou seja, ao desviar para o arquivo, ele ja imprimir direto....Nota...Vale lembrar que tambem consigo criar esses arquivos em extensao prn ...sem mais ..um abraço....Josmar
-
Josmar dos Santos
- Usuário Nível 3

- Mensagens: 277
- Registrado em: 11 Jan 2006 18:36
- Localização: Botucatu-SP
Saída Usb
Para reforçar esse assunto, queria imprimir do prg...pois tive que fazer um filtro do bloco de notas para imprimir o mesmo...ok ...fuiii
-
Marcelo Pereira
- Usuário Nível 1

- Mensagens: 1
- Registrado em: 25 Jan 2006 08:24
-
Dércio_Luiz_Zanatta
- Usuário Nível 3

- Mensagens: 153
- Registrado em: 11 Jan 2006 15:37
- Localização: Ibirubá - RS
Impressão em USB
amiguinho.
Eu tb uso o PRWIN do Wagner. Funciona muito bem.
Para vc imprimir sem sair do programa basta vc chamar o prwin com o comando RUN ou SwPRun(), este último se vc linka com BLINKER.
Um abraço...
Eu tb uso o PRWIN do Wagner. Funciona muito bem.
Para vc imprimir sem sair do programa basta vc chamar o prwin com o comando RUN ou SwPRun(), este último se vc linka com BLINKER.
Um abraço...
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Amiguinhos
O SET DEVICE TO e SET DEVICE TO PRINTER apenas fazem uma alteração interna na resposta do comando @...SAY.
Se voce fizer isto:
@ 10,10 SAY 'Sai na tela'
SET DEVICE TO PRINTER
@ 12,10 SAY 'Sai na impressora'
Assim:
SET DEVICE TO PRINTER
@ 10,10 SAY 'Sai na tela'
SET DEVICE TO
@ 12,10 SAY 'Sai na impressora'
Voce verá como funciona o comando.
Para imprimir em USB é melhor usar um aplicativo que trabalhe e, background e capture em algum diretorio a saida de seu impresso no formato .TXT.
Ao final do relatorio repita os comandos de desligamento de impressão:
SET PRINTER TO arquivo.txt
SET DEVICE TO PRINTER
...
corpo do relatorio
...
SET DEVICE TO
SET PRINTER TO
SET PRINTER TO
Desta forma voce forcou um desligamento do comando de impressão:
Outra dica é voce escrever em arquivo .TXT em modo baixo nivel usando fcreate, fwrite e fclose, como:
O SET DEVICE TO e SET DEVICE TO PRINTER apenas fazem uma alteração interna na resposta do comando @...SAY.
Se voce fizer isto:
@ 10,10 SAY 'Sai na tela'
SET DEVICE TO PRINTER
@ 12,10 SAY 'Sai na impressora'
Assim:
SET DEVICE TO PRINTER
@ 10,10 SAY 'Sai na tela'
SET DEVICE TO
@ 12,10 SAY 'Sai na impressora'
Voce verá como funciona o comando.
Para imprimir em USB é melhor usar um aplicativo que trabalhe e, background e capture em algum diretorio a saida de seu impresso no formato .TXT.
Ao final do relatorio repita os comandos de desligamento de impressão:
SET PRINTER TO arquivo.txt
SET DEVICE TO PRINTER
...
corpo do relatorio
...
SET DEVICE TO
SET PRINTER TO
SET PRINTER TO
Desta forma voce forcou um desligamento do comando de impressão:
Outra dica é voce escrever em arquivo .TXT em modo baixo nivel usando fcreate, fwrite e fclose, como:
Código: Selecionar todos
// Cria arquivo
errfile := "arquivo.txt"
ret_line := "chr(13)+chr(10)"
errhandle := fcreate(errfile)
lin := 1
//
USE arquivo
GO TOP
DO while .not. eof()
@ 24,0 say 'Imprimindo a linha '+str(lin,3)
VariavelAImprimir := SUBSTR(campoC,1,30) + " " + ;
STR(campoN,5) + " " + ;
TRANSF(campoN,"@e 999,999.99") + " " + ;
DTOC(campoD)
fwrite(errhandle, VariavelAImprimir + &ret_line.)
lin := lin + 1
ENDDO
fclose(errhandle)
Depois basta usar comando de envio à impressora através do RUN do Clipper ou do RUN do BLinker.
RUN "COPY "+errfile+" LPT1"
Neste caso eu suponho que LPT1 seja usada pela impressora USB.
Continuo frizando que ''e melhor usar um utilitário extra sistema e parar de quebrar a cabeça.
@braços :?)
