cortar papel if bematech usando xhb

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

paiva
Usuário Nível 3
Usuário Nível 3
Mensagens: 300
Registrado em: 04 Ago 2005 10:28

cortar papel if bematech usando xhb

Mensagem por paiva »

desculpem se não for neste grupo

ao imprimir o recibo do TEF estou querendo cortar o papel

testei

if _bematech = .t.
*cortando o papel não funcionou na MP 4000

xTxt = chr(27)+chr(86)+repl(" ",50)
ECF_UsaCupomNaoFiscal( Left(StrTran( xTxt, CRLF), 48) )

Não cortou o papel depois vi na net que teria que ter um 3 parâmetro mais
Não testei ainda.

xTxt = chr(27)+chr(86)+chr(1)+repl(" ",50)
ECF_UsaCupomNaoFiscal( Left(StrTran( xTxt, CRLF), 48) )

VI também na net que seria o comando abaixo também Não testei ainda
xTxt = chr(27)"m"+repl(" ",50)
ECF_UsaCupomNaoFiscal( Left(StrTran( xTxt, CRLF), 48) )

o Problema é que fica difícil testar no cliente

alguem corta papel na Bematech ?


desde já agradeço


Paiva
Kapiaba
Colaborador
Colaborador
Mensagens: 1908
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

cortar papel if bematech usando xhb

Mensagem por Kapiaba »

paiva
Usuário Nível 3
Usuário Nível 3
Mensagens: 300
Registrado em: 04 Ago 2005 10:28

cortar papel if bematech usando xhb

Mensagem por paiva »

MUITO obrigado

deu pau ao testar no cliente.
NAO tenho certeza se implementei correto a função da dll
se puder olhar agradeço MUITO, fiz assim:

na daruma funciona OK

*no prg 5 linhas em branco e depois CORTAR

xTxt = repl(" ",50)
ECF_UsaCupomNaoFiscal( Left(StrTran( xTxt, CRLF), 48) )
ECF_UsaCupomNaoFiscal( Left(StrTran( xTxt, CRLF), 48) )
ECF_UsaCupomNaoFiscal( Left(StrTran( xTxt, CRLF), 48) )
ECF_UsaCupomNaoFiscal( Left(StrTran( xTxt, CRLF), 48) )
ECF_UsaCupomNaoFiscal( Left(StrTran( xTxt, CRLF), 48) )

ECF_Guilhotina()



Function ECF_Guilhotina()

If !v_guilhotina
Return Nil
Endif
if _bematech = .t.
BmGuilhotina("1")
Endif
If _daruma
DaGuilhotina()
Endif
if _darumaframework
eAcionarGuilhotina_ECF_Daruma("1")
Endif
If _sweda
Sweda_ECF_AtivaDesativaCorteProximoMFD(1)
Endif
Return Nil





//Acionar a Guilhotina na Bematech
DLL32 Function BmGuilhotina( ) AS LONG PASCAL ;
FROM "Bematech_FI_AcionaGuilhotinaMFD" LIB xDll
Kapiaba
Colaborador
Colaborador
Mensagens: 1908
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

cortar papel if bematech usando xhb

Mensagem por Kapiaba »

Bematech_FI_AcionaGuilhotinaMFD

Aciona a guilhotina para o corte do papel, nas impressoras fiscais térmicas MFD.

Parâmetros:

iTipoCorte: variável INTEIRA para definir o tipo de corte do papel. Onde:
0: para corte parcial ou;
1: para corte total.

Retornos da Função (INTEIRO):

0 - Erro de comunicação
1 - Ok
-4 - Arquivo ini não encontrado ou parâmetro inválido para o nome da porta
-5 - Erro ao abrir a porta de comunicação
-27 - Status da impressora diferente de 6,0,0,0 (Ack, St1, St2 e St3)

Observações:
A função só terá efeito dentro do Comprovante Não Fiscal Vinculado e Relatório Gerencial.
Função disponível para a impressora fiscal térmica MP-2000 TH FI versão 01.00.02 ou 01.01.01, MP-2100 TH FI, MP-4000 TH FI e MP-7000 TH FI.
Exemplo:

' Exemplo em Visual Basic
iRetorno = Bematech_FI_AcionaGuilhotinaMFD(1)

// Exemplo em Delphi
iRetorno := Bematech_FI_AcionaGuilhotinaMFD( 1 );

http://www3.bematech.com.br/suporte/bem ... inamfd.htm

abs
Kapiaba
Colaborador
Colaborador
Mensagens: 1908
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

cortar papel if bematech usando xhb

Mensagem por Kapiaba »

Código: Selecionar todos

DLL32 FUNCTION BmCortePapel( cTipo AS PTR ) AS LONG PASCAL ;
  FROM "Bematech_FI_AcionaGuilhotinaMFD" LIB xDll
paiva
Usuário Nível 3
Usuário Nível 3
Mensagens: 300
Registrado em: 04 Ago 2005 10:28

cortar papel if bematech usando xhb

Mensagem por paiva »

Kapiaba, MUITO Obrigado o corte funcionou

ob

Paiva
Responder