private void OnComandaECFCallback(int Operacao, IntPtr respHandle, ref int RetornoECF) { if (onComandaECF.IsAssigned) { Resp resp; if (respHandle == IntPtr.Zero) { resp = null; } else { resp = new Resp(this, respHandle); } var e = new ComandaECFEventArgs((OperacaoECF)Operacao, resp); onComandaECF.Raise(e); RetornoECF = e.RetornoECF ? 1 : 0; } }
private void acBrTEFD_OnComandaECF(object sender, ACBrFramework.TEFD.ComandaECFEventArgs e) { string Mensagem = ""; try { switch (e.Operacao) { case ACBrFramework.TEFD.OperacaoECF.AbreGerencial: { DataModule.ACBrECF.AbreRelatorioGerencial(); } break; case ACBrFramework.TEFD.OperacaoECF.CancelaCupom: { ImpressaoOK = false; try { ECFUtil.CancelaCupom(); CupomCancelado = true; } catch (Exception eError) { Log.write(eError.ToString()); CupomCancelado = false; } } break; case ACBrFramework.TEFD.OperacaoECF.FechaCupom: { if (Sessao.Instance.VendaAtual.IdEcfPreVendaCabecalho > 0) { Mensagem = "PV" + new string('0', 10 - Convert.ToString(Sessao.Instance.VendaAtual.IdEcfPreVendaCabecalho).Length) + Convert.ToString(Sessao.Instance.VendaAtual.IdEcfPreVendaCabecalho); } if (Sessao.Instance.VendaAtual.IdEcfDav > 0) { Mensagem = "DAV" + new string('0', 10 - Convert.ToString(Sessao.Instance.VendaAtual.IdEcfDav).Length) + Convert.ToString(Sessao.Instance.VendaAtual.IdEcfDav); } Mensagem = Caixa.MD5 + Mensagem + "\r" + "\n"; try { if (Sessao.Instance.Configuracao.EcfEmpresa.Uf == "MG") { Mensagem = Mensagem + "MINAS LEGAL:" + Sessao.Instance.Configuracao.EcfEmpresa.Cnpj.Substring(8, 1) + DataModule.ACBrECF.DataHora.ToString("ddMMyyyy"); if (Sessao.Instance.VendaAtual.ValorFinal >= 1) { Mensagem = Mensagem + Sessao.Instance.VendaAtual.ValorFinal.Value.ToString("0.00"); } Mensagem = Mensagem + "\r" + "\n"; } ECFUtil.FechaCupom(Mensagem + Sessao.Instance.Configuracao.MensagemCupom); } catch (Exception eError) { Log.write(eError.ToString()); } } break; case ACBrFramework.TEFD.OperacaoECF.SubTotalizaCupom: SubTotalizaCupom(); //DataModule.ACBrECF.SubtotalizaCupom(0); break; case ACBrFramework.TEFD.OperacaoECF.FechaVinculado: { DataModule.ACBrECF.FechaRelatorio(); PAFUtil.GravarR06("CC"); } break; case ACBrFramework.TEFD.OperacaoECF.PulaLinhas: { DataModule.ACBrECF.PulaLinhas(DataModule.ACBrECF.LinhasEntreCupons); DataModule.ACBrECF.CortaPapel(true); Thread.Sleep(200); } break; } e.RetornoECF = true; } catch (Exception eError) { Log.write(eError.ToString()); e.RetornoECF = false; } }
private void acBrTEFD_OnComandaECF(object sender, ACBrFramework.TEFD.ComandaECFEventArgs e) { string Mensagem = ""; try { switch (e.Operacao) { case ACBrFramework.TEFD.OperacaoECF.AbreGerencial: { FDataModule.ACBrECF.AbreRelatorioGerencial(); } break; case ACBrFramework.TEFD.OperacaoECF.CancelaCupom: { ImpressaoOK = false; try { UECF.CancelaCupom(); CupomCancelado = true; } catch (Exception eError) { Log.write(eError.ToString()); CupomCancelado = false; } } break; case ACBrFramework.TEFD.OperacaoECF.FechaCupom: { if (FCaixa.VendaCabecalho.IdPreVenda > 0) { Mensagem = "PV" + new string('0', 10 - Convert.ToString(FCaixa.VendaCabecalho.IdPreVenda).Length) + Convert.ToString(FCaixa.VendaCabecalho.IdPreVenda); } if (FCaixa.VendaCabecalho.IdDAV > 0) { DavCabecalhoVO DavCabecalho = new DAVController().ConsultaDAVId(FCaixa.VendaCabecalho.IdDAV); Mensagem = Mensagem + "DAV" + DavCabecalho.NumeroDav; } Mensagem = FCaixa.MD5 + Mensagem + "\r" + "\n"; try { EmpresaVO Empresa = new EmpresaController().PegaEmpresa(FCaixa.Configuracao.IdEmpresa); if (Empresa.Uf == "MG") { Mensagem = Mensagem + "MINAS LEGAL:" + Empresa.Cnpj.Substring(8, 1) + FDataModule.ACBrECF.DataHora.ToString("ddMMyyyy"); if (FCaixa.VendaCabecalho.ValorFinal >= 1) { Mensagem = Mensagem + FCaixa.VendaCabecalho.ValorFinal.Value.ToString("0.00"); } Mensagem = Mensagem + "\r" + "\n"; } UECF.FechaCupom(Mensagem + FCaixa.Configuracao.MensagemCupom); } catch (Exception eError) { Log.write(eError.ToString()); } } break; case ACBrFramework.TEFD.OperacaoECF.SubTotalizaCupom: SubTotalizaCupom(); //FDataModule.ACBrECF.SubtotalizaCupom(0); break; case ACBrFramework.TEFD.OperacaoECF.FechaVinculado: { FDataModule.ACBrECF.FechaRelatorio(); UPAF.GravaR06("CC"); } break; case ACBrFramework.TEFD.OperacaoECF.PulaLinhas: { FDataModule.ACBrECF.PulaLinhas(FDataModule.ACBrECF.LinhasEntreCupons); FDataModule.ACBrECF.CortaPapel(true); Thread.Sleep(200); } break; } e.RetornoECF = true; } catch (Exception eError) { Log.write(eError.ToString()); e.RetornoECF = false; } }
private void tef_OnComandaECF(object sender, ComandaECFEventArgs e) { try { WriteResp(string.Format("ComandaECF: {0}", e.Operacao)); switch (e.Operacao) { case OperacaoECF.SubTotalizaCupom: acBrECF1.SubtotalizaCupom(0, @"Projeto ACBrFramework|http://acbrframework.sf.net"); break; case OperacaoECF.AbreGerencial: acBrECF1.AbreRelatorioGerencial(0); break; case OperacaoECF.PulaLinhas: acBrECF1.PulaLinhas(acBrECF1.LinhasEntreCupons); acBrECF1.CortaPapel(true); Thread.Sleep(200); break; case OperacaoECF.ImprimePagamentos: while(pgtoList.Items.Count > 0) { decimal valor = 0; string[] pgto = pgtoList.Items[0].ToString().Split('|'); if (string.IsNullOrEmpty(pgto[0]) || string.IsNullOrEmpty(pgto[1])) { pgtoList.Items.RemoveAt(0); continue; } if(!decimal.TryParse(pgto[1], out valor)) { pgtoList.Items.RemoveAt(0); continue; } if (acBrECF1.Estado == EstadoECF.NaoFiscal) acBrECF1.EfetuaPagamentoNaoFiscal(pgto[0], valor); else acBrECF1.EfetuaPagamento(pgto[0], valor); pgtoList.Items.RemoveAt(0); } break; case OperacaoECF.FechaVinculado: case OperacaoECF.FechaGerencial: acBrECF1.FechaRelatorio(); break; case OperacaoECF.CancelaCupom: if (acBrECF1.Estado == EstadoECF.NaoFiscal) acBrECF1.CancelaNaoFiscal(); else acBrECF1.CancelaCupom(); break; case OperacaoECF.FechaCupom: if (acBrECF1.Estado == EstadoECF.NaoFiscal) acBrECF1.FechaNaoFiscal(@"Projeto ACBrFramework|http://acbrframework.sf.net"); else acBrECF1.FechaCupom(@"Projeto ACBrFramework|http://acbrframework.sf.net"); break; } e.RetornoECF = true; } catch (Exception) { e.RetornoECF = false; } }