예제 #1
0
        public static void ProcessarLivroFiscal(TList_LivroFiscal val, BancoDados.TObjetoBanco banco)
        {
            bool            st_transacao = false;
            TCD_LivroFiscal qtb_livro    = new TCD_LivroFiscal();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_livro.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_livro.Banco_Dados = banco;
                }
                val.ForEach(p => Gravar(p, qtb_livro.Banco_Dados));
                if (st_transacao)
                {
                    qtb_livro.Banco_Dados.Commit_Tran();
                }
            }
            catch (Exception ex)
            {
                if (banco == null)
                {
                    qtb_livro.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro Processar Livro Fiscal: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_livro.deletarBanco_Dados();
                }
            }
        }
예제 #2
0
        public static void ReprocessarLivroFiscal(string Cd_empresa,
                                                  decimal Nr_lanctofiscal,
                                                  string Tp_registro,
                                                  TList_LivroFiscal val,
                                                  BancoDados.TObjetoBanco banco)
        {
            bool            st_transacao = false;
            TCD_LivroFiscal qtb_livro    = new TCD_LivroFiscal();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_livro.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_livro.Banco_Dados = banco;
                }
                //Excluir livro fiscal do conhecimento frete
                if (Tp_registro.Trim().ToUpper().Equals("CTRC"))
                {
                    CamadaDados.Faturamento.CTRC.TList_CTRLivroFiscal lLivro =
                        CamadaNegocio.Faturamento.CTRC.TCN_CTRLivroFiscal.Buscar(Cd_empresa,
                                                                                 Nr_lanctofiscal.ToString(),
                                                                                 string.Empty,
                                                                                 0,
                                                                                 string.Empty,
                                                                                 qtb_livro.Banco_Dados);
                    lLivro.ForEach(p =>
                    {
                        //Excluir Ctr Livro
                        CamadaNegocio.Faturamento.CTRC.TCN_CTRLivroFiscal.Excluir(p, qtb_livro.Banco_Dados);
                        //Excluir Livro Fiscal
                        qtb_livro.Excluir(new TRegistro_LivroFiscal()
                        {
                            Id_livro = p.Id_livro
                        });
                    });
                }//Excluir livro fiscal da nota fiscal
                else if (Tp_registro.Trim().ToUpper().Equals("NFF"))
                {
                    CamadaDados.Faturamento.NotaFiscal.TList_FATLivroFiscal lLivro =
                        CamadaNegocio.Faturamento.NotaFiscal.TCN_FATLivroFiscal.Buscar(Cd_empresa,
                                                                                       Nr_lanctofiscal.ToString(),
                                                                                       string.Empty,
                                                                                       qtb_livro.Banco_Dados);
                    lLivro.ForEach(p =>
                    {
                        //Excluir FAT Livro
                        CamadaNegocio.Faturamento.NotaFiscal.TCN_FATLivroFiscal.Excluir(p, qtb_livro.Banco_Dados);
                        //Excluir Livro Fiscal
                        qtb_livro.Excluir(new TRegistro_LivroFiscal()
                        {
                            Id_livro = p.Id_livro
                        });
                    });
                }
                else if (Tp_registro.Trim().ToUpper().Equals("ECF"))
                {
                    CamadaDados.Faturamento.PDV.TList_LivroFiscal lLivro =
                        CamadaNegocio.Faturamento.PDV.TCN_LivroFiscal.Buscar(string.Empty,
                                                                             Nr_lanctofiscal.ToString(),
                                                                             Cd_empresa,
                                                                             qtb_livro.Banco_Dados);
                    lLivro.ForEach(p =>
                    {
                        //Excluir ECF Livro
                        CamadaNegocio.Faturamento.PDV.TCN_LivroFiscal.Excluir(p, qtb_livro.Banco_Dados);
                        //Excluir livro fiscal
                        qtb_livro.Excluir(new TRegistro_LivroFiscal()
                        {
                            Id_livro = p.Id_livro
                        });
                    });
                }
                //Processar Livro Fiscal
                ProcessarLivroFiscal(val, qtb_livro.Banco_Dados);
                val.ForEach(p =>
                {
                    if (Tp_registro.Trim().ToUpper().Equals("CTRC"))
                    {
                        CamadaNegocio.Faturamento.CTRC.TCN_CTRLivroFiscal.Gravar(
                            new CamadaDados.Faturamento.CTRC.TRegistro_CTRLivroFiscal()
                        {
                            Cd_empresa   = Cd_empresa,
                            Nr_lanctoctr = Nr_lanctofiscal,
                            Id_livro     = p.Id_livro
                        }, qtb_livro.Banco_Dados);
                    }
                    else if (Tp_registro.Trim().ToUpper().Equals("NFF"))
                    {
                        CamadaNegocio.Faturamento.NotaFiscal.TCN_FATLivroFiscal.Gravar(
                            new CamadaDados.Faturamento.NotaFiscal.TRegistro_FATLivroFiscal()
                        {
                            Cd_empresa      = Cd_empresa,
                            Nr_lanctofiscal = Nr_lanctofiscal,
                            Id_livro        = p.Id_livro
                        }, qtb_livro.Banco_Dados);
                    }
                    else if (Tp_registro.Trim().ToUpper().Equals("ECF"))
                    {
                        CamadaNegocio.Faturamento.PDV.TCN_LivroFiscal.Gravar(
                            new CamadaDados.Faturamento.PDV.TRegistro_LivroFiscal()
                        {
                            Cd_empresa = Cd_empresa,
                            Id_cupom   = Nr_lanctofiscal,
                            Id_livro   = p.Id_livro
                        }, qtb_livro.Banco_Dados);
                    }
                });
                if (st_transacao)
                {
                    qtb_livro.Banco_Dados.Commit_Tran();
                }
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_livro.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro reprocessar livro fiscal: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_livro.deletarBanco_Dados();
                }
            }
        }