コード例 #1
0
        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;
            }
        }
コード例 #2
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;
            }
        }
コード例 #3
0
        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;
            }
        }
コード例 #4
0
ファイル: MainForm.cs プロジェクト: mjacezar/ACBrFramework
		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;
            }
		}
コード例 #5
0
ファイル: ACBrTEFD.cs プロジェクト: mjacezar/ACBrFramework
		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;
			}
		}