Emitindo cupom adicional - Impressora Fiscal

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (0)  (0)

Veja neste artigo como armazenar informações de um Cupom Fiscal impresso ficou mais fácil ainda, confira!

Olá pessoal, vamos a mais um artigo.

O Cupom Adicional é um recurso no qual conseguimos a impressão de algumas informações extras após emitir um Cupom Fiscal ou Bilhete de Passagem.

As Impressoras Fiscais tem a capacidade de armazenar informações sobre o último Cupom Fiscal em sua memória.
Existem dois tipos de Cupons Adicionais que a impressora é capaz de gerar, o simplificado e o detalhado.

Cupom Adicional Simplificado
Informações Impressas:
Número do Cupom Fiscal (CCF).
COO do Cupom Fiscal.

Cupom Adicional Detalhado
Informações Impressas:

Número do Cupom Fiscal (CCF).
COO do Cupom Fiscal.
Valor Total da Operação.
Totalizador das alíquotas utilizadas no Cupom.

Para muitos, estes comprovantes são úteis e resolvem plenamente sua necessidade de armazenas estas informações, porém, colhemos o feedback que seria interessante resgatar algumas informações extras, tanto no Cupom Fiscal quanto no bilhete de passagem. Nossa equipe atendeu o feedback e implementou na DarumaFramework.dll o Cupom Adicional que quem determina o que será impresso é você, parceiro desenvolvedor!

As informações que deverão sair ou não no Cupom Adicional ficam armazenadas em uma chave no DarumaFramework.xml, e para configurá-lo utilizaremos a função: regCFCupomAdicionalDllConfig_ECF_Daruma.
Este método permite configurar a chave no DarumaFramework.xml indicando os dados que serão impressos no cupom adicional após a emissão de cada Cupom Fiscal ou Bilhete de Passagem.

Chave no XML:

Parâmetro
String com os 21 valores com a configuração dos dados que serão impressos no Cupom Adicional.
Estes dados dos parâmetros são 21 dígitos seguindo a opção desejada conforme a tabela.
Veja abaixo a tabela:



Para a emissão do Cupom Adicional podemos utilizar duas funções na DarumaFramework.dll uma delas é o próprio método para o encerramento do Cupom Fiscal, a iCFEncerrar_ECF_Daruma.

Definição:
Este método finaliza o Cupom Fiscal, com a opção de emitir Cupom Adicional ou não e mensagem promocional.

Parâmetros:
pszCupomAdicional - Indicação através de índice se o Cupom adicional será impresso ou não.

Índices
0 - Não Imprime Cupom Adicional
1 - Imprime Cupom Adicional Simplificado (CCF e COO).
2 - Imprime Cupom Adicional Detalhado(CCF, COO, Valor do CF e Totalizadores de Alíquotas no CF).
3 - Imprime Cupom Adicional DLL(Imprime os campos conforme a configuração do DarumaFramework.xml).

pszMensagem - Mensagem Promocional em até 8 linhas.
O texto informado pode ser formatado, para isso você pode utilizar as tags de formatação D-HTML.
Obs.: O método deve ser executado caso o Cupom esteja realmente em fase de finalização, assim o Cupom será finalizado para que o Cupom Adicional possa ser impresso ou não.

C (Sharp)
private void encerramentoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iCFAbrirPadrao_ECF_Daruma();
            DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iCFVenderResumido_ECF_Daruma("F1", "4,00", "928203193", "Café");
            DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iCFVenderResumido_ECF_Daruma("F1", "2,50", "000232315", "Leite");
            DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iCFTotalizarCupomPadrao_ECF_Daruma();
            DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iCFEfetuarPagamentoPadrao_ECF_Daruma();
            DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iCFEncerrar_ECF_Daruma("1", "Obrigado\nVolte Sempre!");           
        }
No exemplo acima é emitido o Cupom Fiscal e finalizado com a função iCFEncerrar_ECF_Daruma com a Impressão do Cupom Adicional Simplificado.

Delphi
function iCFEncerrar_ECF_Daruma(pszCupomAdicional:string;pszMensagem:string):Integer; StdCall; External 'DarumaFramework.dll';
 Int_Retorno := iCFEncerrar_ECF_Daruma('1','Obrigado e volte sempre!!');
VB6
Public Declare Function iCFEncerrar_ECF_Daruma Lib "DarumaFrameWork.dll" (ByVal pszCupomAdicional As String, ByVal pszMensagem As String) As Integer

Private Sub TB_Numero_Item_Click()
        
        iRetorno = iCFEncerrar_ECF_Daruma(“1”, ” Obrigado e volte sempre!!”)
End Sub
A segunda maneira é após a finalização do Cupom Fiscal chamarmos o método: iCFEmitirCupomAdicional_ECF_Daruma Definição: Emite o Cupom Adicional referente ao último Cupom Fiscal emitido conforme as configurações do DarumaFramework.xml.

C (Sharp)

private void confCupomAdToolStripMenuItem_Click(object sender, EventArgs e)
        {

            DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iCFAbrirPadrao_ECF_Daruma();
            DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iCFVenderResumido_ECF_Daruma("F1", "4,00", "928203193", "Café");
            DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iCFVenderResumido_ECF_Daruma("F1", "2,50", "000232315", "Leite");
            DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iCFTotalizarCupomPadrao_ECF_Daruma();
            DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iCFEfetuarPagamentoPadrao_ECF_Daruma();
            DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iCFEncerrarPadrao_ECF_Daruma();

            DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.regCFCupomAdicionalDllConfig_ECF_Daruma("111110111000000002000");
            DarumaFramework_Declaracoes_CSharp.iRetorno = DarumaFramework_Declaracoes_CSharp.iCFEmitirCupomAdicional_ECF_Daruma();
        }
Veja como foi Impresso




Delphi
function iCFEmitirCupomAdicional_ECF_Daruma(): Integer; StdCall; External 'DarumaFramework.dll';

Int_Retorno:= iCFEmitirCupomAdicional_ECF_Daruma();
VB6

Public Declare Function iCFEmitirCupomAdicional_ECF_Daruma Lib "DarumaFrameWork.dll" () As Integer

Private Sub mnuiCFEmitirCupomAdicional_ECF_Daruma_Click()
iRetorno = iCFEmitirCupomAdicional_ECF_Daruma()
End Sub


Um abraço e até a próxima!
 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?