Cupom Fiscal, como fazer?

Olá pessoal! Estamos mais uma vez aqui, agora para aprender a como fazer o Cupom Fiscal.
Isso gera bastantes dúvidas, pois é uma rotina nova, com métodos novos, mas bem simples de se assimilar.

Primeiramente devemos abrir o Cupom. Em seguida registrar os itens. Por terceiro, devemos totalizar o cupom. Logo depois devemos pagar. E por fim, encerrar o cupom. Então temos:
Abrir Cupom Registrar Item Totalizar Cupom Pagar o Cupom Encerrar o Cupom.

Esses são os cinco passos básicos do Cupom Fiscal. Veremos como fazer cada um deles no artigo de hoje!
Primeiramente devemos definir quais métodos utilizar. Para isso, recomendo que você tenha em mãos o HELP da DLL que declaramos no nosso primeiro artigo, a DarumaFramework.dll. Com o HELP em mãos, conseguiremos saber quais métodos utilizar e seus parâmetros.

Existem vários métodos para cada função, alguns mais práticos e outros mais complexos. Utilizarei aqui os métodos mais completos para que possamos aprender ao pé da letra.

Declarando os métodos e seus parâmetros
Bem pessoal, antes de tudo devemos declarar as funções da DLL para que possamos começar. Utilizarei os seguintes métodos:
       
        iCFAbrir_ECF_Daruma(string pszCPF, string pszNome, string pszEndereco);
       
        iCFVender_ECF_Daruma(string pszCargaTributaria, string pszQuantidade, string pszPrecoUnitario, string pszTipoDescAcresc, string pszValorDescAcresc, string pszCodigoItem, string pszUnidadeMedida, string pszDescricaoItem);
       
        iCFTotalizarCupom_ECF_Daruma(string pszTipoDescAcresc, string pszValorDescAcresc);
       
        iCFEfetuarPagamento_ECF_Daruma(string pszFormaPgto, string pszValor, string pszInfoAdicional);
        iCFEncerrar_ECF_Daruma(string pszCupomAdicional, string pszMensagem);

Tendo os métodos, consigo declara-los no nosso Class1.
Ficamos então com nosso arquivo Class1 assim:

Com o Class1 pronto, vamos ao Form1.
Crie no MenuToolStrip um menu Cupom Fiscal, e dentro sub-menus Abrir, Vender, Totalizar, Pagar, Fechar.

Com o menu criado, vamos colocar as funções para cada menu.
Lembrando novamente que devemos ter o manual da DLL com todos seus comandos e parâmetros.

Menu Abrir
ECF_Daruma.iCFAbrir_ECF_Daruma("11111111111", "Rafael", "VisualStudio");
Parâmetros(CPF, Nome, Endereco)

Menu Vender

ECF_Daruma.iCFVender_ECF_Daruma("F1", "1,000", "01,40", "D%", "0,00", "123456", "UN", "COCA COLA 2LT");
Parâmetros(alíquota, quantidade, preço ,tipodesconto, valor desconto, codproduto, unidade, descrição)

Menu Totalizar
ECF_Daruma.iCFTotalizarCupom_ECF_Daruma("D%", "0,00");
Parâmetros(tipodesconto, valor desconto)

Menu Pagar
ECF_Daruma.iCFEfetuarPagamento_ECF_Daruma("Dinheiro", "5,00", "Volte Sempre");
Parâmetros(MeioPagamento, valorpagamento, mensagempromocional)

Menu Pagar

ECF_Daruma.iCFEncerrar_ECF_Daruma("0", "Aplicativo Teste");
Parâmetros(cupomadicional,mensagempromocional)
Visualmente temos:

Breve esclarecimento:

Por enquanto não estamos tratando retorno dos métodos. Esse será outro artigo que teremos, tratando apenas o retorno dos métodos. Por isso, não será mostrado nenhum erro no momento da execução dos comandos.

Dê F5 no projeto para iniciar o Debug.
Se tudo estiver devidamente configurado, a impressora vai bipar.
Faça esse procedimento, clicando:
Abrir / Vender / Totalizar / Pagar / Fechar.

Sua impressora vai imprimir o cupom.
Agora, faça os testes e mude os parâmetros para ver como fica!

Até a próxima! ;)