IMPRESSAO NO VB6

SIDSIL 28/08/2014 12:28:37
#440750
Boa Tarde Amigos

Estou usando o comando [Ô]Printer.Print Tab(14); [Ô]Exportador[Ô] , para imprimir em um formulario continuo de nota fiscal.
Acontece que eu tenho de imprimir duas coisas para o mesmo processo.Um relatorio na impressora lazer e a nota fiscal na impressora de formulario continio (Epson Lx 300, acreditem).

A impressao na impressora laser ate que demora alguns segundos mas sai sem problemas mas a impressao na matricial nao sai.Eu tenho que sair totalmente do sistema para liberar a impressao.Esqueci de dizer que as duas impressorass estao em rede.

Quando vou imprimir da maquina onde a impressora matricial esta conectada, a impressao sai na hora mas quando vou imprimir via rede de outra maquina, tenho que sair do sistema para liberar a impressao.

Como posso resolver isso, para que nao tenha mais que fechar o sistema para liberar a impressao, pois afinal de contas, nao da para sair a todo instante do sistema para liberar a impressao, sendo que depois tenho que entrar e sair de novo para liberar as proximas impressoes.


Obrigado e um Abraço
SINCLAIR 28/08/2014 13:12:02
#440752
Resposta escolhida
Colega,

O Spool do windows está cheio e aguardando por mais dados que, quando você sai do sistema, encerra o spool (começa a impressão).

Coloque o Printer.EndDoc logo após o término (caso não tenha colocado).

Dê um retorno se conseguiu ou não e vamos continuando, caso não tenha conseguido.

Mesmo em rede, para matriciais eu preferiria abrir a impressora ao inves de usar o objeto Printer. Por exemplo:

close #1
open [Ô]\\micro1\epsonlx[Ô] for output as #1
print #1,[Ô]Imprimiu na matricial[Ô],space(40),[Ô]Depois de 40 colunas, este texto[Ô]
print #1,[Ô][Ô]
print #1,[Ô]Depois de uma linha em branco, agora nova impressão[Ô]
close #1

Tudo de bom.
SIDSIL 28/08/2014 15:13:05
#440758
Boa Tarde

Muito obrigado por sua ajuda ZEUZEBIO3

Eu estou usando o Printer.Print [Ô][Ô] e nao o Print #1

Eu uso o Printer.EndDoc, no final da impressao mas nem assim ela e liberada.
Repito que esse problema so ocorre na impressao remota, quando vou imprimir na impressora local que e a mesma, isso nao acontece.


Obrigado e um Abraço
VB6MASTER 28/08/2014 20:40:25
#440766
Poste parte do código para abrir a impressora remota.
Agora aqui de cabeça, não me recordo perfeitamente, mas, eu utilizada um código diferente para impressora matricial e outro para laser/jato de tinta.
Outra coisa, você utiliza o mesmo código tanto para uma como pra outra?
SINCLAIR 29/08/2014 10:03:39
#440773
Amigo SDSIL,

Se me permitir palpitar com um conselho, use o objeto Printer apenas para Laser/Jato de tinta.

Para matriciais, use com open e close. Funciona legalzinho na rede.

Te falo isto porque eu tive o mesmo problema e só resolvi com open/close, porque Printer dava problema (algumas vezes até local, não se comporta bem com matricial - motivo desconheço)

Tudo de bom.
SIDSIL 19/10/2014 09:24:27
#442026
Bom Dia Amigos

Bem, apos taNto quebrar a cabeça, consegui resolver o meu problema.

Usei o comnto Print que realmente e melhor para impressoras matriciais.

open [Ô]\\micro1\epsonlx[Ô] for output as #1
print #1,[Ô]Imprimiu na matricial[Ô],
print #1,[Ô][Ô]
close #1

Agora a impressao em rede e iniciada de imediato e eu nao preciso mais sair do sistema para liberar a impressao.

Obrigado a todos e um abraço
Tópico encerrado , respostas não são mais permitidas