Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Problema de comunicação com a impressora bematech MP – 20


Barfis

Pergunta

Boa tarde galera!

Estou com um problema para imprimir comprovante de vendas meu cliente tem um micro em um mercado pequeno e precisa dessa impressão, o meu problema é que esta dando um erro de comunicação na impressão desse cupom, so no cupom pois os relatórios de apoio q eu fiz no quickreport imprime normal, so os do cupom não imprime segue o código.

procedure Tformimprimir.Button1Click(Sender: TObject);
  VAR
    I:Integer;
    F : TextFile;
    VDATA : String;
    VHORA : String;
    imp : String;
begin

    VDATA := '' + FormatDateTime ('dd"/"mm"/"yyyy',now);
    VHORA := timetostr (now);
    imp := dmempresa5.tabempresaimpressora.Text;
    AssignFile(F, dmempresa5.tabempresaimpressora.Text);
    Rewrite(F);
    Writeln(F,#27#15 + '    Comprovante de venda.      ');
    Writeln(F,'                                                         ');
    Writeln(F,'Cartão                Cupom: '+ inttostr(dtmnotafiscal11.tabnotafiscalnumeronotafiscal.Value));
        //Writeln(F,#27#15+'_________________________________________________________'); //Pula linha
       //Writeln(F,'                                                         ');
       Writeln(F,vdata + '                   ' + VHORA                    );
       Writeln(F,'_________________________________________________________');
       Writeln(F,'Qtd:          Valor:         Total:         ');
       cdsvenda.first;
       while not cdsvenda.Eof do
       begin
           Writeln(F,#27#15 + cdsvendanome.text );// imprime os dados da dbgrid
           Writeln(F,#27#15 + '' + inttostr(cdsvendaquantidade.value) + '             '+ DBEdit2.Text + '        ' + DBEdit1.Text); // imprime os dados da dbgrid
           cdsvenda.Next; // pula para o proximo registro.
       end; // volta para o while até que seja o final...
       Writeln(F,'_________________________________________________________');
       Writeln(F,#27#15 + '     Qtde. Total: ' + dtmtotal.cdstotalquantidade.Value);
       Writeln(F,#27#15 + '     Sub. Total.: ' + DBEdit3.Text);
       //Writeln(F,#27#15 + '     Desc. Total: ' + DBEdit4.Text);
       Writeln(F,#27#15 + '     Total......: ' + DBEdit5.Text);
       //Writeln(F,#27#15 + '     Dinheiro...: ' + DBEdit6.Text);
       //Writeln(F,#27#15 + '     Troco......: ' + DBEdit7.Text);
       Writeln(F,'_________________________________________________________');
       //Writeln(F,'                                                         ');
       Writeln(F,#27#15 + 'Vendedor: ' + cdsvendadadosnumerovendedo.Text + ' ' + cdsvendadadosvendedor.Text);
       Writeln(F,'                                                         ');
       if (cdsvendadadoscliente.Text <> '') then
       begin
           Writeln(F,#27#15 + 'Cliente..: ' + cdsvendadadoscliente.Text);
           Writeln(F,#27#15 + 'Endereço.: ' + cdsvendadadosendereco.Text);
           Writeln(F,#27#15 + 'Numero...: ' + cdsvendadadosnumero.Text);
           Writeln(F,#27#15 + 'Bairro...: ' + cdsvendadadosbairro.Text);
           Writeln(F,#27#15 + 'Telefone.: ' + cdsvendadadostelefone.Text);
       end;
       //Writeln(F,'                                                         ');
       //Writeln(F,'       ___________________________________________       ');
       //Writeln(F,'                        Assinatura                       ');
       Writeln(F,'_________________________________________________________');
       Writeln(F,#27#15 + '' + dmempresa5.tabempresarodape.Text);
       //Writeln(F,'_________________________________________________________');
       //Writeln(F,'                                                         ');
       //Writeln(F, #10); // Ejeta a página
       Writeln(F,'                                                         ');
       Writeln(F,'                                                         ');
       Writeln(F,'                                                         ');
       Writeln(F,'                                                         ');
       Writeln(F,'                                                         ');
       Writeln(F,'                                                         ');
       Writeln(F,'                                                         ');
       Writeln(F,'                                                         ');
       Writeln(F,'                                                         ');
       Writeln(F,'                                                         ');
       Writeln(F,'                                                         ');
       Writeln(F,'                                                         ');
       Writeln(F,'                                                         ');
       Writeln(F,'                                                         ');
       Writeln(F,#27#15+ '' + dmempresa5.tabempresacabecalho1.Text);
       Writeln(F,#27#15+ '' + dmempresa5.tabempresacabecalho2.text);
       Writeln(F,#27#15+ '' + dmempresa5.tabempresacabecalho3.text);
       Writeln(F,#27#15+ '' + dmempresa5.tabempresacabecalho4.Text);
       Writeln(F,'                                                         ');
       Writeln(F,'                                                         ');
       CloseFile(F);
 end;

Urgente!

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
Veja a diferença:

AssignFile(F, dmempresa5.tabempresaimpressora.Text);
Rewrite(F);
AssignFile(F,'LPT1');
ReWrite(F);

abraço

Normalmente a impressora bermatech utiliza a porta de comunicação COM1,COM2

em casos destas já está em uso ela usa a COM3,

no link abaixo a exemplos em delphi talvez te ajude ate mais

http://www.bematech.com.br/suporte/dwn_softwares.asp

Link para o comentário
Compartilhar em outros sites

  • 0

sim, mas não lembrei de falar esse campo é o endereço da impressora, no caso se eu utilisar o \\ip\impressora funciona, mas o micro do meu cliente não tem ip. mesmo eu colocando um ip não da certo esse é o problema sera q tem outra forma?

Editado por Barfis
Link para o comentário
Compartilhar em outros sites

  • 0

ae galera deu certo esse esquema so para complementa.

quando a empressora estiver em rede é so usar:

\\nome do servidor de impressora\ nome dea impressora.

e se for impressora local:

\\ip\nome da impressora.

ou a porta q no meu caso foi LPT1

vlw pela ajuda.

abraços para todos!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...