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(); } } }
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(); } } }