Plataforma de Comunicação Elgin versão 3.13.8
Documentação das bibliotecas de integração com hardware Elgin
Térmica

Fornece funções para integração com impressoras ELGIN. Mais...

Funções

int AbreConexaoImpressora (int tipo, const char *modelo, const char *conexao, int parametro)
 Abre conexão com a impressora. Mais...
 
int FechaConexaoImpressora ()
 Fecha conexão com a impressora. Mais...
 
int EspacamentoEntreLinhas (int tamanho)
 EspacamentoEntreLinhas Altera o espaçamento entre linhas na impressão (line mode). Mais...
 
int ImpressaoTexto (const char *dados, int posicao, int stilo, int tamanho)
 Envia informações de texto para o buffer da impressora. Mais...
 
int Corte (int avanco)
 Realiza o corte do papel. Mais...
 
int CorteTotal (int avanco)
 Realiza o corte total do papel. Mais...
 
int ImpressaoQRCode (const char *dados, int tamanho, int nivelCorrecao)
 Impressão de QRCode. Mais...
 
int ImpressaoPDF417 (int numCols, int numRows, int width, int height, int errCorLvl, int options, const char *dados)
 Impressão de código PDF417. Mais...
 
int ImpressaoCodigoBarras (int tipo, const char *dados, int altura, int largura, int HRI)
 Impressão de código de barras. Mais...
 
int AvancaPapel (int linhas)
 Imprime informações no buffer e avança o papel. Mais...
 
int StatusImpressora (int param)
 Obtém o status da impressora. Mais...
 
int AbreGavetaElgin ()
 Abre gavetas Elgin. Mais...
 
int AbreGaveta (int pino, int ti, int tf)
 Abre gaveta. Mais...
 
int InicializaImpressora ()
 Inicializa a impressora para novas tarefas. Mais...
 
int DefinePosicao (int posicao)
 Define a posição do conteúdo a ser impresso. Mais...
 
int SinalSonoro (int qtd, int tempoInicio, int tempoFim)
 Emite sinal sonoro. Mais...
 
int DirectIO (unsigned char *writeData, unsigned int writeNum, unsigned char *readData, unsigned int *readNum)
 Envia comandos ESCPOS direto para a porta de comunicação. Mais...
 
int ImprimeImagemMemoria (const char *key, int scala)
 Imprime imagem carregada em memória. Mais...
 
int ImprimeXMLSAT (const char *dados, int param)
 Imprime Danfe SAT. Mais...
 
int ImprimeXMLCancelamentoSAT (const char *dados, const char *assQRCode, int param)
 Imprime Danfe de cancelamento SAT. Mais...
 
int ImprimeXMLNFCe (const char *dados, int indexcsc, const char *csc, int param)
 Imprime o Danfe NFCe. Mais...
 
int ImprimeXMLCancelamentoNFCe (const char *dados, int param)
 ImprimeXMLCancelamentoNFCe Essa função recebe o conteúdo do XML de cancelamento do NFCe, valida o conteúdo, constrói o Danfe e realiza a impressão. Mais...
 
int ModoPagina ()
 Habilita Modo Página. Mais...
 
int DirecaoImpressao (int direcao)
 Define Direção de Impressão. Mais...
 
int DefineAreaImpressao (int oHorizontal, int oVertical, int dHorizontal, int dVertical)
 Define Área Impressão. Mais...
 
int PosicaoImpressaoHorizontal (int nLnH)
 Define Posição de Impressão Horizontal. Mais...
 
int PosicaoImpressaoVertical (int nLnH)
 Define a Posição da Impressão Vertical. Mais...
 
int ImprimeModoPagina ()
 Imprime Modo Página. Mais...
 
int LimpaBufferModoPagina ()
 Limpa Buffer em Modo Página. Mais...
 
int ImprimeMPeRetornaPadrao ()
 Imprime Modo Página e Retorna ao Modo Padrão. Mais...
 
int ModoPadrao ()
 Retorna ao Modo Padrão. Mais...
 
char * GetVersaoDLL ()
 Retorna a versão da DLL E1_Impressora. Mais...
 
int ImprimeCupomTEF (const char *dados)
 Realiza a impressão do Cupom TEF
. Mais...
 
int ImprimeImagem (const char *path)
 Imprime imagem enviada à impressora diretamente, sem carregá-la na memória. Mais...
 

Descrição detalhada

Fornece funções para integração com impressoras ELGIN.

Essa biblioteca fornece diversas funções de integração com as impresoras não Fiscais ELGIN.
Os modelos de impressoras compatíveis com essa biblioteca são:

‍Impressora i7
Impressora i7 Plus
Impressora i8
Impressora i9
Impressora ix
Impressora Fitpos
Impressora BK-T681

As impressoras de outras marcas compativeis são

‍Bematech MP-4200
Bematech MP-2800

Convenções usadas nas chamadas das funções da biblioteca:
Windows

‍__stdcall

Linux

‍__cdecl

Funções

◆ AbreConexaoImpressora()

int AbreConexaoImpressora ( int  tipo,
const char *  modelo,
const char *  conexao,
int  parametro 
)

Abre conexão com a impressora.

Parâmetros
tipo- Parâmetro do tipo numérico que define o tipo de comunicação que será estabelecido.
Conforme tabela a seguir:
Valor Referência
1 USB
2 RS232
3 TCP/IP
4 Bluetooth
5 Impressoras acopladas
(Android)

modelo- Parâmetro tipo caractere que especifica o modelo para conexão.
Conforme lista:

Valores
i7
i7 Plus
i8
i9
ix
Fitpos
BK-T681
MP-4200
MP-4200 HS
MP-2800

  • OBS: Esse parâmetro é desconsiderado se o tipo da impressora for o 5, podendo ser definido como "" (string vazia).
conexao- Parâmetro tipo caractere que define detalhes de conexão.
Detalhes de conexão:
Referência Valor exemplo
USB USB
RS232 COM2
TCP/IP 192.168.0.20
Bluetooth AA:BB:CC:DD:EE:FF

  • OBS: Esse parâmetro é desconsiderado se o tipo da impressora for o 5, podendo ser definido como "" (string vazia).
parametro- Parâmetro do tipo numérico auxiliar para a conexão com a impressora.
Utilizado para especificar baudrate ou porta de comunicação TCP/IP.
  • OBS: Quando a conexão estabelecida for USB ou Bluetooth esse parâmetro é desconsiderado e pode ser definido como valor 0.
  • OBS: Esse parâmetro é desconsiderado se o tipo da impressora for o 5, podendo ser definido como 0 (zero).
Retorna
O retorno da função é do tipo numérico.
A função bem sucedida deve retornar 0.

◆ FechaConexaoImpressora()

int FechaConexaoImpressora ( )

Fecha conexão com a impressora.

Finaliza a conexão que foi estabelecida em AbreConexaoImpressora.

Retorna
O retorno da função é do tipo numérico.
A função bem sucedida deve retornar 0.

◆ EspacamentoEntreLinhas()

int EspacamentoEntreLinhas ( int  tamanho)

EspacamentoEntreLinhas Altera o espaçamento entre linhas na impressão (line mode).

Parâmetros
tamanhoDefine espaçamento. Valor entre 1 e 255.
Retorna
Retorno numérico que indica se a operação foi concluída com sucesso.
A função bem sucedida deve retornar 0.
  • Consulte Códigos de erro para mais informações.

◆ ImpressaoTexto()

int ImpressaoTexto ( const char *  dados,
int  posicao,
int  stilo,
int  tamanho 
)

Envia informações de texto para o buffer da impressora.

As informações são impressas quando o buffer atinge o limite, quando é executada a
função AvancaPapel ou quando recebe um byte 10 (Line Feed – LF).
Caso nenhuma dessas opções seja executada um próximo comando pode apagar os dados do buffer.

Parâmetros
dados- Parâmetro tipo caractere com a informação que será enviada ao buffer de impressão.
posicao- Parâmetro tipo numérico que define a posição do texto a ser impresso.
Os possíveis valores são:
Valor Posição
0 Esquerda
1 Centro
2 Direira

stilo- Parâmetro numérico que altera o estilo do texto impresso.
O texto pode ser alterado entre os seguintes estilos:
Valor Descrição
0 Fonte A
1 Fonte B
2 Sublinhado
4 Modo reverso
8 Negrito
  • Para habilitar mais de um estilo deve-se realizar a somar dos valores.
    Parâmetros
    tamanho- Define o tamanho do texto a ser impresso.
    O texto pode ser aumentado em até 6 vezes na sua largura e altura. Os valores definidos são:
    Valor Descrição
    0 1 x na altura e largura
    1 2 x na altura
    2 3 x na altura
    3 4 x na altura
    4 5 x na altura
    5 6 x na altura
    6 7 x na altura
    7 8 x na altura
    16 2 x na largura
    32 3 x na largura
    48 4 x na largura
    64 5 x na largura
    80 6 x na largura
    96 7 x na largura
    112 8 x na largura
  • Para aumentar largura e altura deve-se somar os valores.
  • Apenas os modelos i7 e i9 suportam aumento de até 8 vezes. As demais atingem no máximo 6.
    Retorna
    O valor de retorno dessa função é um número indicando a quantidade de informação escrita no buffer.

    ‍* Informações em buffer serão apagadas caso a função InicializaImpressora seja executada.

◆ Corte()

int Corte ( int  avanco)

Realiza o corte do papel.

  • OBS: A impressora do SmartPOS não suporta este método, uma vez que não existe guilhotina nesse modelo. Este método funciona corretamente nas demais impressoras térmicas, conectadas ao SmartPOS.
Parâmetros
avanco- Parâmetro numérico que indica o quanto o papel deve avançar antes do corte.
Retorna
Retorno numérico que indica se a operação foi concluída com sucesso.
A função bem sucedida deve retornar 0.
  • Consulte Códigos de erro para mais informações.

◆ CorteTotal()

int CorteTotal ( int  avanco)

Realiza o corte total do papel.

  • OBS: Algumas impressoras não suporta este método devido a limitação do hardware.
    As impressoras com tal limitação irão executar o corte parcial.
Parâmetros
avanco- Parâmetro numérico que indica o quanto o papel deve avançar antes do corte.
Retorna
Retorno numérico que indica se a operação foi concluída com sucesso.
A função bem sucedida deve retornar 0.
  • Consulte Códigos de erro para mais informações.

◆ ImpressaoQRCode()

int ImpressaoQRCode ( const char *  dados,
int  tamanho,
int  nivelCorrecao 
)

Impressão de QRCode.

Essa função imprime o código QRCode com possibilidade de variação de tamanho e nível de correção.

Parâmetros
dados- Conjunto de informações que irão compor o QRCode.
tamanho- Tamanho do QRCode.

‍Valores entre 1 e 6.

nivelCorrecao- Define o nível de correção a ser configurado para o QRCode.
Conforme tabela a seguir:
Valor Nível de correção
1 7%
2 15%
3 25%
4 30%
Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

‍* O QRCode pode não ser impresso caso a área de impressão seja ultrapassada.
Isso pode acontecer dependendo da quantidade de caracteres, tamanho do QRCode e nível de correção.

◆ ImpressaoPDF417()

int ImpressaoPDF417 ( int  numCols,
int  numRows,
int  width,
int  height,
int  errCorLvl,
int  options,
const char *  dados 
)

Impressão de código PDF417.

Realiza a impressão de PDF417, com possibilidade de variação de tamanho e nível de correção.

Parâmetros
numCols- Parâmetro do tipo numérico que define o número de colunas.

Valores válidos:

‍Números entre 0 e 30 (0, 1, 2, ..., 30).


  • OBS: O valor 0 significa processamento automático.

numRows- Parâmetro do tipo numérico que define o número de linhas.

Valores válidos:

‍Números entre 3 e 90 (3, 4, 5, ..., 90) ou 0.


  • OBS: O valor 0 significa processamento automático.

width- Parâmetro do tipo numérico que define a largura do módulo, em pontos.

Valores válidos:

‍Números entre 2 e 8 (2, 3, 4, ..., 8).


  • OBS: Se o tipo de conexão estiver definido como 5, este parâmetro definirá a largura preferencial do módulo, em pixels, e os valores válidos serão todos os números inteiros positivos (0, 1, 2, ...).

height- Parâmetro do tipo numérico que define a altura da linha, multiplicando o valor definido pela largura do módulo (configurada em width).

Valores válidos:

‍Números entre 2 e 8 (2, 3, 4, ..., 8).


  • OBS: Se o tipo de conexão estiver definido como 5, este parâmetro definirá a altura preferencial do módulo, em pixels, e os valores válidos serão todos os números inteiros positivos (0, 1, 2, ...).

errCorLvl- Parâmetro do tipo numérico que define o nível de correção de erro.

Valores válidos:
Valor Nível de Correção
0 Nível 0
1 Nível 1
2 Nível 2
3 Nível 3
4 Nível 4
5 Nível 5
6 Nível 6
7 Nível 7
8 Nível 8

options- Parâmetro do tipo numérico que define a opção para PDF417.

Valores válidos:
Valor Tipo
0 Standard
1 Truncated

dados- Parâmetro do tipo caractere que define o código a ser impresso.

Valores válidos:

‍Qualquer string de dados imprimíveis; máximo de 65532 caracteres.


Retorna
O retorno da função é do tipo numérico.
A função bem-sucedida deve retornar 0.

◆ ImpressaoCodigoBarras()

int ImpressaoCodigoBarras ( int  tipo,
const char *  dados,
int  altura,
int  largura,
int  HRI 
)

Impressão de código de barras.

Realiza a impressão de código de barras.

Parâmetros
tipo- Define o modelo do código de barras a ser impresso. Segue tabela de tipos disponíveis:
Valor Modelo Quantidade de dados Caracteres Regras
0 UPC-A 11 ou 12 0 até 9 -
1 UPC-E 6, 7, 8, 11 ou 12 0 até 9 Quantidade = 6 se 1º != 0
2 JAN13 / EAN 13 12 ou 13 0 até 9 -
3 JAN8 / EAN 8 7 ou 8 0 até 9 -
4 CODE 39 1 até 255 0 até 9, A até Z
SP, $, %, *, +, -, \, .
-
5 ITF 2 até 255 (números pares) 0 até 9 -
6 CODE BAR 1 até 255 0 até 9, A até D, a até d
$, +, -, ., /, :
1º e nº devem ser A até D ou a até d
7 CODE 93 1 até 255 00H até 7FH -
8 CODE 128 2 até 255 00H até 7FH 1º = {, 2º = A, B ou C
dados- Informação que compõe o código.
altura- Altura do código de barras. Valor de 1 até 255.
largura- Define a largura do código de barras. Valor de 1 até 6.

‍Se valor definido ultrapassar área de impressão o código não será impresso.

HRI- Define a posição de impressão do conteúdo do código de barras.

‍1 - Acima do código.
2 - Abaixo do código.
3 - Ambos.
4 - Não impresso.

Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

◆ AvancaPapel()

int AvancaPapel ( int  linhas)

Imprime informações no buffer e avança o papel.

Parâmetros
linhas- Indica o quanto o papel deve avançar.
Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.
  • Para mais informações sobre retorno consulte Códigos de erro.

◆ StatusImpressora()

int StatusImpressora ( int  param)

Obtém o status da impressora.

Essa função disponibiliza o status de gaveta, tampa, sensor de papel e do ejetor.

  • Essa função pode ter limitações de alguns modelos, conforme indicado na tabela a seguir:
    Gaveta Tampa Sensor de pouco papel Sensor de papel presente Ejetor
    i7 x x x
    i8 x x x
    i9 x x x x
    ix x x x x
    Fitpos x x x
    BK-T681 x x x x
    MP-4200 x x x x
    MP-2800 x x x
    DR800 x x x x
    TM-T20 x x x
    Print ID Touch x x x
    SmartPOS x
    Mini PDV M8 x x
Parâmetros
param- Parâmetro tipo numérico para indicar qual status deve ser retornado.
Os possíveis valores são:

‍1 - Gaveta
2 - Tampa
3 - Papel
4 - Ejetor
5 - Geral

Retorna
Retorno tipo numérico de acordo com a descrição a seguir:
  • 0- Status de impressão.(*)
    • 10- Indica impressora ocupada.
    • 11- Indica impressora livre.
  • 1- Status da gaveta.
    • 1- Indica gaveta aberta.
    • 2- Indica gaveta fechada.
  • 2- Status de tampa.
    • 3- Indica tampa aberta.
    • 4- Indica tampa fechada.
  • 3- Status de papel.
    • 5- Indica que o papel está presente e não está próximo do fim.
    • 6- Indica papel próximo do fim.
    • 7- Indica papel ausente.
  • 4- Retorna o status do ejetor.
    • 8- Sem papel no ejetor.
    • 9- Com papel no ejetor.
  • 5- Retorna status geral.
    Essa função trabalha com bits de um byte para indicar os status.
    Conforme descrição abaixo:
    BIT STATUS DESCRIÇÃO
    0 LIGADO Indica gaveta aberta
    DESLIGADO Indica gaveta fechada
    1 LIGADO Indica Tampa aberta
    DESLIGADO Indica Tampa fechada
    2 LIGADO Indica pouco papel
    DESLIGADO Indica papel normal
    3 LIGADO Indica papel ausente
    DESLIGADO Indica papel presente
    4 LIGADO Indica papel presente no ejetor
    DESLIGADO Indica papel ausente no ejetor
    5 DESLIGADO Fixo
    6 DESLIGADO Fixo
    7 DESLIGADO Fixo

(*) Somente para impressora MP4200 ADV a partir da versão de FW 04.09.

◆ AbreGavetaElgin()

int AbreGavetaElgin ( )

Abre gavetas Elgin.

Essa função usa parâmetros padrões para abertura de gavetas Elgin. Para abrir gavetas de marcas diferentes use AbreGaveta e envie os parâmetros necessários para abertura.

Observação
O SmartPOS não suporta este método, uma vez que esse dispositivo não tem conector RJ-11. Se a gaveta for conectada à outra impressora térmica e esta, por sua vez, estiver conectada ao SmartPOS, o método funcionará corretamente.
Aviso
Para utilização desta função no MiniPDV M8 e M10 se faz necessário que o aplicativo solicite a permissão de armazenamento ao usuário
ou que o usuário acesse as configurações do android, na sessão de permissões do aplicativo e habilite a opção de armazenamento.
Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

◆ AbreGaveta()

int AbreGaveta ( int  pino,
int  ti,
int  tf 
)

Abre gaveta.

Essa função abre gavetas de acordo com os parâmetros fornecidos.

Parâmetros
pino- Indicação do pino a ser acionado.

‍Os valores possíveis são 0 ou 1.

ti- Tempo de inicialização do pulso.

‍Valores possíveis são 1 até 255.

tf- Tempo de desativação do pulso.

‍Valores possíveis são 1 até 255.

Observação
O SmartPOS não suporta este método, uma vez que esse dispositivo não tem conector RJ-11. Se a gaveta for conectada à outra impressora térmica e esta, por sua vez, estiver conectada ao SmartPOS, o método funcionará corretamente.
Aviso
Para utilização desta função no MiniPDV M8 e M10 se faz necessário que o aplicativo solicite a permissão de armazenamento ao usuário
ou que o usuário acesse as configurações do android, na sessão de permissões do aplicativo e habilite a opção de armazenamento.
Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

◆ InicializaImpressora()

int InicializaImpressora ( )

Inicializa a impressora para novas tarefas.

Essa função inicializa a impressora para novas tarefas, redefine as configurações para o padrão da impressora e apaga as informações em buffer.

Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.
  • Para mais informações sobre retorno consulte Códigos de erro.

◆ DefinePosicao()

int DefinePosicao ( int  posicao)

Define a posição do conteúdo a ser impresso.

  • OBS: As impressoras do SmartPOS e do Mini PDV M8 suportam parcialmente este método; nas demais impressoras térmicas, conectadas nesses dispositivos, este método funciona completamente.
Parâmetros
posicao- Parâmetro tipo numérico para indicar a posição.
Os valores possíveis são:
Valor Descrição
0 Esquerda
1 Centro
2 Direita


Retorna
O retorno é numérico
A função bem sucedida deve retornar 0.

◆ SinalSonoro()

int SinalSonoro ( int  qtd,
int  tempoInicio,
int  tempoFim 
)

Emite sinal sonoro.

  • OBS: O SmartPOS e o Mini PDV M8 não suportam este método; contudo, este método funciona corretamente nas demais impressoras térmicas, conectadas nesses dispositivos.

Emite sinal sonoro na impressora. Algumas impressoras não estão habilitadas para emitir sinal sonoro.

Parâmetros
qtd- Define quantidade de sinais emitidos.

‍Esse valor deve ser entre 1 e 63.

tempoInicio- Define o tempo em que o sinal deve ficar ativo.
tempoFim- Define o tempo entre um sinal e outro.

‍Valor de tempo deve ser de 1 à 25. Esse valor é multiplicado por 100 e passado em milisegundos para função.

Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

◆ DirectIO()

int DirectIO ( unsigned char *  writeData,
unsigned int  writeNum,
unsigned char *  readData,
unsigned int *  readNum 
)

Envia comandos ESCPOS direto para a porta de comunicação.

Observação
OBS: Este método apresenta algumas diferenças no ambiente Android - consulte sua documentação em Módulos > Android > Módulos > Impressora Térmica > DirectIO.

Função de despejo de comandos na porta de comunicação. Essa função também recebe dados da porta de comunicação.

Parâmetros
writeData- Sequência de comandos que devem ser enviados para a porta de comunicação.
writeNum- Quantidade de comandos enviados e que serão escritos.
readData- Alocação de memória que receberá os dados de retorno caso seja necessário.
readNum- Quantidade de dados que se espera ler. Após a execução da função,
essa variável deve indicar a quantidade de dados lidos da porta. Para
evitar a leitura da porta esse parâmetro deve estar em ZERO (0).
Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

◆ ImprimeImagemMemoria()

int ImprimeImagemMemoria ( const char *  key,
int  scala 
)

Imprime imagem carregada em memória.

Essa função utiliza do par de chaves para imprimir a imagem carregada em memória.
O upload da imagem é feito através do aplicativo Elgin Utility.

Parâmetros
key- Par de chaves identificador da imagem.
Valores entre (char)32 e (char)126.
  • Nota: Se a função for usada no SmartPOS ou no Mini PDV M8, este parâmetro recebe o caminho, relativo ao armazenamento interno do dispositivo, em que a imagem a ser impressa se encontra.

    Exemplo: o valor Download/Figura.bmp, passado neste parâmetro, imprime o arquivo Figura.bmp, localizado no diretório Download (no armazenamento interno).
scala- Tamanho da impressão, podendo ser 1 ou 2 para normal e duplicado, respectivamente.
Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

◆ ImprimeXMLSAT()

int ImprimeXMLSAT ( const char *  dados,
int  param 
)

Imprime Danfe SAT.

Essa função recebe o XML de retorno da venda do SAT, valida o conteúdo, constrói o Danfe e realiza a impressão de acordo com a especificação da SEFAZ SP.

Parâmetros
dados- Conteúdo do XML de retorno da venda do SAT
ou
Caminho para arquivo com dados do SAT prefixado com "path=", ex:
path=C:/Resposta SAT/CFe35210130197161000935590008544130085892910578.xml
param- Parâmetro do tipo numérico para ativar bits que modificam o cupom a ser impresso.

Os bits disponíveis e seus respectivos efeitos no cupom (quando ativados) são descritos a seguir:
Bit Valor inteiro Efeito no cupom
0 1 Impressão do logo no cabeçalho
1 2 Extrato reduzido
2 4 Cupom em ambiente de teste
6 64 Registro de item com desconto ou acréscimo
e variações no grupo totais
7 128 Imprime usando novo layout
8 256 Ativa separadores no novo layout

O valor passado ao parâmetro deve ser a soma dos valores inteiros correspondentes aos bits desejados.
O valor 0 não ativa nenhum bit e imprime o cupom padrão.
Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

Caso o XML apresente erros a função retornará a linha na qual encontrou o erro de acordo com XSD de validação.
Informações que não estejam presentes no XML serão desconsideradas.

◆ ImprimeXMLCancelamentoSAT()

int ImprimeXMLCancelamentoSAT ( const char *  dados,
const char *  assQRCode,
int  param 
)

Imprime Danfe de cancelamento SAT.

Essa função recebe o XML de retorno da operação de cancelamento e os dados de assinatura do QRCode de venda, valida as informações, constrói o Danfe e realiza impressão de acordo com a especificação da SEFAZ SP.

Parâmetros
dados- Conteúdo do XML de cancelamento retornado pelo SAT
ou
Caminho para arquivo com dados do SAT prefixado com "path=", ex:
path=C:/Resposta SAT/CFe35210130197161000935590008544130085892910578.xml
assQRCode- Assinatura do QRCode retornado na operação de Venda. Essa informação é necessária porque o XML de retorno da operação de venda não a contém.
param- Parâmetro do tipo numérico para ativar bits que modificam o cupom a ser impresso.

Os bits disponíveis e seus respectivos efeitos no cupom (quando ativados) são descritos a seguir:
Bit Valor inteiro Efeito no cupom
0 1 Impressão do logo no cabeçalho
6 64 Imprime usando novo layout
7 128 Ativa separadores no novo layout

O valor passado ao parâmetro deve ser a soma dos valores inteiros correspondentes aos bits desejados.
O valor 0 não ativa nenhum bit e imprime o cupom padrão.
Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

Caso o XML apresente erros a função retornará a linha na qual encontrou o erro de acordo com XSD de validação.
Informações que não estejam presentes no XML serão desconsideradas.

◆ ImprimeXMLNFCe()

int ImprimeXMLNFCe ( const char *  dados,
int  indexcsc,
const char *  csc,
int  param 
)

Imprime o Danfe NFCe.

Essa função recebe o conteúdo do XML de venda do NFCe, valida o conteúdo, constrói o Danfe e realiza a impressão.

Parâmetros
dados- Conteúdo do XML retornado pela venda
ou
Caminho para arquivo com dados da NFCe prefixado com "path=", ex:
path=C:/Resposta NFCe/33180705481336000137651000000916401000005909-nfce.xml
indexcsc- Identificador do CSC (Código de Segurança do Contribuinte no Banco de Dados da SEFAZ).

‍Deve ser informado sem os “0” (zeros) não significativos. A identificação do CSC corresponde à ordem do
CSC no banco de dados da SEFAZ, não confundir com o próprio CSC.

csc- Código de Segurança do Contribuinte.

‍Corresponde a um código de segurança alfanumérico (16 a 36 bytes) de conhecimento apenas da Secretaria
da Fazenda da Unidade Federada do emitente e do próprio contribuinte. Anteriormente, o código de segurança
CSC era chamado de “Token”.

param- Parâmetro do tipo numérico para ativar bits que modificam o cupom a ser impresso.

Os bits disponíveis e seus respectivos efeitos no cupom (quando ativados) são descritos a seguir:
Bit Valor inteiro Efeito no cupom
0 1 Impressão de extrato resumido
1 2 Utilização do EAN 13 no código dos produtos
2 4 Impressão completa da descrição dos produtos
3 8 Impressão do logotipo da empresa carregado em memória
4 16 Impressão do cupom de homologação
5 32 Redução do espaço de impressão do cupom
6 64 Utilização de separadores de sessão para o cupom
7 128 Impressão do IE no cabeçalho do cupom
8 256 Impressão do número sequencial para cada item
9 512 Impressão em uma via para Danfe em contingência
10 1024 Impressão de acréscimos/descontos por item

O valor passado ao parâmetro deve ser a soma dos valores inteiros correspondentes aos bits desejados.
O valor 0 não ativa nenhum bit e imprime o cupom padrão.
Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

◆ ImprimeXMLCancelamentoNFCe()

int ImprimeXMLCancelamentoNFCe ( const char *  dados,
int  param 
)

ImprimeXMLCancelamentoNFCe Essa função recebe o conteúdo do XML de cancelamento do NFCe, valida o conteúdo, constrói o Danfe e realiza a impressão.

Parâmetros
dados- Conteúdo do XML retornado no processo de cancelamento
ou
Caminho para arquivo com dados da NFCe prefixado com "path=", ex:
path=C:/Resposta NFCe/Canc_nfce.xml
param- Reservado para customizações. Passar valor ZERO.
Retorna
A função bem sucedida deve retornar 0.

◆ ModoPagina()

int ModoPagina ( )

Habilita Modo Página.

Deve ser utilizado para dar início aos trabalhos em modo página.

Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.
  • Para mais informações sobre retorno consulte Códigos de erro.

◆ DirecaoImpressao()

int DirecaoImpressao ( int  direcao)

Define Direção de Impressão.

  • OBS: A impressora do SmartPOS não suporta este método; contudo, este método funciona corretamente nas demais impressoras térmicas, conectadas ao SmartPOS.

Função do modo página utilizada para definir a direção em que serão realizadas as impressões.

Parâmetros
direcao- Valor entre 0 e 3.

‍0 - Da esquerda para direita partindo do ponto superior esquerdo.
1 - De baixo para cima partindo do ponto inferior esquerdo.
2 - Da direita para esquerda partindo do ponto inferior direito.
3 - De cima para baixo partindo do ponto superior direito.

Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.
  • Para mais informações sobre retorno consulte Códigos de erro.

◆ DefineAreaImpressao()

int DefineAreaImpressao ( int  oHorizontal,
int  oVertical,
int  dHorizontal,
int  dVertical 
)

Define Área Impressão.

  • OBS: A impressora do SmartPOS não suporta este método; contudo, este método funciona corretamente nas demais impressoras térmicas, conectadas ao SmartPOS.

Função do modo página usada para definir o tamanho da área de impressão.

Parâmetros
oHorizontal- Define o ponto inicial horizontal.

‍Valor em pontos entre 0 e a sua definição do parâmetro dHorizontal.

oVertical- Define ponto inicial na direção vertical.

‍Valor em pontos entre 0 e a sua definição do parâmetro dVertical.

dHorizontal- Define a dimensão na direção horizontal.

‍Valor em pontos entre 0 e 580.

dVerticalDefine a dimensão da direção vertical.

‍Valor em pontos entre 0 e 6640.

Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

◆ PosicaoImpressaoHorizontal()

int PosicaoImpressaoHorizontal ( int  nLnH)

Define Posição de Impressão Horizontal.

Função do modo página usada para definir a posição de impressão Horizontal.

Parâmetros
nLnH- Define o ponto inicial horizontal.

‍Valor em pontos entre 0 e 580.

Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

◆ PosicaoImpressaoVertical()

int PosicaoImpressaoVertical ( int  nLnH)

Define a Posição da Impressão Vertical.

  • OBS: A impressora do SmartPOS não suporta este método; contudo, este método funciona corretamente nas demais impressoras térmicas, conectadas ao SmartPOS.

Função do modo página usada para definir a posição de impressão Vertical.

Parâmetros
nLnH- Define o ponto inicial Vertical.

‍Valor em pontos entre 0 e 6640.

Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

◆ ImprimeModoPagina()

int ImprimeModoPagina ( )

Imprime Modo Página.

Função que imprime em Modo Página.

Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

◆ LimpaBufferModoPagina()

int LimpaBufferModoPagina ( )

Limpa Buffer em Modo Página.

  • OBS: A impressora do SmartPOS não suporta este método; contudo, este método funciona corretamente nas demais impressoras térmicas, conectadas ao SmartPOS.

Função do modo página usada para Limpar o Buffer.

Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

◆ ImprimeMPeRetornaPadrao()

int ImprimeMPeRetornaPadrao ( )

Imprime Modo Página e Retorna ao Modo Padrão.

  • OBS: A impressora do SmartPOS não suporta este método; contudo, este método funciona corretamente nas demais impressoras térmicas, conectadas ao SmartPOS.

Função do modo página usada para Imprimir.

Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

◆ ModoPadrao()

int ModoPadrao ( )

Retorna ao Modo Padrão.

  • OBS: A impressora do SmartPOS não suporta este método; contudo, este método funciona corretamente nas demais impressoras térmicas, conectadas ao SmartPOS.

Função do modo página usada para Retornar ao Modo Padrão.

Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.

◆ GetVersaoDLL()

char * GetVersaoDLL ( )

Retorna a versão da DLL E1_Impressora.

Retorna
O retorno da função é do tipo caractere.

A função bem-sucedida deve retornar ??.??.??, que representa a versão da DLL em que esta função foi chamada; cada ? é um dígito entre 0 e 9.

◆ ImprimeCupomTEF()

int ImprimeCupomTEF ( const char *  dados)

Realiza a impressão do Cupom TEF
.

Essa função pode ser usada para imprimir o comprovante presente nos arquivos processados
nos TEF que utilizem modelo de troca de arquivos.
A função busca pelos registros 029-XXX.

Parâmetros
dados- Conteúdo a ser impresso
ou
Caminho para arquivo com dados da venda prefixado com "path=", ex:
path=C:/Client/intpos.001
Retorna
O retorno é numérico.
A função bem sucedida deve retornar 0.
Para mais informações a sessão código de erros

◆ ImprimeImagem()

int ImprimeImagem ( const char *  path)

Imprime imagem enviada à impressora diretamente, sem carregá-la na memória.

Parâmetros
path- Parâmetro do tipo caractere que define a imagem que será impressa.

Este parâmetro recebe como argumento o caminho, no sistema de arquivos, onde a imagem está armazenada, incluindo seu nome.

Retorna
O retorno da função é do tipo numérico.
A função bem-sucedida deve retornar 0.

  • OBS: Para impressora com bobina de 80mm a largura máxima da imagem é de 576 pixels, e para impressoras de bobina 55mm a largura máxima da imagem é de 384 pixels.