Você está na página 1de 42

lib300fi

Documentao da lib Linux para impressoras Fiscais Bematech


ndice
1.0 tili!ao da Lib Linux....................................................................................01
".0 Fun#es de $niciali!ao................................................................................0"
Bematech_F_AlteraSimboloMoeda......................................................................02
Bematech_F_AdicionaAlquota............................................................................ 02
Bematech_F_ProgramaHorarioVerao..................................................................02
Bematech_F_NomeiaTotalizadorNaoSujeitocms................................................03
Bematech_F_ProgramaArredondamento.............................................................03
Bematech_F_ProgramaTruncamento..................................................................03
Bematech_F_EspacoEntreLinhas........................................................................03
Bematech_F_LinhasEntreCupons.......................................................................04
Bematech_F_NomeiaDepartamento....................................................................04
Bematech_F_Resetampressora..........................................................................04
3.0 Fun#es do %upom Fiscal..............................................................................0&
Bematech_F_AbreCupom.................................................................................... 05
Bematech_F_Vendetem...................................................................................... 05
Bematech_F_Vendetem3CasasValor..................................................................05
Bematech_F_VendetemDepartamento...............................................................06
Bematech_F_niciaFechamentoCupom...............................................................07
Bematech_F_VerificaFormaPagamento...............................................................07
Bematech_F_EfetuaFormaPagamento................................................................07
Bematech_F_TerminaFechamentoCupom...........................................................08
Bematech_F_ProgramaFormasPagamento.........................................................08
Bematech_F_FechaCupom................................................................................. 08
Bematech_F_FechaCupomResumido.................................................................09
Bematech_F_CancelatemAnterior......................................................................10
Bematech_F_CancelatemGenerico....................................................................10
Bematech_F_CancelaCupom.............................................................................. 10
Bematech_F_ProgramaUnidadeMedida..............................................................10
Bematech_F_AumentaDescricaotem..................................................................11
'.0 Fun#es de (elat)rios Fiscais.......................................................................1"
Bematech_F_LeituraX.......................................................................................... 12
Bematech_F_LeituraXSerial................................................................................ 12
Bematech_F_ReducaoZ...................................................................................... 12
Bematech_F_LeituraMemoriaFiscalData.............................................................12
Bematech_F_LeituraMemoriaFiscalReducao......................................................13
Bematech_F_LeituraMemoriaFiscalDataSerial....................................................13
Bematech_F_LeituraMemoriaFiscalReducaoSerial.............................................13
&.0 Fun#es das *pera#es no Fiscais.............................................................1&
Bematech_F_RelatorioGerencial......................................................................... 15
Bematech_F_FechaRelatorioGerencial...............................................................15
Bematech_F_Suprimento..................................................................................... 15
Bematech_F_Sangria........................................................................................... 16
Bematech_F_RecebimentoNaoFiscal..................................................................16
Bematech_F_AbreComprovanteNaoFiscalVinculado..........................................16
Bematech_F_UsaComprovanteNaoFiscalVinculado............................................17
Bematech_F_FechaComprovanteNaoFiscalVinculado........................................17
+.0 Fun#es de ,utenticao...............................................................................1-
Bematech_F_Autenticao..................................................................................18
Bematech_F_ProgramaCaracterAutenticacao.....................................................18
..0 Fun#es da /a0eta de Dinheiro.....................................................................11
Bematech_F_AbreGaveta.................................................................................... 19
Bematech_F_EstadoGaveta................................................................................ 19
-.0 Fun#es de $nforma#es da $mpressora......................................................."0
Bematech_F_Estadompressora.......................................................................... 20
Bematech_F_LeituraAliquotas.............................................................................20
Bematech_F_LeituraTotalizadoresParciais..........................................................20
Bematech_F_SubTotal......................................................................................... 21
Bematech_F_NumeroCupom............................................................................... 21
Bematech_F_NumeroSerie.................................................................................. 21
Bematech_F_VersaoFirmware.............................................................................22
Bematech_F_CGCE............................................................................................ 22
Bematech_F_GrandeTotal................................................................................... 22
Bematech_F_Cancelamentos..............................................................................23
Bematech_F_Descontos...................................................................................... 23
Bematech_F_ContadorSequencial......................................................................23
Bematech_F_NumeroOperacoesNaoFiscais.......................................................23
Bematech_F_NumeroCuponsCancelados...........................................................24
Bematech_F_NumeroReducoes..........................................................................24
Bematech_F_NumerontervencoesTecnicas........................................................24
Bematech_F_NumeroSubstituicoesProprietario..................................................24
Bematech_F_UltimotemVendido......................................................................... 25
Bematech_F_ClicheProprietario..........................................................................25
Bematech_F_NumeroCaixa................................................................................. 25
Bematech_F_NumeroLoja................................................................................... 25
Bematech_F_Moeda............................................................................................ 26
Bematech_F_FlagsFiscais................................................................................... 26
Bematech_F_MinutosLigada................................................................................ 26
Bematech_F_Minutosmprimindo.........................................................................27
Bematech_F_FlagntervencaoTecnica.................................................................27
Bematech_F_FlagEpromConectada....................................................................27
Bematech_F_ValorPagoUltimoCupom.................................................................28
Bematech_F_DataHora........................................................................................ 28
Bematech_F_ContadoresTotalizadoresNaoSujeitos............................................28
Bematech_F_DescricaoTotalizadoresNaoSujeitos...............................................28
Bematech_F_DataUltimaReducao.......................................................................29
Bematech_F_DataMovimento.............................................................................. 29
Bematech_F_VerificaTruncamento......................................................................29
Bematech_F_FlagsSS........................................................................................ 29
Bematech_F_Acrescimos.................................................................................... 30
Bematech_F_ContadorBilhetePassagem............................................................30
Bematech_F_LeituraFormasPagamento..............................................................30
Bematech_F_LeituraRecebimentosNaoFiscais...................................................31
Bematech_F_LeituraDepartamentos....................................................................32
Bematech_F_Tipompressora..............................................................................32
Bematech_F_MonitoramentoPapel......................................................................33
Bematech_F_DadosUltimaReducao....................................................................33
1.0 Fun#es de $mpresso de %he2ues..............................................................3&
Bematech_F_ProgramaMoedaSingular...............................................................35
Bematech_F_ProgramaMoedaPlural...................................................................35
Bematech_F_StatusCheque................................................................................ 35
Bematech_F_CancelampressaoCheque.............................................................35
Bematech_F_mprimeCheque............................................................................. 36
Bematech_F_mprimeChequeBR400...................................................................36
Bematech_F_LeituraCheque...............................................................................37
10.0 *utras Fun#es da Lib Linux.......................................................................3-
Bematech_F_AbrePortaSerial..............................................................................38
Bematech_F_FechaPorta.................................................................................... 38
tili!ao da Lib Linux
1.0 tili!ao da lib Linux
O Driver Linux pode ser utilizado de duas maneiras:
1) Chamando as funes de alto nvel "linkando com seu arquivo fonte.
2) Criando arquivo com os comandos da mpressora e configurando seu ambiente
para o envio deste arquivo para a porta serial.
13 %hamando as fun#es de alto n40el
Para o uso das funes de alto nvel, no necessrio conhecer os comandos (seqncia
de escapes) da impressora fiscal.
O fluxo para o envio dos comandos e trabalho com a impressora fiscal, deve seguir a
seguinte lgica:
A) Abrir a porta serial no inicio do aplicativo,
B) Envio dos comandos para a impressora
C) Fechar a porta somente no trmino da execuo do aplicativo.
"3 Fun#es de alto n40el e descriti0o
Para a chamada das funes de alto nvel deve-se seguir os seguintes critrios:
A) Todas as funes devolvem um valor diferente de zero caso no tenha
conseguido enviar o comando para a impressora fiscal.
B) Todas as funes possuem o parmetro &Retorno que uma array (string)
inteira de 3 posies para receber o status da impressora (int Retorno[3];). Esse
parmetro no ser representado na documentao das funes. Nesta varivel
ser colocada o ACK, ST1, ST2. Este parmetro deve ser passado por
referncia e no por valor, na linguagem "C utilize o caracter "& para indicar
esta modalidade de passagem de parmetro.
C) Todas as funes que devolvem informaes da impressora possuem o
parmetro 5,(6 varivel para receber a informao solicitada.
1
Fun#es de $niciali!ao
".0 Fun#es de $niciali!ao
Bematech7F$7,ltera8imbolo9oeda :char ;9oeda6 <(etorno3
Altera o smbolo da moeda programado na impressora. O smblo "$
acrescentado automaticamente pela impressora. Ser executada somente aps
uma reduo Z.
Parmetro:
Moeda String com at 2 caracteres.
Exemplo:
Programao do smbolo da moeda "Real (R$)
Ret = Bematech_F_AlteraSimboloMoeda (" R, &Retorno);
Bematech7F$7,diciona,li2uota:char ;,li2uota6 char ; $887$%986 <(etorno3
Adiciona alquota tributria na impressora fiscal.
Parmetros:
Alquota String numrica com o valor da alquota com 4 posies;
SS_CMS "0 para CMS e "1 para SS.
Exemplo:
Adio da alquota "1800 como SS.
Ret = Bematech_FI_AdicionaAliquota ("1800", "1", &Retorno);
Bematech7F$7=ro>rama?orario5erao :<(etorno3
Programa e desprograma o horrio de vero. Se a impressora j estiver no
horrio de vero o mesmo ser desprogramado atrasando o relgio em uma (1)
hora, caso contrrio o relgio ser adiantado uma (1) hora.
Parmetro:
No h.
Exemplo:
Ret = Bematech_F_ProgramaHorarioVerao (&Retorno);
2
Fun#es de $niciali!ao
Bematech7F$7@omeiaAotali!ador@ao8uBeito$%98 :char ;$ndice6
char ;Descrio6 <(etorno3
Programa totalizador no sujeito ao CMS na impressora.
Parmetros:
ndice String numrica com 2 dgitos;
Descrio String com a descrio do totalizador com 19 posies.
Exemplo:
Ret = Bematech_F_NomeiaTotalizadorNaoSujeitoCMS("02,"Recebimentos.......,
&Retorno);
Bematech7F$7=ro>rama,rredondamento :<(etorno3
Programa o modo arredondamento na impressora. Ser executado somente aps
uma reduo Z.
ParmetroC
No h
ExemploC
Ret = Bematech_F_ProgramaArredondamento (&Retorno);
Bematech7F$7=ro>ramaAruncamento :<(etorno3
Programa o modo truncamento na impressora. Ser executado somente aps uma
reduo Z.
ParmetroC
No h
ExemploC
Ret = Bematech_F_ProgramaTruncamento (&Retorno);
Bematech7F$7DspacoDntreLinhas :int ; Dots6 <(etorno3
Programa o espaamento entre as linhas impressas no cupom.
3
Fun#es de $niciali!ao
ParmetroC
Dots Valor numrico entre 0 e 255 indicando o espao (dots) entre
a linha. O valor default da impressora 0.
ExemploC
Ret = Bematech_F_EspacoEntreLinhas (0, &Retorno);
Bematech7F$7LinhasDntre%upons :int ; Dots6 <(etorno3
Programa o espaamento de linhas entre os cupons.
ParmetroC
Dots Valor numrico entre 0 e 255 indicando o espao (dots) entre
a linha. O valor default da impressora 8 linhas.
ExemploC
Ret = Bematech_F_LinhasEntreCupons (8, &Retorno);
Bematech7F$7@omeiaDepartamento :char ;$ndice6 char ;Descricao6<(etorno3
Programa departamentos na impressora.
ParmetroC
ndice String numrica com 2 dgitos ("01 at "20);
Descricao String com 10 posies.
ExemploC
Ret = Bematech_F_NomeiaDepartamento ("02, "Calcados , &Retorno);
Bematech7F$7(eseta$mpressora :<(etorno3
Reseta a impressora em caso de erro. Ser executada somente se a impressora
estiver em erro.
ParmetroC
No h
ExemploC
Ret = Bematech_F_Resetampressora (&Retorno);
4
Fun#es do %upom Fiscal
3.0 Fun#es do %upom Fiscal
Bematech7F$7,bre%upom :%har ; %/%6 <(etorno3
Abre o cupom fiscal para o incio das vendas.
Parmetro:
CGC String com 29 caracteres
Exemplo:
Abertura do cupom fiscal sem usar o CGC/CPF.
Ret = Bematech_F_AbreCupom ( ");
Bematech7F$75ende$tem :char ; %)di>o6 char ; Descrio6 char ;,l42uota6
char ;Euantidade6 char ;5alor6 char ;Desconto6 <(etorno3
Parmetros:
Cdigo String com 13 posies;
Descrio String com 29 posies;
Alquota String com o ndice da alquota com 2 posies. Use FF, ,
NN para substituio tributria, iseno e no incidncia
respectivamente;
Quantidade String numrica com 4 dgitos para quantidade inteira e
com 7 para quantidade fracionria;
Valor String numrica com 8 dgitos;
Desconto String com 4 dgitos para desconto percentual e 8 dgitos
para desconto por valor.
Exemplo:
Venda de tem no valor de R$1,00 com quantidade fracionria de "0001,500 com
desconto de R$0,10.
Ret = Bematech_F_Vendetem ("1234567890123", "Venda de item ,
"FF", "0001500", "00000100", "00000010", &Retorno);
Bematech7F$75ende$tem3%asas5alor :char ; %)di>o6 char ;Descrio6
char ;,li2uota6 char ;Euantidade6
char ; 5alor6 char ;Desconto6
<(etorno3
Parmetros:
Cdigo String com 13 posies;
Descrio String com 29 posies;
5
Fun#es do %upom Fiscal
Alquota String com o ndice da alquota com 2 posies. Use FF, ,
NN para substituio tributria, iseno e no incidncia
respectivamente;
Quantidade String numrica com 4 posies para quantidade inteira e
com 7 posies para quantidade fracionria (Ex. 0001 1
unidade, 0000480 - 0,480 kg);
Valor String numrica com 8 posies (3 casas decimais);
Desconto String numrica com 4 posies para desconto percentual e
com 8 posies para desconto por valor.
Exemplo:
Venda de tem com 3 casas decimais no valor unitrio com quantidade Fracionria
e desconto por valor de 10 centavos (R$0,10).
Ret = Bematech_F_Vendetem3CasasValor ("123456789012 3",
"Venda_de_tem_com_3_casas...., "FF", "0001500", "00000100",
"00000010" ,&Retorno);
Bematech7F$75ende$temDepartamento :char ;%)di>o6 char ;Descrio6
char ;,l42uota6 char ;Euantidade6
char ;5alor6 char ;,crFscimo6
char ;Desconto6 char ;Departamento6
char ;nidade9edida6 <(etorno3
Parmetros:
Cdigo String com at 49 posies;
Descrio String com at 201 posies;
Alquota String com o ndice da alquota com 2 posies. Use FF, , `
NN para substituio tributria, iseno e no incidncia
respectivamente;
Quantidade String numrica com 7 dgitos para quantidade fracionria;
Valor String numrica com 9 dgitos (3 casas decimais);
Acrescimo String numrica com 10 dgitos para acrescimo por valor (2
casas decimais);
Desconto String numrica com 10 dgitos para desconto por valor (2
casas decimais);
Departamento String numrica com o ndice do departamento com 2
posies;
UnidadeMedida String com 2 posies.
Exemplo:
Venda de tem no departamento "Geral que default na impressora.
Ret = Bematech_F_VendetemDepartamento ("1234567890123",
"Venda_de_tem_com_departamento., "NN", 0001000, "000000100" ,
"0000000000, "0000000010, "01, "KG, &Retorno);
6
Fun#es do %upom Fiscal
Bematech7F$7$niciaFechamento%upom :char ; ,crFscimo Desconto6
char ;5alor6 <(etorno 3G
nicia o fechamento do cupom com o uso das formas de pagamento.
Parmetros:
AcrescimoDesconto 'D' ou 'A' maisculo para desconto ou acrscimo por
percentual, 'd' ou 'a' minsculo para desconto ou acrscimo
por valor;
Valor String numrica com 4 dgitos para o valor do acrscimo ou
desconto percentual e com 14 dgitos para acrscimo ou
desconto por valor.
Exemplo:
Ret = Bematech_F_niciaFechamentoCupom ("D, 0000, &Retorno);
Bematech7F$75erificaForma=a>amento:char ;Forma=a>to6 5ar6 <(etorno 3
Programa e verifica a forma de pagamento. Se a forma de pagamento ainda no
estiver programada a funo ir programa-la e ir retornar o ndice em que ela foi
gravada, caso contrrio, a funo retorna-ra o ndice em que a forma de
pagamento est programada.
Parmetros:
FormaPagto String com 16 posies com o nome da forma de
pagamento.
Var Varivel para receber o ndice em que a forma de
pagamento est cadastrada.
Exemplo:
Ret = Bematech_F_ProgramaVerificaFormaPagamento ("Cheque , Var,
&Retorno);
Bematech7F$7DfetuaForma=a>amento :char ;$ndice6 char ;5alor6
char ;Descrio6 <(etorno3
mprime a forma de pagamento e o valor pago nessa forma.
Parmetro:
ndice String numrica com o ndice em que a forma de
pagamento est cadastrada na impressora com 2 posies;
Valor String numrica com 14 posies;
Descrio String com a descrio opcional da forma de pagamento
com at 80 posies.
7
Fun#es do %upom Fiscal
Exemplo:
Ret = Bematech_F_EfetuaFormaPagamento ("01,00000000000500, ",
&Retorno);
Bematech7F$7AerminaFechamento%upom:%har ; 9ensa>em6 <(etorno 3
Termina o fechamento do cupom com a impresso da mensagem promocional.
Parmetro:
Mensagem String com a mensagem promocional a ser impressa no
final do cupom com at 492 caracteres. A impresso ser
limitada a 8 linhas, para imprimir os 492 caracteres tm que
ser usado o modo de impresso condensado.
Exemplo:
Ret = Bematech_F_TerminaFechamentoCupom ("Mensagem Promocional,
&Retorno);
Bematech7F$7=ro>ramaFormas=a>amento:char ; Formas =a>amento6
<(etorno3
Programa as formas de pagamento na impressora fiscal. Esse comando ser
executado somente aps uma reduo Z.
Parmetro:
FormasPagamento String com as formas de pagamento a serem programadas
com 16 posies. As formas devem ser separadas pelo
caracter pipe "|.
Exemplo:
Ret = Bematech_F_ProgramaVerificaFormaPagamento ("Cheque |Carto
|Ticket |Carto Visa , &Retorno);
Bematech7F$7Fecha%upom :char ;,crescimoDesconto6 char; 5alor,creDesconto6
int EtdFormas=a>to 6 char ; Formas=a>to6
char ; 5alores6 %har ;98/6 <(etorno3
Fecha o cupom fiscal, sem a necessidade de enviar vrios comandos para o
fechamento, com esta funo o cupom fechado imediatamente, a forma de
pagamento pode ser passada mesmo que no esteja programada, esta funo
programa a forma de pagamento e fecha o cupom.
8
Fun#es do %upom Fiscal
Parmetros:
AcrescimoDesconto ndique com "A ou "D se ser dado Acrscimo ou desconto
no fechamento do cupom. "A ou "D maisculo indica que o
acrscimo ou desconto por percentual Ex.: 10.00% caso
seja passado como Minsculo "a ou "d indica que o
acrscimo ou desconto ser por valor com 8 posies
"00000010 (R$0,10);
ValorAcreDesconto String numrica com 4 dgitos para valor do Acrscimo ou
desconto percentual e com 8 dgitos para acrscimo ou
desconto por valor;
QtdFormasPagto Valor nteiro que indica com quantas formas de pagamento
ser fechado o cupom fiscal;
FormasPagto Descrio com as formas de pagamento que sero utilizadas
para fechar o cupom fiscal, com 16 Posies e separadas
por virgula;
Valores Com 14 dgitos e separados por virgula;
MSG Mensagem promocional com at 400 posies.
Exemplo:
Fechamento de Cupom, sem desconto, com 3 formas de pagamento (separadas
por virgula), com 3 valores separados por virgula, e com a mensagem
promocional:
Ret = Bematech_F_FechaCupom ("D","0000",3,"Dinheiro ,Cartao Master
,Cartao Visa
","00000000000050,00000000000050,000000000000
50","Teste de Mesagem Promocional",&Retorno);
Bematech7F$7Fecha%upom(esumido :char ;Forma=a>to6 char ;5alor6 char ;98/6
<(etorno3
Fecha o cupom fiscal com a forma de pagamento indicada e permite apenas uma
forma de pagamento.
Parmetros:
FormaPagto String com 16 posies;
Valor String numrica com 14 dgitos;
MSG String com at 492 posies.
Exemplo:
Fechamento do Cupom com Forma de Pagamento "Cartap RedShop e Valor de
R1,00, e mensagem promocional.
Ret = Bematech_F_FechaCupomResumido ("Cartao_RedShop..,
"00000000000100", "Teste de mensagem promocional", &Retorno);
9
Fun#es do %upom Fiscal
Bematech7F$7%ancela$tem,nterior:<(etorno3
Cancela o item anteriormente vendido.
Parmetros:
No h
Exemplo:
Ret = Bematech_F_CancelatemAnterior (&Retorno);
Bematech7F$7%ancela$tem/enerico :char ; @umero$tem6 <(etorno3
Cancela o item indicado no parmetro "numerotem.
Parmetro:
Numerotem String numrica com 4 dgitos;
Exemplo:
Cancelamento do item nmero 4.
Ret = Bematech_F_CancelatemGenerico ("0004", &Retorno);
Bematech7F$7%ancela%upom :<(etorno3
Cancela o ltimo cupom emitido. S ser executado aps a emisso de um cupom
fiscal.
Exemplo:
Ret = Bematech_F_CancelaCupom (&Retorno);
Bematech7F$7=ro>ramanidade9edida :char ; nid9edida6 <(etorno 3
mprime a unidade de medida, aps a quantidade do produto, na venda de item.
Parmetro:
UnidadeMedida Unidade de medida com at 2 caracteres.
Exemplo:
Ret = Bematech_F_ProgramaUnidadeMedida ("KG,&Retorno)
10
Fun#es do %upom Fiscal
Bematech7F$7,umentaDescricao$tem:char ; Descricao6 <(etorno 3
Permite aumentar a descrio do item at 200 caracteres. O prximo comando de
venda de item ir imprimir a descrio com esse tamanho. O comando tem
validade somente para a impresso de um item, voltando ao default que de 29
caracteres.
Parmetro:
Descricao String com a descrio do item com at 200 caracteres.
Exemplo:
Ret = Bematech_F_ProgramaUnidadeMedida ("Venda de item com descrio at
200 caracteres, &Retorno);
11
Fun#es de (elat)rios Fiscais
'.0 Fun#es de (elat)rios Fiscais
Bematech7F$7LeituraH :<(etorno3
Emite a Leitura X na impressora fiscal
Parmetro:
No h

Exemplo:
Ret = Bematech_F_LeituraX (&Retorno);
Bematech7F$7LeituraH8erial :<(etorno3
Recebe os dados da leitura X pela serial e grava no arquivo texto "Retorno.txt que
ser criado pela lib.
=arImetrosC
No h.
DxemploC
Ret = Bematech_F_LeituraXSerial (&Retorno);
Bematech7F$7(educaoJ :<(etorno3
Emite uma Reduo Z na impressora fiscal, com este comando a impressora
encerra o dia fiscal.
Parmetro:
No h

Exemplo:
Ret = Bematech_F_ReducaoZ (&Retorno);
Bematech7F$7Leitura9emoriaFiscalData :char ;Data$nicial6 char ; DataFinal6
<(etorno3
Emite a leitura da memria fiscal por intervalo de datas.
12
Fun#es de (elat)rios Fiscais
=arImetrosC
Datanicial Data inicial com 6 posies no formato "ddmmaa;
DataFinal Data final com 6 posies no formato "ddmmaa.
DxemploC
Ret = Bematech_F_LeituraMemoriaFiscalData ("010301", "310301", &Retorno);
Bematech7F$7Leitura9emoriaFiscal(educao :char ;(eduo$nicial6
char ; (educaoFinal6
<(etorno3
Emite a leitura da memria fiscal por intervalo de redues.
=arImetrosC
Reducaonicial Reduo inicial com 4 posies;
ReducaoFinal Reduo final com 4 posies.
DxemploC
Ret = Bematech_F_LeituraMemoriaFiscalReducao ("0050", "0052", &Retorno);
Bematech7F$7Leitura9emoriaFiscalData8erial :char ;Data$nicial6
char ; DataFinal6
<(etorno3
Recebe os dados da leitura da memria fiscal pela serial, por intervalo de datas e
grava no arquivo texto "Retorno.txt que ser criado pela lib.
=arImetrosC
Datanicial Data inicial com 6 posies no formato "ddmmaa;
DataFinal Data final com 6 posies no formato "ddmmaa.
DxemploC
Ret = Bematech_F_LeituraMemoriaFiscalDataSerial ("010301", "310301",
&Retorno);
Bematech7F$7Leitura9emoriaFiscal(educao8erial :char ;(eduo$nicial6
char ; (educaoFinal6
<(etorno3
Recebe os dados da leitura da memria fiscal pela serial, por intervalo de
redues e grava no arquivo texto "Retorno.txt que ser criado pela lib.
13
Fun#es de (elat)rios Fiscais
=arImetrosC
Reducaonicial Reduo inicial com 4 posies;
ReducaoFinal Reduo final com 4 posies.
DxemploC
Ret = Bematech_F_LeituraMemoriaFiscalReducaoSerial ("0050", "0052",
&Retorno);
14
Fun#es das *pera#es no Fiscais
&.0 Fun#es das *pera#es no Fiscais
Bematech7F$7(elatorio/erencial :char ; Aexto6 <(etorno3
Permite a impresso de relatrio gerencial na impressora fiscal. Esta funo pode
ser chamada quantas vezes for necessria para a impresso das informaes
desejadas.
Parmetro :
Texto String com at 400 caracteres.
Exemplo:
Ret = Bematech_F_RelatorioGerencial ("mpresso de relatrio gerencial,
&Retorno);
Bematech7F$7Fecha(elatorio/erencial :<(etorno3
Fecha o relatrio gerencial.
Parmetro :
No h
Exemplo:
Ret=Bematech_F_FechaRelatorioGerencial (&Retorno);
Bematech7F$78uprimento : char ; 5alor6 <(etorno3G
Faz um suprimento na impressora fiscal. Este comando deve ser executado no
incio do dia para indicar a impressora quantidade de dinheiro existente no caixa.
Se o suprimento no for realizado e houver troco no cupom fiscal com uma forma
de pagamento diferente de dinheiro, por exemplo cheque, a impressora ir fechar
o cupom fiscal com troco negativo. sso ocorre porque a impressora verifica no
totalizador "Dinheiro se h uma quantidade suficiente para voltar o troco. Se no
houver o comando que efetua a forma de pagamento no ser executado e a
impressora fechar o cupom fiscal com troco negativo.
Parmetro:
Valor String numrica com 14 posies.
Exemplo:
Suprimento de R$50,00:
Ret = Bematech_F_Suprimento ("00000000005000", &Retorno);
15
Fun#es das *pera#es no Fiscais
Bematech7F$78an>ria :char ; 5alor6 <(etorno 3
Retira dinheiro do totalizador dinheiro da impressora fiscal. Deve ser executado
quando houver retirada de dinheiro do caixa.
Parmetro:
Valor String numrica com 14 Posies.
Exemplo:
Ret=Bematech_F_Sangria ("00000000000100", &Retorno);
Bematech7F$7(ecebimento@aoFiscal :char ; $ndice6 char ; 5alor6
char ; Forma=a>to6 <(etorno 3
mprime o comprovante no fiscal no vinculado. Ser executada somente se o
totalizador estiver programado. Para programar o totalizador use a funo
Bematech_F_NomeiaTotalizadorNaoSujeitoCMS().
Parmetro:
ndice ndice do totalizador. String numrica com 2 dgitos ("01 a
"50);
Valor Valor do recebimento (comprovante). String numrica com 14
dgitos;
FormaPagto Descrio da forma de pagamento. String com 16 posies.
Exemplo:
Recebimento de 50,00 reais no totalizador 01, usando a forma de pagamento
dinheiro:
Ret = Bematech_F_RecebimentoNaoFiscal ("01", "00000000005000,
"Dinheiro , &Retorno);
Bematech7F$7,bre%ompro0ante@aoFiscal5inculado :char ; Forma=a>to6
char ; 5alor6
char ; @umero%upom6
<(etorno 3
Abre o comprovante no fiscal vinculado.
Parmetro:
FormaPagto String com 16 posies com a forma de pagamento utilizada
no cupom fiscal. A forma deve ser diferente de "Dinheiro;
Valor String numrica com 14 dgitos com o valor utilizado na
forma de pagamento e no o valor do cupom fiscal;
16
Fun#es das *pera#es no Fiscais
NumeroCupom String numrica com 6 dgitos com o nmero do cupom ao
qual se refere o comprovante.
*bs.C Os parmetros "Valor e "NumeroCupom so obrigatrios somente se o
comprovante no for referente ao ltimo cupom fiscal emitido.
Exemplo:
Ret = Bematech_F_AbreComprovanteNaoFiscalVinculado ("Cartao ", ",
", &Retorno);
Bematech7F$7sa%ompro0ante@aoFiscal5inculado :char ; Aexto6 <(etorno 3
mprime as informaes do comprovante no fiscal vinculado. Essa funo pode
ser usada quantas vezes for necessria para imprimir todas as informaes
(limitado a dois minutos).
Parmetro:
Texto String com at 620 posies contendo as informaes a
serem impressas.
Exemplo:
Ret = Bematech_F_UsaComprovanteNaoFiscalVinculado ("nformaes a serem
impressas no comprovante", &Retorno);
Bematech7F$7Fecha%ompro0ante@aoFiscal5inculado :<(etorno 3
Fecha o comprovante no fiscal vinculado.
Parmetro:
No h.
Exemplo:
Ret = Bematech_F_FechaComprovanteNaoFiscalVinculado (&Retorno);
17
Fun#es de ,utenticao
+.0 Fun#es de ,utenticao
Bematech7F$7,utenticacao :<(etorno3
Permite a autenticao de documentos. Dever ser executado imediatamente
aps um recebimento no sujeito ao CMS ou o trmino de um cupom fiscal e
poder ser repetido at 5 (cinco) vezes para cada recebimento. A impressora ir
aguardar at 5 segundos para que seja inserido o documento e autenticar no
documento a data, hora, nmero da loja, nmero do caixa e o nmero do ltimo
cupom fiscal. Se decorrido os 5 segundos sem o posicionamento do papel a
impressora voltar ao seu estado normal retornando o status "Comando no
executado.
Parmetro :
No h
Exemplo:
Ret = Bematech_F_Autenticacao (&Retorno);
Bematech7F$7=ro>rama%aracter,utenticacao : char 5alores6 <(etorno3
Programa o caracter grfico para autenticacao.
Parmetro :
Valores String com os 18 valores para programao do
caracter grfico, os valores devem ser separados pelo
caracter pipe ("|). Veja exemplo abaixo.
Exemplo:
Programao do caracter grfico:
1 " 3 ' & + . - 1 10 11 1" 13 1' 1& 1+ 1. 1-
Bit 0 (1)
Bit 1 (2)
Bit 2 (4)
Bit 3 (8)
Bit 4 (16)
Bit 5 (32)
Bit 6 (64)
Bit 7 (128)
Ret = Bematech_F_Autenticao (001,002,004,008,016,032,064,128,064, 032,
016, 008, 004,002,001,129,129,129, &Retorno);
Uma vez programado, este caracter ser mantido na memria da impressora
mesmo que seja desligada.
18
Fun#es da /a0eta de Dinheiro
..0 Fun#es da /a0eta de Dinheiro
Bematech7F$7,bre/a0eta :<(etorno3
Abre a gaveta de dinheiro conectada na impressora fiscal.
Parmetro :
No h
Exemplo:
Ret = Bematech_F_AbreGaveta (&Retorno);
Bematech7F$7Dstado/a0eta :5ar6 <(etorno3
Verifica o estado da gaveta.
Parmetro :
Var varivel string para receber o estado da gaveta:
0 gaveta fechada;
1 gaveta aberta.
Exemplo:
Ret = Bematech_F_EstadoGaveta (Var, &Retorno);
19
Fun#es de $nforma#es da $mpressora
-.0 Fun#es de $nforma#es da $mpressora
Bematech7F$7Dstado$mpressora :<(etorno3
Retorna o estado (ACK, ST1 e ST2) da impressora.
Parmetros :
No h.
Exemplo:
Ret = Bematech_F_VerificaEstadompressora (&Retorno);
Bematech7F$7Leitura,li2uotas:5ar6 <(etorno3
Retorna as alquotas cadastradas na impressora.
Parmetros :
Var Varivel string com 84 posies para receber as alquotas.
Os 2 primeiros bytes indicam o nmero de alquotas
programadas os restantes so os valores das alquotas
separadas pelo caracter pipe "|.
Exemplo:
Ret = Bematech_F_LeituraAliquotas (Var, &Retorno);
magine que h apenas uma alquota de 17% programada na impressora. O
contedo da varivel "Var ser:
Var = "01|1700|0000|0000|0000|0000|0000|0000|0000|0000|0000|0000|0000|0000|
0000|0000|0000|
Bematech7F$7LeituraAotali!adores=arciais :5ar6 <(etorno3
Retorna os valores dos totalizadores parciais cadastrados na impressora com as
seguintes informaes:
Parmetros :
Var Varivel string com 470 posies para receber os
totalizadores.
Obs.: Sero retornadas as seguintes informaes:
Totalizadores parciais tributados: 224 bytes
20
Fun#es de $nforma#es da $mpressora
seno: 14 bytes
No insidncia: 14 bytes
Substituo: 14 bytes
Totalizadores parciais no sujeitos ao CMS: 14 bytes
Sangria: 14 bytes
Suprimento: 14 bytes
Grande Total: 14 bytes
Os valores estaro separados pelo caracter pipe "|.
Exemplo:
Ret = Bematech_F_LeituraAliquotas (Var, &Retorno);
Bematech7F$78ubAotal :5ar6 <(etorno3
Retorna o valor do subtotal do cupom.
Parmetros :
Var Varivel string com 15 posies para receber o subtotal do
cupom.
Exemplo:
Ret = Bematech_F_SubTotal (Var, &Retorno);
Var = "00000000011242 Subtotal de R$112,42
Bematech7F$7@umero%upom :5ar6 <(etorno3
Retorna o nmero do ltimo cupom emitido na impressora.
Parmetros :
Var Varivel string com 7 posies para receber o nmero do
ltimo cupom.
Exemplo:
Ret = Bematech_F_NumeroCupom (Var, &Retorno);
Var = "000380
Bematech7F$7@umero8erie :5ar6 <(etorno3
Retorna o nmero de srie da impressora.
21
Fun#es de $nforma#es da $mpressora
Parmetros :
Var Varivel string com 16 posies para receber o nmero de
srie.
Exemplo:
Ret = Bematech_F_NumeroSerie (Var, &Retorno);
Bematech7F$75ersaoFirmKare :5ar6 <(etorno3
Retorna a verso do firmware.
Parmetros :
Var Varivel string com 5 posies para receber a verso do
firmware.
Exemplo:
Ret = Bematech_F_VersaoFirmware (Var, &Retorno);
Bematech7F$7%/%$D :5ar6 <(etorno3
Retorna o CGC e a nscrio Estadual do cliente cadastrado na impressora.
Parmetros :
Var Varivel string com 34 posies para receber o CGC e a E.
Exemplo:
Ret = Bematech_F_CGCE (Var, &Retorno);
Bematech7F$7/randeAotal :5ar6 <(etorno3
Retorna o valor do grande total armazenado na impressora.
Parmetros :
Var Varivel string com 19 posies para receber a informao.
Exemplo:
Ret = Bematech_F_GrandeTotal (Var, &Retorno);
22
Fun#es de $nforma#es da $mpressora
Bematech7F$7%ancelamentos :5ar6 <(etorno3
Retorna o valor acumulado dos itens e dos cupons cancelados.
Parmetros :
Var Varivel string com 15 posies para receber a informao.
Exemplo:
Ret = Bematech_F_Cancelamentos (Var, &Retorno);
Bematech7F$7Descontos :5ar6 <(etorno3
Retorna o valor acumulado dos descontos.
Parmetros :
Var Varivel string com 15 posies para receber a informao.
Exemplo:
Ret = Bematech_F_Descontos (Var, &Retorno);
Bematech7F$7%ontador8e2uencial :5ar6 <(etorno3
Retorna o nmero do ltimo cupom emitido.
Parmetros :
Var Varivel string com 7 posies para receber a informao.
Exemplo:
Ret = Bematech_F_ContadorSequencial (Var, &Retorno);
Bematech7F$7@umero*peracoes@aoFiscais :5ar6 <(etorno3
Retorna o nmero de operaes no fiscais executadas na impressora.
Parmetros :
Var Varivel string com 7 posies para receber a informao.
Exemplo:
Ret = Bematech_F_NumeroOperacoesNaoFiscais (Var, &Retorno);
23
Fun#es de $nforma#es da $mpressora
Bematech7F$7@umero%upons%ancelados :5ar6 <(etorno3
Retorna o nmero de cupons cancelados na impressora.
Parmetros :
Var Varivel string com 5 posies para receber a informao.
Exemplo:
Ret = Bematech_F_NumeroCuponsCancelados (Var, &Retorno);
Bematech7F$7@umero(educoes :5ar6 <(etorno3
Retorna o nmero de redues Z realizadas na impressora.
Parmetros :
Var Varivel string com 5 posies para receber a informao.
Exemplo:
Ret = Bematech_F_NumeroReducoes (Var, &Retorno);
Bematech7F$7@umero$nter0encoesAecnicas :5ar6 <(etorno3
Retorna o nmero de intervenes tcnicas realizadas na impressora. .
Parmetros :
Var Varivel string com 5 posies para receber a informao.
Exemplo:
Ret = Bematech_F_NumerontervencoesTecnicas (Var, &Retorno);
Bematech7F$7@umero8ubstituicoes=roprietario :5ar6 <(etorno3
Retorna o nmero de substituies de proprietrio realizadas na impressora.
Parmetros :
Var Varivel string com 5 posies para receber a informao.
Exemplo:
Ret = Bematech_F_NumeroSubstituicoesProprietario (Var, &Retorno);
24
Fun#es de $nforma#es da $mpressora
Bematech7F$7ltimo$tem5endido :5ar6 <(etorno3
Retorna o nmero do ltimo item vendido.
Parmetros :
Var Varivel string com 5 posies para receber a informao.
Exemplo:
Ret = Bematech_F_UltimotemVendido (Var, &Retorno);
Bematech7F$7%liche=roprietario :5ar6 <(etorno3
Retorna as informaes do clich do proprietrio cadastradas na impressora.
Parmetros :
Var Varivel string com 187 posies para receber as
informaes.
Exemplo:
Ret = Bematech_F_ClicheProprietario (Var, &Retorno);
Bematech7F$7@umero%aixa :5ar6 <(etorno3
Retorna o nmero do caixa cadastrado na impressora.
Parmetros :
Var Varivel string com 5 posies para receber a informao
Exemplo:
Ret = Bematech_F_NumeroCaixa (Var, &Retorno);
Bematech7F$7@umeroLoBa :5ar6 <(etorno3
Retorna o nmero da loja cadastrado na impressora.
Parmetros :
Var Varivel string com 5 posies para receber a informao
Exemplo:
Ret = Bematech_F_NumeroLoja (Var, &Retorno);
25
Fun#es de $nforma#es da $mpressora
Bematech7F$79oeda :5ar6 <(etorno3
Retorna o smbolo da moeda cadastrado na impressora.
Parmetros :
Var Varivel string com 3 posies para receber a informao.
Exemplo:
Ret = Bematech_F_Moeda (Var, &Retorno);
Bematech7F$7Fla>sFiscais :5ar6 <(etorno3
Retorna um valor referente ao flag fiscal da impressora. Veja discriminao abaixo.
Parmetros :
Var Varivel string com 4 posies para receber a informao.
- Obs.: Discriminao dos valores para o flag fiscal:
Cupom fiscal aberto 1
Fechamento de formas de pagamento iniciado 2
Horrio de vero selecionado 4
J houve reduo Z no dia 8
Permite cancelar cupom fiscal 32
Memria fiscal sem espao 128
Os valores podem vir somados o que indica mais de um estado. Ex.:
FlagFiscal = 37 : Cupom fiscal aberto, Horrio de vero selecionado, Permite
cancelar o cupom fiscal.
Exemplo:
Ret = Bematech_F_FlagsFiscais (Var, &Retorno);
Bematech7F$79inutosLi>ada :5ar6 <(etorno3
Retorna o tempo em minutos que a impressora est liga.
Parmetros :
Var Varivel string com 5 posies para receber a informao.
Exemplo:
Ret = Bematech_F_MinutosLigada (Var, &Retorno);
26
Fun#es de $nforma#es da $mpressora
Bematech7F$79inutos$mprimindo :5ar6 <(etorno3
Retorna o tempo em minutos que a impressora ficou imprimindo.
Parmetros :
Var Varivel string com 5 posies para receber a informao.
Exemplo:
Ret = Bematech_F_Minutosmprimindo (Var, &Retorno);
Bematech7F$7Fla>$nter0enoAecnica :5ar6 <(etorno3
Retorna o valor "1 se a impressora estiver em modo normal ou "0 se estiver em
interveno tcnica.
Parmetros :
Var Varivel string com 2 posies para receber a informao.
Exemplo:
Ret = Bematech_F_FlagntervencaoTecnica (Var, &Retorno);
Bematech7F$7Fla>Dprom%onectada :5ar6 <(etorno3
Retorna o valor "1 se a EPROM estiver conectada ou "0 se estiver desconectada.
Parmetros :
Var Varivel string com 2 posies para receber a informao.
Exemplo:
Ret = Bematech_F_FlagEpromConectada (Var, &Retorno);
Bematech7F$75alor=a>oltimo%upom :5ar6 <(etorno3
- Retorna o valor pago no ltimo cupom. O Valor pago diferente do valor total
do cupom. Se o total do cupom fiscal for R$15,00 e o cliente pagar com R$
20,00, haver um troco de R$ 5,00. O valor retornado por essa funo ser R$
20,00 e no R$ 15,00
Parmetros :
Var Varivel string com 15 posies para receber a informao.
27
Fun#es de $nforma#es da $mpressora
Exemplo:
Ret = Bematech_F_ValorPagoUltimoCupom (Var, &Retorno);
Bematech7F$7Data?ora :5ar6 <(etorno3
Retorna a data e hora da impressora na seguinte ordem: dia, ms, ano, hora,
minuto, segundo (ddmmaahhmmss).
Parmetros :
Var Varivel string com 13 posies para receber a informao.
Exemplo:
Ret = Bematech_F_DataHora (Var, &Retorno);
Bematech7F$7%ontadoresAotali!adores@ao8uBeitos :5ar6 <(etorno3
Retorna o nmero de vezes em que os totalizadores no sujeitos ao CMS foram
usados.
Parmetros :
Var Varivel string com 45 posies para receber as
informaes. Sero retornados 9 valores com 4 posies
cada. Os valores sero separados pelo caracter pipe "|
Exemplo:
Ret = Bematech_F_ContadoresTotalizadoresNaoSujeitos (Var, &Retorno);
Bematech7F$7DescricaoAotali!adores@ao8uBeitos :5ar6 <(etorno3
Retorna a descrio dos totalizadores no fiscais programados na impressora.
Parmetros :
Var Varivel string com 180 posies para receber as
informaes. Sero retornados as descries dos 9
totalizadores com o tamanho de 19 posies. as informaes
sero separadas pelo caracter pipe "|
Exemplo:
Ret = Bematech_F_DescrioTotalizadoresNaoSujeitos (Var, &Retorno);
28
Fun#es de $nforma#es da $mpressora
Bematech7F$7Dataltima(educao :5ar6 <(etorno3
Retorna data e hora da ltima Reduo Z na seguinte ordem: dia, ms, ano, hora,
minuto, segundo (ddmmaahhmmss).
Parmetros :
Var Varivel string com 13 posies para receber a informao.
Exemplo:
Ret = Bematech_F_DataUltimaReducao (Var, &Retorno);
Bematech7F$7Data9o0imento :5ar6 <(etorno3
Retorna a ltima data em que houve movimento (vendas) na impressora no
formato ddmmaa.
Parmetros :
Var Varivel string com 7 posies para receber a informao.
Exemplo:
Ret = Bematech_F_DataMovimento (Var, &Retorno);
Bematech7F$75erificaAruncamento :5ar6 <(etorno3
Retorno o valor "1 se a impressora estiver no modo arredondamento e o valor "0
se estiver no modo truncamento.
Parmetros :
Var Varivel string com 2 posies para receber a informao.
Exemplo:
Ret = Bematech_F_VerificaTruncamento (Var, &Retorno);
Bematech7F$7Fla>s$88 :5ar6 <(etorno3
Retorna o(s) ndice(s) da(s) alquota(s) de SS.
Parmetros :
Var Varivel string com 48 posies para receber as
informaes. Os ndices viro com o tamanho de 2 posies
separados pelo caracter pipe "|.
29
Fun#es de $nforma#es da $mpressora
Exemplo:
Ret = Bematech_F_FlagsSS (Var, &Retorno);
magine que temos 4 alquotas de SS programadas na impressora nas posies
03, 05, 08 e 10. O retorno no parmetro "Var ser:
Var = 03|05|08|10|
Bematech7F$7,crescimos :5ar6 <(etorno3
Retorna a valor acumulado dos acrscimos efetuados nos cupons.
Parmetros :
Var Varivel string com 15 posies para receber a informao.
Exemplo:
Ret = Bematech_F_Acrescimos (Var, &Retorno);
Bematech7F$7%ontadorBilhete=assa>em :5ar6 <(etorno3
Retorna o nmero de bilhetes de passagem emitidos.
Parmetros :
Var Varivel string com 7 posies para receber a informao.
Exemplo:
Ret = Bematech_F_ContadorBilhetePassagem (Var, &Retorno);
Bematech7F$7LeituraFormas=a>amento :5ar6 <(etorno3
Retorna as formas de pagamento e seus valores acumulados.
Parmetros :
Var Varivel string com 2965 posies para receber as
informaes.
Obs.: Sero retornadas as seguintes informaes:
Descrio de todas as formas de pagamento : 832 bytes
Valor acumulado com duas casas decimais: 1040 bytes
Valor recebido no ltimo cupom (2 casas decimais): 1040 bytes
Um valor para cada forma de pagamento indicando
30
Fun#es de $nforma#es da $mpressora
se a forma foi usada para a emisso do cupom no
fiscal vinculado (1 usado, 0 no usado): 52 bytes
so retornadas 50 formas de pagamento mais a forma "Valor Recebido e
"Troco obedecendo ordem descrita anteriormente. As formas de pagamento
que no estiverem programadas estaro com os valores zerados e a descrio
em branco.
Exemplo:
Ret = Bematech_F_LeituraFormasPagamento (Var, &Retorno);
Bematech7F$7Leitura(ecebimentos@aoFiscais :5ar6 <(etorno3
Retorna os recebimentos no fiscais no vinculados e seus valores acumulados.
Parmetros :
Var Varivel string com 2151 posies para receber as
informaes.
Obs.: Sero retornadas informaes para os 50 totalizadores:
Valor indicando quantas vezes cada recebimento foi utilizado : 4 bytes
Valor acumulado para cada recebimento (2 casas decimais) : 20 bytes
Descrio do recebimento: 19 bytes
Exemplo:
000200000000000000005460Conta de gua ,
001500000000000000145850Conta de Luz ,
000000000000000000000000Carn ,
000000000000000000000000 ,
000000000000000000000000 ,
000000000000000000000000ptu ,
000500000000000000078437Conta de Telefone ,
.
.
.
000000000000000000000000Prestacao de contas
A impressora permite programar at 50 totalizadores no fiscais no
vinculados, os totalizadores que no estiverem programados estaro com os
valores zerados e a descrio em branco (veja exemplo acima).

Exemplo:
Ret = Bematech_F_LeituraRecebimentosNaoFiscais (Var, &Retorno);
31
Fun#es de $nforma#es da $mpressora
Bematech7F$7LeituraDepartamentos :5ar6 <(etorno3
Retorna os departamentos e seus valores acumulados.
Parmetros :
Var Varivel string com 1001 posies para receber as
informaes.
Obs.: Sero retornadas as seguintes informaes:
Valor acumulado para cada departamento: 20 bytes
Valor com o nmero de vezes em que o departamento foi utilizado: 20 bytes
Descrio do departamento: 10 bytes
Exemplo:
0000000000000001944800000000000000018548GERAL ,
0000000000000001644800000000000000015548Vestuario ,
0000000000000015819700000000000000158197Calcados ,
0000000000000001644800000000000000015548Equipament ,
00000000000000101642700000000000001016427Alimentos ,
0000000000000000000000000000000000000000 ,
.
.
.
0000000000000000000000000000000000000000 ,
0000000000000000000000000000000000000000
Obs.: A impressora permite programar at 20 departamentos, os
departamentos que no estiverem programados estaro com os valores
zerados e a descrio em branco (veja exemplo acima).

Exemplo:
Ret = Bematech_F_LeituraDepartamentos (Var, &Retorno);
Bematech7F$7Aipo$mpressora :5ar6 <(etorno3
Retorna o tipo de impressora.
Parmetros :
Var Varivel string com 2 posies para receber o valor
correspondente ao tipo da impressora.
Obs.: Ser retornado um dos seguintes valores:
1 - mpressora fiscal, gaveta, autenticaao
2 - mpressora fiscal, gaveta, cutter
32
Fun#es de $nforma#es da $mpressora
3 - mpressora fiscal, presenter, autenticaao
4 - mpressora fiscal, presenter, cutter
5 - mpressora bilhete de passagem, gaveta, autenticaao
6 - mpressora bilhete de passagem, gaveta, cutter
7 - mpressora bilhete de passagem, presenter, autenticaao
8 - mpressora bilhete de passagem, presenter, cutter
Exemplo:
Ret = Bematech_F_Tipompressora (Var, &Retorno);
Bematech7F$79onitoramento=apel :5ar6 <(etorno3
Retorna o nmero de linhas impressas aps o status de pouco papel.
Parmetros :
Var Varivel string com 5 posies para receber o nmero de
linhas impressas.
Exemplo:
Ret = Bematech_F_MonitoramentoPapel (Var, &Retorno);
Bematech7F$7Dadosltima(educao :5ar6 <(etorno3
Retorna os dados da ltima reduo Z.
Parmetros :
Var Varivel string com 617 posies para receber os dados da
reduo Z.
Obs.: Sero retornadas as seguintes informaes:
Modo de reduo Z: 2 bytes
se 00 reduo por comando
se 01 reduo automtica
Grande Total: 18 bytes
Cancelamentos: 14 bytes
Descontos: 14 bytes
Tributos: 64 bytes
Totalizadores Parciais Tributados: 266 bytes
Sangria: 14 bytes
Suprimentos: 14 bytes
Totalizadores no sujeitos ao CMS: 126 bytes
Contadores dos TP's no sujeitos ao CMSl: 36 bytes
Contador de ordem de operao: 6 bytes
Contador de operaes no sujeitas ao CMS 6 bytes
33
Fun#es de $nforma#es da $mpressora
Nmero de Alquotas cadastradas 2 bytes
Data do movimento: 6 bytes
Acrscimos: 14 bytes
Acrscimo financeiro: 14 bytes
Exemplo:
Ret = Bematech_F_DadosUltimaReducao (Var, &Retorno);
34
Fun#es de $mpresso de %he2ues
1.0 Fun#es de $mpresso de %he2ues
Bematech7F$7=ro>rama9oeda8in>ular: char ; 9oeda8in>ular6 <(etorno3
Programa o nome da moeda no singular, para impresso de cheques (ex. Real).
Parmetro :
MoedaSingular String com 19 posies.
Exemplo:
Ret = Bematech_F_ProgramaMoedaSingular ("Real ", &Retorno);
Bematech7F$7=ro>rama9oeda=lural: char ; 9oeda=lural6 <(etorno3
Programa o nome da moeda no plural, para impresso de cheques (ex. Reais).
Parmetro :
MoedaPlural String com 22 posies.
Exemplo:
Ret = Bematech_F_ProgramaMoedaPlural ("Reais ", &Retorno);
Bematech7F$78tatusche2ue : char ; 5ar6 <(etorno3
Verifica o status do cheque.
Parmetro :
Var varivel string com 2 posies para receber o status com os
seguintes valores:
1 impressora ok;
2 cheque em impresso;
3 cheque posicionado;
4 aguardando o posicionamento o cheque.
Exemplo:
Ret = Bematech_F_StatusCheque (Var, &Retorno);
Bematech7F$7%ancela$mpressao%he2ue :<(etorno3
Cancela a impresso do cheque que est sendo aguardado pela impressora. O
cheque que est em impresso no pode ser cancelado.
35
Fun#es de $mpresso de %he2ues
Parmetro :
No h.
Exemplo:
Ret = Bematech_F_CancelampressaoCheque (&Retorno);
Bematech7F$7$mprime%he2ue :char ;Banco6 char ;5alor6 char ;Fa0orecido6
char ;Localidade6 char ;Dia6 char ;9Ls6 char
;,no6 char ;9ensa>em6 <(etorno 3
mprime cheques na impressora MP40.
Parmetros:
Banco String numrica com o nmero do banco com 3 dgitos;
Valor String numrica com o valor do cheque com 14 dgitos;
Favorecido String com 45 posies;
Localidade String com 24 posies;
Dia String numrica com 2 dgitos;
Ms String numrica com 2 dgitos;
Ano String numrica com 4 dgitos;;
Mensagem String com a mensagem opcional que ser impressa uma
linha abaixo da localidade com at 120 posies.
Exemplo:
Ret = Bematech_F_mprimeCheque ("001, 00000000015000, "Bematech S/A,
Curitiba, "21, "03, "2001, , &Retorno);
Bematech7F$7$mprime%he2ueB('00 :char ;9odo$mpressao6 char ;Banco6
char ;5alor6 char ;Fa0orecido6
char ;Localidade6 char ;Dia6 char ;9Ls6
char ;,no6 char ;9ensa>em6 <(etorno 3
mprime cheques na impressora modelo BR400. Essa impressora permite escolher
o modo de insero do cheque para a impresso (consulte o manual da
impressora para maiores informaes).
Parmetros:
Modompressao Modo de insero do cheque na impressora. Possui os
seguintes valores:
0 vertical frontal;
1 horizontal frontal;
2 horizontal superior.
Banco String numrica com o nmero do banco com 3 dgitos;
Valor String numrica com o valor do cheque com 14 dgitos;
36
Fun#es de $mpresso de %he2ues
Favorecido String com 45 posies;
Localidade String com 24 posies;
Dia String numrica com 2 dgitos;
Ms String numrica com 2 dgitos;
Ano String numrica com 4 dgitos;;
Mensagem String com a mensagem opcional que ser impressa uma
linha abaixo da localidade com at 120 posies.
Exemplo:
mpresso com o modo de insero do cheque horizontal frontal:
Ret = Bematech_F_mprimeChequeBR400 ("1, "001, 00000000015000,
"Bematech S/A, Curitiba, "21, "03,
"2001, , &Retorno);
Bematech7F$7Leitura%he2ue :5ar6 <(etorno3
Permite fazer a leitura do cdigo de barras (CMC7) do cheque na impressora
modelo BR400. Aps a leitura o cheque ficar preso, para solta-lo chame a funo
Bematech_F_CancelampressaoCheque. Esse comando implementado dessa
forma para que se possa ler os dados, fazer a consulta do cheque e em seguida
iniciar a impresso sem ter que coloca-lo novamente na impressora.
Parmetro :
Var varivel string com 39 posies para receber os dados do
cheque.
Exemplo:
Ret = Bematech_F_LeituraCheque (Var, &Retorno);
Os dados retornados no parmetro "Var estaro no seguinte formato:
Header + Status + Caracteres Lidos + Null onde:
Header = 95 (decimal) ou 5F (hexadecimal)
Status = 1 byte com as seguintes informaes:
Bits 0 e 1 : indica o tipo de fonte lida conforme tabela abaixo.
Bits 2 e 3 : no definidos.
Bit 4 On : releitura no permitida
Off : releitura permitida.
Bit 5 On : leitura com trmino anormal.
Off : leitura com trmino normal.
Bit 6 On : no usado e fixado em On.
Bit 7 Off : no usado e fixado em Off
Bit 0 Bit 1 Fonte
On Off E13B
Off Off CMC7
37
*utras Fun#es da Lib Linux
10.0 *utras Fun#es da Lib Linux
Bematech7F$7,bre=orta8erial :char ;=orta 6 <(etorno3
Abre a porta serial ou TTY do computador.
Parmetro:
No h

Exemplo:
ret = Bematech_F_AbrePortaSerial ("COM2);
Bematech7F$7Fecha=orta:3
Fecha a porta serial ou TTY aberta pela funo Bematech_F_AbrePortaSerial().
Parmetro:
No h

Exemplo:
ret = Bematech_F_FechaPorta ();
38