Business - Automação Comercial

Códigos de Barras no ECF

Neste artigos vamos conhecer as funções da BemaFI32/BemaFI64.dll que realizam a impressão de códigos de barras nos ECFs térmicos Bematech.

por Iohannes Nakatani



Olá pessoal,

Neste artigo vamos conhecer as funções da BemaFI32/BemaFI64.dll que realizam a impressão de códigos de barras nos ECFs térmicos Bematech.

Podemos utilizar códigos de barras no campo referente à mensagem promocional (Cupom Fiscal), em cupons de recebimentos não fiscais, bem como em relatórios gerencial e comprovante não fiscal vinculado (comprovante de crédito e débito).

Para a impressão dos códigos de barras no cupom fiscal e no cupom de recebimento não fiscal, iremos utilizar o campo referente à mensagem promocional, no fechamento destes cupons. No caso de impressão dos códigos de barras no relatório gerencial e no comprovante não fiscal vinculado, teremos duas funções: uma para configurar o código de barras e outra para a impressão. Nestes dois documentos, cada código de barras é impresso por uma função diferente da dll.

Para impressão do código de barras no cupom fiscal e no cupom de recebimento não fiscal, usaremos a função Bematech_FI_TerminaFechamentoCupomCodigoBarrasMFD. Seus parâmetros são os seguintes:

Parâmetro

Definição

cMensagem

STRING com a mensagem promocional com até 384.

cTipoCodigo

STRING com o tipo de código de barras, exemplos: “EAN13″, “PDF417″, “ITF”, “EAN8″, “CODABAR”, “CODE128″, “CODE39″, “ISBN”, “MSI”, “PLESSEY”, “UPCA” e “UPCE”.

cCodigo

STRING com o dados do código a ser impresso, respeitando a definição do tipo de código escolhido.

iAltura

INTEIRO com o valor de altura, entre 1 e 255. O default é 162.

iLargura

INTEIRO com o valor da largura, entre 0 e 2, onde:
0 – barras finas
1 – médias (default)
2 – grossas

iPosicaoCaracteres

INTEIRO com o valor da posição dos caracteres do código, entre 0 e 3, onde:
0 – não imprime os caracteres
1 – caracteres acima do código
2 – caracteres abaixo do código
3 – acima e abaixo

iFonte

INTEIRO com o valor da fonte de impressão, entre 0 e 1, onde:
0 – Normal
1 – Condensado

iMargem

INTEIRO com o valor da margem, entre 0 e 575. O valor default é 0.

iCorrecaoErros

INTEIRO com o valor para a correção de erros de impressão do código, entre 0 e 8.

iColunas

INTEIRO com o valor do tamanho da coluna gráfica, entre 0 e 30.

Para a impressão do código de barras no relatório gerencial e no comprovante não fiscal vinculado, usaremos as funções de configuração e impressão do código, conforme citamos abaixo:

  • Bematech_FI_ConfiguraCodigoBarrasMFD

Parâmetros:

Parâmetro

Definição

iAltura

INTEIRO com o valor de altura, entre 1 e 255. O default é 162.

iLargura

INTEIRO com o valor da largura, entre 0 e 2, onde:
0 – barras finas
1 – médias (default)
2 – grossas

iPosicaoCaracteres

INTEIRO com o valor da posição dos caracteres do código, entre 0 e 3, onde:
0 – não imprime os caracteres
1 – caracteres acima do código
2 – caracteres abaixo do código
3 – acima e abaixo

iFonte

INTEIRO com o valor da fonte de impressão, entre 0 e 1, onde:
0 – Normal
1 – Condensado

iMargem

INTEIRO com o valor da margem, entre 0 e 575. O valor default é 0.

Parâmetro:

iCódigo: STRING do código que será gerado.

Parâmetro:

iCódigo: STRING do código que será gerado.

Parâmetro:

iCódigo: STRING do código que será gerado.

Parâmetro:

iCódigo: STRING do código que será gerado.

Parâmetro:

iCódigo: STRING do código que será gerado.

Parâmetro:

iCódigo: STRING do código que será gerado.

Parâmetro:

iCódigo: STRING do código que será gerado.

Parâmetro:

iCódigo: STRING do código que será gerado.

Parâmetro:

iCódigo: STRING do código que será gerado.

Parâmetros:

Parâmetro

Definição

iNível

Inteiro entre 0 à 8.

iAltura

Inteiro entre 1 à 8.

iLargura

Inteiro entre 1 à 4.

iColunas

Inteiro entre 0 à 30.

iCódigo

String do código que deseja gerar.

Parâmetro:

iCódigo: STRING do código que será gerado.

Parâmetro:

iCódigo: STRING do código que será gerado.

Parâmetro:

iCódigo: STRING do código que será gerado.

Agora que já conhecemos as funções e seus parâmetros, vamos para a declaração e execução de cada uma delas.

Declaração em Delphi:

function Bematech_FI_ConfiguraCodigoBarrasMFD(Altura: Integer; Largura: Integer; PosicaoCaracteres: Integer; Fonte: Integer; Margem: Integer): Integer; StdCall; External ‘BEMAFI32.DLL’;

function Bematech_FI_CodigoBarrasUPCAMFD( Codigo: String ): Integer; StdCall; External ‘BEMAFI32.DLL’;

function Bematech_FI_CodigoBarrasUPCEMFD( Codigo: String ): Integer; StdCall; External ‘BEMAFI32.DLL’;

function Bematech_FI_CodigoBarrasEAN13MFD( Codigo: String ): Integer; StdCall; External ‘BEMAFI32.DLL’;

function Bematech_FI_CodigoBarrasEAN8MFD( Codigo: String ): Integer; StdCall; External ‘BEMAFI32.DLL’;

function Bematech_FI_CodigoBarrasCODE39MFD( Codigo: String ): Integer; StdCall; External ‘BEMAFI32.DLL’;

function Bematech_FI_CodigoBarrasCODE93MFD( Codigo: String ): Integer; StdCall; External ‘BEMAFI32.DLL’;

function Bematech_FI_CodigoBarrasCODE128MFD( Codigo: String ): Integer; StdCall; External ‘BEMAFI32.DLL’;

function Bematech_FI_CodigoBarrasITFMFD( Codigo: String ): Integer; StdCall; External ‘BEMAFI32.DLL’;

function Bematech_FI_CodigoBarrasCODABARMFD( Codigo: String ): Integer; StdCall; External ‘BEMAFI32.DLL’;

function Bematech_FI_CodigoBarrasISBNMFD( Codigo: String ): Integer; StdCall; External ‘BEMAFI32.DLL’;

function Bematech_FI_CodigoBarrasMSIMFD( Codigo: String ): Integer; StdCall; External ‘BEMAFI32.DLL’;

function Bematech_FI_CodigoBarrasPLESSEYMFD( Codigo: String ): Integer; StdCall; External ‘BEMAFI32.DLL’;

function Bematech_FI_CodigoBarrasPDF417MFD( NivelCorrecaoErros: Integer; Altura: Integer; Largura: Integer; Colunas: Integer; Codigo: String ): Integer; StdCall; External ‘BEMAFI32.DLL’;

function Bematech_FI_TerminaFechamentoCupomCodigoBarrasMFD( cMensagem: string;cTipoCodigo: string; cCodigo: string; iAltura: integer; iLargura: integer; iPosicaoCaracteres: integer; iFonte: integer; iMargem: integer; iCorrecaoErros: integer; iColunas: integer ): Integer; StdCall; External ‘BEMAFI32.DLL’;

Declaração em VB

Public Declare Function Bematech_FI_TerminaFechamentoCupomCodigoBarrasMFD Lib “BEMAFI32.DLL” (ByVal cMensagem As String, ByVal cTipoCodigo As String, ByVal cCodigo As String, ByVal iAltura As Integer, ByVal iLargura As Integer, ByVal iPosicaoCaracteres As Integer, ByVal iFonte As Integer, ByVal iMargem As Integer, ByVal iCorrecaoErros As Integer, ByVal iColunas As Integer) As Integer

Public Declare Function Bematech_FI_ConfiguraCodigoBarrasMFD Lib “BEMAFI32.DLL” (ByVal Altura As Integer, ByVal Largura As Integer, ByVal PosicaoCaracteres As Integer, ByVal Fonte As Integer, ByVal Margem As Integer) As Integer

Public Declare Function Bematech_FI_CodigoBarrasUPCAMFD Lib “BEMAFI32.DLL” (ByVal Codigo As String) As Integer

Public Declare Function Bematech_FI_CodigoBarrasUPCEMFD Lib “BEMAFI32.DLL” (ByVal Codigo As String) As Integer

Public Declare Function Bematech_FI_CodigoBarrasEAN13MFD Lib “BEMAFI32.DLL” (ByVal Codigo As String) As Integer

Public Declare Function Bematech_FI_CodigoBarrasEAN8MFD Lib “BEMAFI32.DLL” (ByVal Codigo As String) As Integer

Public Declare Function Bematech_FI_CodigoBarrasCODE39MFD Lib “BEMAFI32.DLL” (ByVal Codigo As String) As Integer

Public Declare Function Bematech_FI_CodigoBarrasCODE93MFD Lib “BEMAFI32.DLL” (ByVal Codigo As String) As Integer

Public Declare Function Bematech_FI_CodigoBarrasCODE128MFD Lib “BEMAFI32.DLL” (ByVal Codigo As String) As Integer

Public Declare Function Bematech_FI_CodigoBarrasITFMFD Lib “BEMAFI32.DLL” (ByVal Codigo As String) As Integer

Public Declare Function Bematech_FI_CodigoBarrasCODABARMFD Lib “BEMAFI32.DLL” (ByVal Codigo As String) As Integer

Public Declare Function Bematech_FI_CodigoBarrasISBNMFD Lib “BEMAFI32.DLL” (ByVal Codigo As String) As Integer

Public Declare Function Bematech_FI_CodigoBarrasMSIMFD Lib “BEMAFI32.DLL” (ByVal Codigo As String) As Integer

Public Declare Function Bematech_FI_CodigoBarrasPLESSEYMFD Lib “BEMAFI32.DLL” (ByVal Codigo As String) As Integer

Public Declare Function Bematech_FI_CodigoBarrasPDF417MFD Lib “BEMAFI32.DLL” (ByVal NivelCorrecaoErros As Integer, ByVal Altura As Integer, ByVal Largura As Integer, ByVal Colunas As Integer, ByVal Codigo As String) As Integer

Implementação em Delphi:

iRetorno := Bematech_FI_ConfiguraCodigoBarrasMFD(iAltura, iLargura, iPosicaoCaracteres, iFonte, iMargem);

iRetorno := Bematech_FI_CodigoBarrasUPCAMFD(cCodigo); //cCodigo := “12345678901”

iRetorno := Bematech_FI_CodigoBarrasUPCEMFD(cCodigo); //cCodigo := “123456”

iRetorno := Bematech_FI_CodigoBarrasEAN13MFD(cCodigo); //cCodigo := “123456789012”

iRetorno := Bematech_FI_CodigoBarrasEAN8MFD(cCodigo); //cCodigo := “1234567”

iRetorno := Bematech_FI_CodigoBarrasCODE39MFD(cCodigo); //cCodigo := “abc-123”

iRetorno := Bematech_FI_CodigoBarrasCODE93MFD(cCodigo); //cCodigo := “123-ABC”

iRetorno := Bematech_FI_CodigoBarrasCODE128MFD(cCodigo); //cCodigo := “Bematech”

iRetorno := Bematech_FI_CodigoBarrasITFMFD(cCodigo); //cCodigo := “123456789012345”

iRetorno := Bematech_FI_CodigoBarrasCODABARMFD(cCodigo); //cCodigo := “123-ABC/001”

iRetorno := Bematech_FI_CodigoBarrasISBNMFD(cCodigo); //cCodigo := “1-56592-292-X 90000”

iRetorno := Bematech_FI_CodigoBarrasMSIMFD(cCodigo); //cCodigo := “123”

iRetorno := Bematech_FI_CodigoBarrasPLESSEYMFD(cCodigo); //cCodigo := “123-ABC”

iRetorno := Bematech_FI_CodigoBarrasPDF417MFD(iNivel, iAltura, iLargura, iColunas, cCodigo); //cCodigo := “Bematech. Sempre presente nas melhores soluções !!!”

iRetorno := Bematech_FI_TerminaFechamentoCupomCodigoBarrasMFD(cMensagem, cTipoCodigo, cCodigo, iAltura, iLargura, iPosicaoCaracteres, iFonte, iMargem, iCorrecaoErros, iColunas );

Implementação em VB:

iRetorno = Bematech_FI_TerminaFechamentoCupomCodigoBarrasMFD(cMensagem, TipoCodigo, cCodigo, iAltura, iLargura, iPosicaoCaracteres, iFonte, iMargem, iCorrecaoErros, iColunas)

iRetorno = Bematech_FI_ConfiguraCodigoBarrasMFD(iAltura, iLargura, iPosicaoCaracteres, iFonte, iMargem)

iRetorno = Bematech_FI_CodigoBarrasUPCAMFD(cCodigo) ‘cCodigo = “12345678901”

iRetorno = Bematech_FI_CodigoBarrasUPCEMFD(cCodigo) ‘cCodigo = “123456”

iRetorno = Bematech_FI_CodigoBarrasEAN13MFD(cCodigo) ‘cCodigo = “123456789012”

iRetorno = Bematech_FI_CodigoBarrasEAN8MFD(cCodigo) ‘cCodigo = “1234567”

iRetorno = Bematech_FI_CodigoBarrasCODE39MFD(cCodigo) ‘cCodigo = “abc-123”

iRetorno = Bematech_FI_CodigoBarrasCODE93MFD(cCodigo) ‘cCodigo = “123-ABC”

iRetorno = Bematech_FI_CodigoBarrasCODE128MFD(cCodigo) ‘cCodigo = “Bematech”

iRetorno = Bematech_FI_CodigoBarrasITFMFD(cCodigo) ‘cCodigo = “123456789012345”

iRetorno = Bematech_FI_CodigoBarrasCODABARMFD(cCodigo) ‘cCodigo = “123-ABC/001”

iRetorno = Bematech_FI_CodigoBarrasISBNMFD(cCodigo) ‘cCodigo = “1-56592-292-X 90000”

iRetorno = Bematech_FI_CodigoBarrasMSIMFD(cCodigo) ‘cCodigo = “123”

iRetorno = Bematech_FI_CodigoBarrasPLESSEYMFD(cCodigo) ‘cCodigo = “123-ABC”

iRetorno = Bematech_FI_CodigoBarrasPDF417MFD(iNivel, iAltura, iLargura, iColunas, cCodigo)‘cCodigo = “Bematech. Sempre presente nas melhores soluções !!!”

Assim, finalizamos este artigo sobre as funções de impressão de códigos de barras na impressora fiscal térmica Bematech.

Um forte abraço e até o próximo artigo!

Iohannes Nakatani
Analista de Suporte ao Desenvolvedor
0800 644 SBSP (7277)
email/msn: suporte.iohannes@bematech.com.br

skype: suporte.iohannes

Iohannes Nakatani

Iohannes Nakatani - Analista de Suporte. Bematech - Marketing de Parcerias.
Visite o site:
http://www.bematech.com.br.