public void CupomFiscalItemCancelamento() { using (ICupomFiscal cf = new CupomFiscal()) { cf.AbreCupom("", "", "", false); cf.VendeItem("001", "teste", "FF", 12.00M, 10.00M, 0.0M, "UN", "%", "D", -1); cf.VendeItem("002", "teste1", "FF", 13.00M, 10.00M, 0.0M, "UN", "%", "D", -1); cf.VendeItem("003", "teste2", "FF", 14.00M, 10.00M, 0.0M, "UN", "%", "D", -1); cf.CancelaItem(1); cf.CancelaItem(2); cf.SubTotalizaCupom(0.0M, "teste"); cf.CancelaCupom(); cf.EfetuaPagamento("01", 7.00M, "", false); cf.EfetuaPagamento("01", 2.00M, "", false); cf.FechaCupom("Obrigado. Volte sempre!"); WriteLine("Cupom impresso com sucesso!"); } }
/// <summary> /// Cancela item na impressora /// </summary> /// <param name="i">Número do item a ser cancelado</param> public void CancelaItem(IItem i, int indice) { if (!fromBuffer) { buffer.Add(new BufferItem { CancelaItem = new CancelaItemArgs { Item = i, Indice = indice } }); } if (fromBuffer || Settings.ECF.Concomitante) { if (!Unimake.Convert.ToBoolean(Settings.Setting.EmissaoConsumidorFinalNFCe)) { using (ICupomFiscal cf = new CupomFiscal(Settings.ECF.ECFAtual.ModeloACBR, Settings.ECF.ECFAtual.Porta)) { cf.CancelaItem(indice); ((Model.Faturamento.Lancamento.Movimento.Item.VendaCF.IItem)i).Status = Enuns.Faturamento.Lancamento.Movimento.Item.Status.Cancelado; i.Cancelar((string)Settings.Setting.MotivoCancelamentoCupomFiscal); } } } string line = String.Format("{0} {1} {2}", i.Ordem.ToString().PadLeft(3, '0'), i.ItemMovimentado.EGUID, i.ItemMovimentado.Descricao + " - Cancelado"); WriteLine(line); string subtotal = (i.Quantidade * i.ValorUnitarioBruto).ToString("N2"); line = String.Format(" {0:N2}{1} X {2:N2} F1", i.Quantidade, "UN", i.ValorUnitarioBruto); line = line.PadRight(MaxLengthLine - subtotal.Length, '_') + subtotal; WriteLine(line); }