PROBLEMA COM IMPRESSORA MP-20

BARBOZA1985 08/12/2010 13:56:52
#359098
Pessoal, alguem pode me ajudar??????
Tem um aplicativo meu de controle de restaurante que usa impressora [Ô]não fiscal[Ô].
Sendo que estou tendo problema na impressao.
To usando VB nessa aplicacao e na impressao simplesmente uso o comando [Ô]Printer.Print[Ô], sem setar a impressora...
Eu simplesmente coloco ela como impressora padrão e mando o comando pra ela no sistema.
O problema é que após imprimir a parcial de uma conta, o sistema imprime e qdo dou Printer.EndDoc a impressora joga um monte de papel....
Passando mais de um [Ô]palmo[Ô] de papel em excesso...
Já tentei de tudo que ja vi aqui e no Google e não consegui resolver...

Uso o Printer.print...
mas já tentei tbm a impressao diretamente pela porta da impressora e NADA!!!!

Alguem ai consegue resolver???

Felipe Barboza
FEDERHEN 09/12/2010 08:34:48
#359164
Já tentou resetar a impressora antes de mandar o comando Printer.EndDoc
O comando para isso é Printer.Print chr(27) & [Ô]@[Ô]
ALTAFIN 09/12/2010 08:51:53
#359165
Isso ocorre porque o objeto Printer pega a configuração do tipo do papel para a impressora padrão, veja se a configuração do papel da impressora padrão não está como Carta ou A4.
Mesmo sendo uma impressora não fiscal, quando você envia o comando Printer.EndDoc ele imprime conforme o tamanho do papel definido como default na impressora. Não tem como usar o Printer e ao solicitar a impressão ele imprima apenas as linhas que você enviou com Printer.print.

A última vez que fiz isso com impressora não fiscal, era porta serial (USB não deu certo), eu [Ô]abria[Ô] a impressora (open [Ô]COM2:[Ô] for output as #1) e mandava os comandos direto para ela (print #1,[Ô]produto 1[Ô]), quando queria pular uma linha usava print #1,chr(13) & chr(10) (próxima linha e retorno da cabeça de impressão). Mas isso só funciona com porta serial (COM) ou paralela (LPT), porta USB não consegui fazer funcionar.

Recomendo que veja se existe uma DLL para esse modelo de impressora (acredito que sim) e veja no site ou manual se existe parâmetros que você possa informar e essa DLL fazer a impressão para você. Fiz isso uma vez com uma Bematech (não lembro o modelo) para impressão de cheque.

[][ô]s
Marcelo Luiz Altafin
BARBOZA1985 10/12/2010 12:25:10
#359281
não resolveu ainda!!!
ADHEL 10/12/2010 12:57:37
#359286
Resposta escolhida
Eu passei por um problema parecido.Resolvi com a informação de um tópico aqui do VBMANIA mesmo.
Não vou lembrar o nome do tópico agora,mais quem resolveu a questão foi o grande amigo LLAIA .Que acabou resolvendo o meu problema também.No meu caso criei um formulario na medidda desejada na tela de impressora e coloquei ele como padrão.Como na ocasião só ia usar essa impressora no pc deu tudo certo.
O meu tópico foi esse
http://vbmania.com.br/pages/index.php?varModulo=Forum&varMethod=abrir&varID=352845
Aqui fica o meu agradecimento ao LLAIA,
BARBOZA1985 18/12/2010 11:34:39
#359839
CONSEGUI PESSOAL!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

COMO RESOLVI:
no painel de controle, em impressoras, menu [Ô]Arquivos[Ô] -> Propriedades do servidor.
Criei um novo formulário de impressão com as seguintes medidas:
Altura: 2 cm
Largura: 12 cm

A impressora jogava papel pra cima porque ela tentava completar a pagina como se fosse [Ô]A4[Ô].
Ao configurar esse formulário, é só colocá-lo como padrão para a impressora.
No caso, ela no máximo vai passar 1cm para cima... perfeito para o corte do papel!!!
Tópico encerrado , respostas não são mais permitidas