Clipper On Line • Ver Tópico - InterfaceEpsonNF.dll

InterfaceEpsonNF.dll

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

 

InterfaceEpsonNF.dll

Mensagempor malcarli » 20 Ago 2015 18:23

Boa noite, estou implementado a Nfc_e com Sat. Para imprimir vou usar a impressora não-fiscal epson tm-t20. Já estou tentando a vários dias, mas não consigo que as funções da dll funcionem. Estou usando harbour x minigui extended 2.5.1. Com fivewin funciona. Existe alguma incompatibilidade com a declaração da dll na minigui. Tentei fazer rotinas em c, usando diversas formas, mas sem sucesso. Alguém tem a solução ? Desde já agradeço qq ajuda. Obrigado
malcarli
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 181
Data de registro: 20 Ago 2015 18:14
Cidade/Estado: marilia/sp
Curtiu: 81 vezes
Mens.Curtidas: 4 vezes

InterfaceEpsonNF.dll

Mensagempor momente » 26 Ago 2015 17:34

makcarli,

boa tarde!

Qual SAT vc esta utilizando (marca/modelo), outra coisa você tem certeza que esta impressora Epson TM-T20 esta homologada pra utilizar com esta SAT que você esta utilizando?

abraço!
Rogerio L. Momenté
Nada é tão perfeito que não possamos melhorar.
Nunca se explique. Seus amigos não precisam e seus inimigos não vão acreditar.
www.looksystem.com.br
Avatar de usuário

momente
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 496
Data de registro: 03 Mar 2005 11:53
Cidade/Estado: São Carlos-SP
Curtiu: 0 vez
Mens.Curtidas: 0 vez

InterfaceEpsonNF.dll

Mensagempor malcarli » 27 Ago 2015 08:55

Bom dia o sat que estamos usando é da sweda SS-1000. O Sat está funcionando perfeitamente. Para a impressão o cliente optou pela impressora da epson tm-t20, mas a dll que tem o comando de impressão do xml, não funciona em harbour com minigui. Funciona em fivewin. Vi que no fivewin as chamadas são diferentes. Este equipamento pode ser usado com o sat, assim como qq impressora não fiscal. Com impressoras da sweda, daruma e bematech funcionou sem problemas

Att.

Marcelo A. L. Carli
Marília/SP
Capital Nacional do Alimento ®

http://marcelo.lx.com.br
http://www.marazambon.blogspot.com/
Email / Skype: malcarli@life.com.br

******************************************************************************
Se for repassar, apague o meu nome e endereço.
Ajude a combater a propagação de vírus e spams
coloque TODOS os destinatários em CÓPIA OCULTA (Cco / Bcc)
******************************************************************************
malcarli
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 181
Data de registro: 20 Ago 2015 18:14
Cidade/Estado: marilia/sp
Curtiu: 81 vezes
Mens.Curtidas: 4 vezes

InterfaceEpsonNF.dll

Mensagempor HASA » 31 Ago 2015 10:56

Marcelo, veja a ultima opção desse link, talvez ajude:
http://global.latin.epson.com/Peps/FAQ
:)Pos
HASA
Avatar de usuário

HASA
Colaborador

Colaborador
 
Mensagens: 1082
Data de registro: 01 Set 2003 19:50
Cidade/Estado: São Paulo
Curtiu: 1 vez
Mens.Curtidas: 51 vezes

InterfaceEpsonNF.dll

Mensagempor malcarli » 31 Ago 2015 13:47

Obrigado irei testar e comento o resultado aqui, posteriormente

Att.
Marcelo A. L. Carli
Marília/SP
Capital Nacional do Alimento ®
http://marcelo.lx.com.br
http://www.marazambon.blogspot.com/
email / Skype: malcarli@life.com.br
malcarli
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 181
Data de registro: 20 Ago 2015 18:14
Cidade/Estado: marilia/sp
Curtiu: 81 vezes
Mens.Curtidas: 4 vezes

InterfaceEpsonNF.dll

Mensagempor malcarli » 09 Set 2015 17:12

Caro HASA, seguindo todos os passos do link que enviou, não deixa instalar conforme as instruções do próprio passo a passo. Em contato com o suporte da Epson, os mesmos não sabem explicar este processo de instalação
malcarli
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 181
Data de registro: 20 Ago 2015 18:14
Cidade/Estado: marilia/sp
Curtiu: 81 vezes
Mens.Curtidas: 4 vezes

InterfaceEpsonNF.dll

Mensagempor HASA » 10 Set 2015 11:58

Avatar de usuário

HASA
Colaborador

Colaborador
 
Mensagens: 1082
Data de registro: 01 Set 2003 19:50
Cidade/Estado: São Paulo
Curtiu: 1 vez
Mens.Curtidas: 51 vezes

InterfaceEpsonNF.dll

Mensagempor malcarli » 11 Set 2015 08:52

Obrigado, estava começando a fazer em miniprint também já que não consegui usar a dll. Queria a solução da dll para ganhar tempo na implementação, pois o ideal é não depender de nenhuma dll. Mas com certeza irá servir
malcarli
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 181
Data de registro: 20 Ago 2015 18:14
Cidade/Estado: marilia/sp
Curtiu: 81 vezes
Mens.Curtidas: 4 vezes

InterfaceEpsonNF.dll

Mensagempor HASA » 11 Set 2015 09:16

:))
Bacana que gostou, sobre fazer via miniprint/hbprint também é possível, mas... tem um limite de pagina tipo não vai aceitar mais de 30 a 40 itens + qrcode, para vendas com poucos itens 30 no máximo ( acredito eu ) dará certo e fica com a liberdade de colocar imagem (logo da empresa) no cabeçalho, estou estudando como passar a barreira dos itens e poder imprimir com itens infinitos, mas... pelo que já li no forum do acbr não tem jeito, a luta continua...
:)Pos
HASA
Avatar de usuário

HASA
Colaborador

Colaborador
 
Mensagens: 1082
Data de registro: 01 Set 2003 19:50
Cidade/Estado: São Paulo
Curtiu: 1 vez
Mens.Curtidas: 51 vezes

InterfaceEpsonNF.dll

Mensagempor malcarli » 11 Set 2015 09:47

Hum não sabia deste detalhe. Usei o teste para imprimir em uma lx-300 e não imprimiu o qrcode. Vc testou na t-20, pois não estou com ela aqui no momento
malcarli
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 181
Data de registro: 20 Ago 2015 18:14
Cidade/Estado: marilia/sp
Curtiu: 81 vezes
Mens.Curtidas: 4 vezes

InterfaceEpsonNF.dll

Mensagempor HASA » 11 Set 2015 09:57

:?
Não imprime o qrcode em matricial, somente em jato de tinta, laser ou térmica ok.
:)Pos
HASA
Avatar de usuário

HASA
Colaborador

Colaborador
 
Mensagens: 1082
Data de registro: 01 Set 2003 19:50
Cidade/Estado: São Paulo
Curtiu: 1 vez
Mens.Curtidas: 51 vezes

InterfaceEpsonNF.dll

Mensagempor malcarli » 11 Set 2015 10:21

obg irei testar então em uma laser
malcarli
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 181
Data de registro: 20 Ago 2015 18:14
Cidade/Estado: marilia/sp
Curtiu: 81 vezes
Mens.Curtidas: 4 vezes

InterfaceEpsonNF.dll

Mensagempor HASA » 11 Set 2015 10:58

:?
Creio eu que não dará certo por causa dos comandos tipo D.O.S chr...., quando falei das jato de tinta e laser me refiro a impressão via Miniprint e Hbprint, ou seja, com os comandos dessas lib´s, com os comandos chr... em impressora matricial aceita expandido, negrito menos qrcode e código de barras acredito também que não, finalizando chr... para qrcode somente em térmicas.
HASA
Avatar de usuário

HASA
Colaborador

Colaborador
 
Mensagens: 1082
Data de registro: 01 Set 2003 19:50
Cidade/Estado: São Paulo
Curtiu: 1 vez
Mens.Curtidas: 51 vezes

InterfaceEpsonNF.dll

Mensagempor malcarli » 14 Set 2015 11:52

Finalmente o pessoal da Epson fez um exemplo usando (x)harbour x minigui utilizando a dll. Notem que tem outros parâmetros que não estão documentados. Tem que instalar ela como vender class, conforme as instruções abaixo. O problema se usar como vender class é que vc só consegui imprimir usando dll, não dá por exemplo para enviar comandos de impressão com miniprint, chr etc

Vejam o exemplo:

/*****************************************************************************
* SISTEMA  : ROTINA EVENTUAL                                                *
* PROGRAMA : EXEMPLO_EPSON.PRG                                      *
* OBJETIVO : Impressão de XML do Cupom Fiscal Eletrônico - EPSON            *
* AUTOR    :                                                                *
* DATA     : 11.09.2015                                                     *
* ULT. ALT.: 11.09.2015                                                     *
*****************************************************************************/
#include <minigui.ch>
#define HB_DYN_CALLCONV_STDCALL             0x0100000 /* Windows API default */

Procedure Main()
   Public hLib
 
   REQUEST HB_LANG_PT
   HB_LangSelect([PT])
   REQUEST HB_CODEPAGE_PT850 &&& PARA INDEXAR CAMPOS ACENTUADOS
   HB_SETCODEPAGE([PT850])   &&& PARA INDEXAR CAMPOS ACENTUADOS

   Set wrap on
   Set talk off
   Set date briti             &&& data no formato dd/mm/aaaa
   Set dele on                &&& ignora registros marcados por deleção
   Set score off
   Set exact on
   Set ToolTip on
   Setcancel(.F.)             &&& evitar cancelar sistema c/ ALT + C
   Set cent on                &&& ano com 4 dígitos
   Set epoch to 2000          &&& ano a partir de 2000
   Set excl off               &&& abre arquivos em modo compartilhado
   Set navigation extended    &&& enter no lugar do tab
   Set language to portuguese &&& mensagens em português
   Set multiple off warning   &&& abrir 1 cópia somente
   Set browsesync on          &&& para o comando browse funcionar ok
   Set tooltipstyle balloon   &&& para mensagem dos campos em forma de balão
   Set menustyle extended     &&& padrão é standard, extended estilo office 2007
   Set programmaticchange off &&& introduzida na build 1.9.94

   define window main at 0, 0 width 200 height 150 ICON "demo.ico" NOTIFYICON "demo.ico" MAIN title [Impressão de XML do Cupom Fiscal Eletrônico - Epson] NOSIZE NOMAXIMIZE on init {|| fIniciar()}  on release {|| fLiberar()}

      define button btn_Abrirporta
         row 10
         col 10
         width 120
         caption [&Abrir Porta]
         action {|| fAbrirPorta()}
         DEFAULT .t.
      end button

      define button btn_Imprimir
         row 50
         col 10
         width 120
         caption [&Imprimir Nfc-e]
         action {|| fImprimirNfce()}
         DEFAULT .t.
      end button

      define button btn_FecharPorta
         row 90
         col 10
         width 120
         caption [&Fechar Porta]
         action {|| fFecharPorta()}
         default .t.
      end button
      
      on key escape action {|| thiswindow.release}
   end window

   main.center()
   main.activate()
Return (Nil)

Procedure fIniciar()
   If !File([InterfaceEpsonNF.dll])
      MsgStop([InterfaceEpsonNF.dll não encontrada na pasta atual.], [Erro])
      Quit
   Endif
   hLib := hb_libLoad( "InterfaceEpsonNF.dll" )

        If !File([sat.xml])
           MsgStop([Não achei o sat.xml para Imprimir], [Erro])
      Quit
        Endif
Return (Nil)

Procedure fLiberar()
   hb_libFree( hLib )
Return (Nil)

Function fAbrirPorta()
   Local iRetorno:= 0

   iRetorno:= hb_DynCall( { "IniciaPorta", hLib, HB_DYN_CALLCONV_STDCALL }, [USB], , , 1, , 1, 1, .T.)
   If iRetorno == 0
      MsgStop([Erro ao abrir a porta], [Erro])
      Return (.F.)
   Else
      MsgInfo([Retorno IniciaPorta ] + Iif(valtype(iRetorno) == [N], str(iRetorno), iRetorno) , [Erro])
      Return (.T.)
   Endif
Return (Nil)

Function fImprimirNfce()
   Local iRetorno:= 0

   iRetorno:= hb_DynCall( { "EPSON_SAT_Imprimir", hLib, HB_DYN_CALLCONV_STDCALL }, [sat.xml],[C] , , 1, , 1, 1, .T.)
   If iRetorno == 0
      MsgStop([Erro ao imprimir o XML], [Erro])
      Return (.F.)
   Else
      MsgInfo([Retorno EPSON_SAT_Imprimir ] + Iif(valtype(iRetorno) == [N], str(iRetorno), iRetorno) , [Erro])
      Return (.T.)
   Endif

   iRetorno:= hb_DynCall( { "AcionaGuilhotina", hLib, HB_DYN_CALLCONV_STDCALL }, 1, , ,1, , 1, 1, .T.)
   If iRetorno == 0
      MsgStop([Erro ao cortar papel], [Erro])
      Return (.F.)
   Else
      MsgInfo([Retorno AcionaGuilhotina ] + Iif(valtype(iRetorno) == [N], str(iRetorno), iRetorno) , [Erro])
      Return (.T.)
   Endif

Return (Nil)

Function fFecharPorta()
   Local iRetorno:= 0

   iRetorno:= hb_DynCall( { "FechaPorta", hLib, HB_DYN_CALLCONV_STDCALL })
   If iRetorno == 0
      MsgStop([Erro ao fechar a porta], [Erro])
      Return (.F.)
    Else
      MsgInfo([Retorno FechaPorta ] + Iif(valtype(iRetorno) == [N], str(iRetorno), iRetorno) , [Erro])
      Return (.T.)
   Endif
Return (Nil)


Manual de instalação do vender class

Sobre o Equipamento: A impressora TM-T20 é Plug and Play - vem pronta pra uso. Certifiicada com o selo mundial Energy Star que atesta o baixo consumo de energia. Possibilidade de utilização de bobinas de 80mm ou 58mm de largura. Flexível, pode ser instalada na horizontal, vertical ou vertical fixada na parede. Economia de espaço graças a alocação interna da fonte. Os drivers são otimizados e estão disponíveis para Windows, Linux, Mac e Android. Impressão de código de barras bi-dimensional residente na memória - PDF147, QR Code (pronta para NFC-e e S@T), entre outros.
Técnica: Entrando no detalhe técnico, a TM-T20 com interface de comunicação USB possui as seguintes opções de configuração: 1 - Printer Class (Configuração Inicial) Este modo configura a impressora para trabalhar com o protocolo padrão LPR, sendo automaticamente reconhecida pelo Windows quando conectada no micro. O Windows detectará a impressora como um novo dispositivo com o nome “Suporte de Impressão”. 2 – Vender Class Este modo configura a impressora para trabalhar com protocolo próprio do fabricante, sendo necessário utilizar um driver USB específico, chamado TMUSB, para reconhecimento e comunicação por meio da porta USB nativa da Epson, o que facilita a integração com aplicações desenvolvidas com biblioteca/API InterfaceEpsonNF.dll. PASSO-A-PASSO PARA REALIZAR A CONFIGURAÇÃO - Instalar o TM-T20 Software Utility que pode ser baixado no link –
https://download.epson-biz.com/modules/pos/index.php?page=single_soft&cid=3960&scat=42&pcat=3&pid=37
- Ao iniciar o Utility, adicione uma nova porta USB e clique no botão OK para entrar no menu das configurações avançadas da impressora. - Clique na opção do menu “Comunicação I/F”, em seguida mude a definição USB para o tipo “Vender Class”. Em seguida clique no botão “Definir” para realizar a configuração da impressora. Neste momento o aplicativo Utility já pode ser fechado e a impressora desligada. Após realizar a configuração acima, a impressora já estará trabalhando no modo Vender Class e permitirá efetuar a instalação do driver TMUSB. - O driver TMUSB versão 400c, pode ser baixado no link - http://epsonstars.com.br/drivers/TMUSB400c.zip
- Após baixar o driver, basta executar Setup.exe e realizar a instalação, que é bastante simples e rápida. - Religue a impressora para que seja novamente reconhecida pelo Windows com o novo driver. Pronto, a comunicação com a impressora não fiscal através da biblioteca InterfaceEpsonNF.dll já pode ser iniciada. No link a seguir você poderá baixar a InterfaceEpson e 15 exemplos de uso em diversas linguagens de programação. http://global.latin.epson.com/br/Catalogo/Epson-TM-T20/Drivers-e-Suporte
Nota de Moderação:
Toledo: Mensagem editada para colocar a tag [ code ]
Veja como utilizar esta tag: Clique aqui
malcarli
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 181
Data de registro: 20 Ago 2015 18:14
Cidade/Estado: marilia/sp
Curtiu: 81 vezes
Mens.Curtidas: 4 vezes

InterfaceEpsonNF.dll

Mensagempor NiltonGM » 03 Fev 2020 11:26

Pessoal,

Para emitir NFC-e pela impressora Epson TM-T20 + SAT Fiscal Epson - SAT-A10 pelo Harbour, o que eu preciso no Harbour? Estarei usando o HMG 3.4.4 em aplicativo 32 bits Desktop Windows.
Grato à quem puder me orientar.
Nilton Medeiros
nilton@sistrom.com.br
Avatar de usuário

NiltonGM
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 393
Data de registro: 05 Jun 2014 23:47
Cidade/Estado: Caieiras/SP
Curtiu: 249 vezes
Mens.Curtidas: 24 vezes




Retornar para MiniGui

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 6 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro