impressora bematech não fiscal
Moderador: Moderadores
-
kakamachado
- Usuário Nível 1

- Mensagens: 30
- Registrado em: 07 Mar 2016 18:54
- Localização: Rio de Janeiro
impressora bematech não fiscal
Caros amigos, uso a Minigui e preciso imprimir numa impressora Bematech não fiscal (Sistema de Caixa). Alguém tem experiência com esta impressora? Poderia colocar um exemplo de impressão (código do programa)? Obrigado
- Mario Mesquita
- Usuário Nível 4

- Mensagens: 613
- Registrado em: 08 Dez 2009 13:47
- Localização: Rio de Janeiro
impressora bematech não fiscal
Bom dia.
Matricial, né? Eu tenho uma rotina de impressão de um recibo. Nesse trecho tem o que precisa usar. Eu uso @ SAY como no clipper.
Ali em "SETFIRM->PATH_REC" é o path da impressora na máquina, deixei variável mas pode ser fixo tb. O resto é padrão.
Saudações,
Mario.
Matricial, né? Eu tenho uma rotina de impressão de um recibo. Nesse trecho tem o que precisa usar. Eu uso @ SAY como no clipper.
Ali em "SETFIRM->PATH_REC" é o path da impressora na máquina, deixei variável mas pode ser fixo tb. O resto é padrão.
Código: Selecionar todos
SET DEVICE TO PRINTER
IF TestesMario
SET PRINTER TO RECIBO.TXT
ELSE
IF ! EMPT(SETFIRM->PATH_REC)
IF Frm_Firmas.Rdg_ImpRec.Value == 1
xImp := ALLTRIM(SETFIRM->PATH_ETQ)
ELSE
xImp := ALLTRIM(SETFIRM->PATH_REC)
ENDIF
SET PRINTER ON
SET PRINTER TO &(xImp)
ELSE
RETURN .F.
ENDIF
ENDIF
SETPRC(0,0)
@ 00,0 SAY PADC("ESTADO DO RIO DE JANEIRO",47)
@ 01,0 SAY PADC(ALLTRIM(SETFIRM->CLIENTE), 47)
@ 02,0 SAY PADC(ALLTRIM(SETFIRM->ENDCLI), 47)
@ 03,0 SAY PADC(ALLTRIM(SETFIRM->COMPLM), 47)
@ 04,0 SAY PADC(ALLTRIM(SETFIRM->CIDADE)+"/"+SETFIRM->ESTADO,47)
@ 05,0 SAY PADC("CNPJ:"+TRANSFORM(SETFIRM->CNPJ,"@R 99.999.999/9999-99"),47)
Mario.
-
kakamachado
- Usuário Nível 1

- Mensagens: 30
- Registrado em: 07 Mar 2016 18:54
- Localização: Rio de Janeiro
impressora bematech não fiscal
Bom dia Mario, obrigado pela atenção. Não é matricial não, é uma impressora Bematech não fiscal, modelo MP 4200-TH, de bobina. Ainda não comprei, daí não ter podido fazer testes. Não sei se os comandos de impressão no xarbour são os mesmos que uso para uma impressora comum laser. Ela tem comandos para corte de papel, etc.
-
Ivone Lopes da Silva
- Colaborador

- Mensagens: 80
- Registrado em: 23 Out 2004 21:57
- Localização: São João da Boa Vista/SP
- Curtiram: 1 vez
impressora bematech não fiscal
Acho que aqui tem algumas informações sobre o assunto.
viewtopic.php?f=4&t=16918&hilit=mp4200
Se fizer uma pesquisa no fórum pelo nome da impressora vai aparecer bastante informação.
Fiz há algum tempo atrás essa pesquisa e lembro que encontrei bastante coisa e um dos materiais que pesquisei foi do link acima.
viewtopic.php?f=4&t=16918&hilit=mp4200
Se fizer uma pesquisa no fórum pelo nome da impressora vai aparecer bastante informação.
Fiz há algum tempo atrás essa pesquisa e lembro que encontrei bastante coisa e um dos materiais que pesquisei foi do link acima.
- carlaoonline
- Usuário Nível 3

- Mensagens: 190
- Registrado em: 24 Ago 2014 22:38
- Localização: Porto Alegre-RS
impressora bematech não fiscal
Bom dia!
Antigamente, na época de impressoras de agulhas, se programava em função das impressoras, enviando Chr(15), Chr(18), etc.... para imprimir em Negrito, Itálico, SubEscrito, Condensado, etc.....
Hoje não vejo a necessidade disso uma vez que as impressoras imprimem o que está no arquivo/tela.
Uma impressora térmica fiscal ou não, é a mesma coisa que uma impressora jato de tinta/laser normal com a diferença ficando apenas na quantidade de colunas para o papel usado.
Se você conectar uma impressora fiscal no PC e fizer um texto no Word ele vai imprimir normalmente nessa impressorinha, apenas tem que cuidar até onde irão escrita as frases no Word( até qual coluna a impressora aceita na mesma linha).
Se optar em programar enviando códigos específicos para a impressora, talvez uma nova impressora não aceite esses códigos e terá que ficar reinventando a roda a cada impressora utilizada.
No meu caso, eu crio os recibos e notas em PDF pelo meu app em Harbour, gravando em disco e em seguida mandando imprimir com outro aplicativo com um comando enviado pelo meu app Harbour.
A maioria dos visualizadores de PDF aceitam imprimir diretamente por linha de comando, abrindo um PDF e imprimindo na impressora selecionado, o Foxit Reader, o Sumatra e até mesmo o Adobe aceitam esses comandos. E você nem precisa instalar o esse visualizador no PC do cliente, basta apenas copiar o executável e deixar na pasta do seu app ou em outra que quiser, utilizando ele apenas pelo app.
Exemplo de linha de comando utilizando o Sumatrapdf.exe
Caso quiser um recibo bem simples, apenas com letras e números, você pode salvar em um arquivo TXT e mandar imprimir direto do App Harbour, sem precisar usar PDF.
Exemplo de código
(Pode mudar os parâmetros de SetFont)
Não esqueça que é muito importante configurar a impressora nas configurações do Windows, caso contrário irá mandar imprimir um frase e o Windows ira dar um avanço gigante no papel.
-------------------------------------------------------------
Passei essas coordenadas para um amigo, talvez lhe ajude se tiver dificuldades em configurar a sua:
-------------------------------------------------------------
Clicar no Menu Iniciar
Ir em Dispósitivos e Impressoras
Localizar a impressora 'Sua impressora escolhida'
COM BOTAO DIREITO NA 'Sua impressora escolhida' vá em:
PROPRIEDADES DA IMPRESSORA->PORTAS->ESCOLHER USB001 ou USB002 e ENTER
NOVAMENTE COM BOTAO DIREITO NA 'Sua impressora escolhida' vá em:
PROPRIEDADES DA IMPRESSORA->GERAL->PREFERENCIAS->PAPEL/QUALIDADE->AVANCADO->TAMANHO DO PAPEL-> Escolher 210mm e de OK ate´sair.
-------------------------------------------------------------
kakamachado escreveu: uso a Minigui e preciso imprimir numa impressora Bematech não fiscal
Antigamente, na época de impressoras de agulhas, se programava em função das impressoras, enviando Chr(15), Chr(18), etc.... para imprimir em Negrito, Itálico, SubEscrito, Condensado, etc.....
Hoje não vejo a necessidade disso uma vez que as impressoras imprimem o que está no arquivo/tela.
Uma impressora térmica fiscal ou não, é a mesma coisa que uma impressora jato de tinta/laser normal com a diferença ficando apenas na quantidade de colunas para o papel usado.
Se você conectar uma impressora fiscal no PC e fizer um texto no Word ele vai imprimir normalmente nessa impressorinha, apenas tem que cuidar até onde irão escrita as frases no Word( até qual coluna a impressora aceita na mesma linha).
Se optar em programar enviando códigos específicos para a impressora, talvez uma nova impressora não aceite esses códigos e terá que ficar reinventando a roda a cada impressora utilizada.
No meu caso, eu crio os recibos e notas em PDF pelo meu app em Harbour, gravando em disco e em seguida mandando imprimir com outro aplicativo com um comando enviado pelo meu app Harbour.
A maioria dos visualizadores de PDF aceitam imprimir diretamente por linha de comando, abrindo um PDF e imprimindo na impressora selecionado, o Foxit Reader, o Sumatra e até mesmo o Adobe aceitam esses comandos. E você nem precisa instalar o esse visualizador no PC do cliente, basta apenas copiar o executável e deixar na pasta do seu app ou em outra que quiser, utilizando ele apenas pelo app.
Exemplo de linha de comando utilizando o Sumatrapdf.exe
Código: Selecionar todos
IMPRESSORA="Nome exato da sua impressora aqui como esta no Windows"
TEMPORARIO="C:\CLIENTE_TAL"
NET7="Arq_10"
BB = "START &TEMPORARIO"+"sumatrapdf.exe -print-to "+CHR(34)+IMPRESSORA+CHR(34)+" &NET7"+".PDF"
HB_RUN( BB )
ALERT("Documento enviado para a impressora;"+ IMPRESSORA)
// Na janela do CMD, você pode fazer o teste direto, apenas coloque o nome da sua impressora entra as aspas.
// sumatrapdf.exe -print-to "Brother DCP-B753DW series Printer" Recibo.pdf
// ATENCAO:
// HB_Run com o START, executa o programa em segundo plano, a parte, e não pausa a execução do app principal que fez a chamda.
// HB_Run sem o START, aguarda o término da execução para voltar ao app principal que fez a chamada.
Caso quiser um recibo bem simples, apenas com letras e números, você pode salvar em um arquivo TXT e mandar imprimir direto do App Harbour, sem precisar usar PDF.
Exemplo de código
(Pode mudar os parâmetros de SetFont)
Código: Selecionar todos
// IMPRIME UM ARQUIVO TEXTO EM QUALQUER IMPRESSORA NO MODO TEXTO NORMAL
// Chamar assim:
// PrintWinPrn("Recibo.txt", IMPRESSORA)
// ou
// PrintWinPrn( cArq , IMPRESSORA)
Function PrintWinPrn( cArq, cPrint )
Local oPrn, aPrn := GetPrinters(), n := 0
oPrn := Win_Prn():New(cPrint)
oPrn :Copies := 1
oPrn :CharSet(155)
oPrn :SetFont( "Lucida Console", 8, { 3, -50 } )
*oPrn:SetFont('courier new',17,{1,17}, 0,.F.,.F.)
If !oPrn:Create()
Alert("Nao foi criado o documento de Impressao")
Return nil
EndIf
If !oPrn:StartDoc("Imprimindo Documento")
Alert("Erro na Impressora")
Return nil
EndIf
*HB_CDPSelect("PT850")
HB_SETCODEPAGE( "PT850" )
SetPrc(0,0)
cText := MemoRead( cArq )
nLinh := MlCount( cText )
For n := 1 to nLinh
*oPrn:TextOut(HB_AnsiToOem(CHR(27) + CHR(33) + CHR(1)+MemoLine(cText,,n)),.t.)
oPrn:TextOut(HB_AnsiToOem(MemoLine(cText,,n)),.t.)
Next
oPrn:EndDoc()
*HB_CDPSelect( "PTISO")
Return .t.
Não esqueça que é muito importante configurar a impressora nas configurações do Windows, caso contrário irá mandar imprimir um frase e o Windows ira dar um avanço gigante no papel.
-------------------------------------------------------------
Passei essas coordenadas para um amigo, talvez lhe ajude se tiver dificuldades em configurar a sua:
-------------------------------------------------------------
Clicar no Menu Iniciar
Ir em Dispósitivos e Impressoras
Localizar a impressora 'Sua impressora escolhida'
COM BOTAO DIREITO NA 'Sua impressora escolhida' vá em:
PROPRIEDADES DA IMPRESSORA->PORTAS->ESCOLHER USB001 ou USB002 e ENTER
NOVAMENTE COM BOTAO DIREITO NA 'Sua impressora escolhida' vá em:
PROPRIEDADES DA IMPRESSORA->GERAL->PREFERENCIAS->PAPEL/QUALIDADE->AVANCADO->TAMANHO DO PAPEL-> Escolher 210mm e de OK ate´sair.
-------------------------------------------------------------
- Jamil
- Usuário Nível 1

- Mensagens: 14
- Registrado em: 25 Set 2016 14:12
- Localização: Rio De Janeiro
- Contato:
impressora bematech não fiscal
Boa Tarde kakamachado
voce deveria usar esc/pos existe um manual da Bematech
com esc/pos, serveria para qualquer impressora 40 colunas termica não fiscal
o manual da Bematech esta no site, https://github.com/ElginDeveloperCommun ... -4200%20TH
dá um pouco de trabalho mais vale a pena.
voce deveria usar esc/pos existe um manual da Bematech
com esc/pos, serveria para qualquer impressora 40 colunas termica não fiscal
o manual da Bematech esta no site, https://github.com/ElginDeveloperCommun ... -4200%20TH
dá um pouco de trabalho mais vale a pena.