Esempio n. 1
0
        public static string Excluir(TRegistro_ImpostosNF val, BancoDados.TObjetoBanco banco)
        {
            bool           st_transacao = false;
            TCD_ImpostosNF qtb_imp      = new TCD_ImpostosNF();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_imp.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_imp.Banco_Dados = banco;
                }
                qtb_imp.Excluir(val);
                if (st_transacao)
                {
                    qtb_imp.Banco_Dados.Commit_Tran();
                }
                return("OK");
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_imp.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro excluir impostos: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_imp.deletarBanco_Dados();
                }
            }
        }
Esempio n. 2
0
        public static void ReprocessarImpostos(TRegistro_LanFaturamento rNf,
                                               CamadaDados.Faturamento.CTRC.TRegistro_ConhecimentoFrete rCtrc,
                                               CamadaDados.Faturamento.PDV.TRegistro_NFCe rEcf,
                                               decimal Vl_TotalNota,
                                               BancoDados.TObjetoBanco banco)
        {
            bool           st_transacao = false;
            TCD_ImpostosNF qtb_imp      = new TCD_ImpostosNF();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_imp.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_imp.Banco_Dados = banco;
                }
                TList_ImpostosNF lImp = new TList_ImpostosNF();
                if (rCtrc != null)
                {
                    //Verificar se o ctrc possui imposto processado
                    object objfiscal = new TCD_ImpostosNF(banco).BuscarEscalar(
                        new TpBusca[]
                    {
                        new TpBusca()
                        {
                            vNM_Campo = "a.cd_empresa",
                            vOperador = "=",
                            vVL_Busca = "'" + rCtrc.Cd_empresa.Trim() + "'"
                        },
                        new TpBusca()
                        {
                            vNM_Campo = "a.nr_lanctoCTR",
                            vOperador = "=",
                            vVL_Busca = rCtrc.Nr_lanctoCTRC.Value.ToString()
                        },
                        new TpBusca()
                        {
                            vNM_Campo = "a.id_lotefis",
                            vOperador = "is",
                            vVL_Busca = "not null"
                        }
                    }, "1");
                    if (objfiscal != null)
                    {
                        throw new Exception("Não é permitido reprocessar impostos de conhecimento de frete com registro fiscal processado.");
                    }
                    //Buscar impostos CTRC gravados para excluir
                    lImp = Buscar(string.Empty,
                                  rCtrc.Cd_empresa,
                                  string.Empty,
                                  string.Empty,
                                  rCtrc.Nr_lanctoCTRC.Value.ToString(),
                                  string.Empty,
                                  string.Empty,
                                  string.Empty,
                                  string.Empty,
                                  string.Empty,
                                  string.Empty,
                                  false,
                                  string.Empty,
                                  qtb_imp.Banco_Dados);
                }
                //Excluir impostos
                lImp.ForEach(p => Excluir(p, qtb_imp.Banco_Dados));
                //Gravar novos impostos
                if (rCtrc != null)
                {
                    rCtrc.lImpostos.ForEach(p =>
                    {
                        p.Cd_empresa   = rCtrc.Cd_empresa;
                        p.Nr_lanctoctr = rCtrc.Nr_lanctoCTRC;
                        Gravar(p, qtb_imp.Banco_Dados);
                    });
                }
                else if (rNf != null)
                {
                    rNf.ItensNota.ForEach(p => TCN_LanFaturamento_Item.AlterarFaturamentoItem(p, qtb_imp.Banco_Dados));
                }
                else if (rEcf != null)
                {
                    rEcf.lItem.ForEach(p => new CamadaDados.Faturamento.PDV.TCD_NFCe_Item(qtb_imp.Banco_Dados).Gravar(p));
                }
                if (st_transacao)
                {
                    qtb_imp.Banco_Dados.Commit_Tran();
                }
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_imp.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro reprocessar impostos: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_imp.deletarBanco_Dados();
                }
            }
        }
Esempio n. 3
0
        public static string Gravar(TRegistro_ImpostosNF val, BancoDados.TObjetoBanco banco)
        {
            bool           st_transacao = false;
            TCD_ImpostosNF qtb_imp      = new TCD_ImpostosNF();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_imp.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_imp.Banco_Dados = banco;
                }
                string retorno = qtb_imp.Gravar(val);
                //Gravar Contabilidade Imposto Calculado
                //if (val.Vl_impostocalc > decimal.Zero && val.Nr_lanctofiscal != null)
                //{
                //    List<CamadaDados.Contabil.TRegistro_ProcImpostos> lProcImpCalc =
                //    CamadaNegocio.Contabil.TCN_Lan_ProcContabil.BuscarProc_Impostos(val.Cd_empresa,
                //                                                                    val.Nr_lanctofiscal.Value.ToString(),
                //                                                                    string.Empty,
                //                                                                    string.Empty,
                //                                                                    val.Cd_impostostr,
                //                                                                    string.Empty,
                //                                                                    string.Empty,
                //                                                                    string.Empty,
                //                                                                    string.Empty,
                //                                                                    string.Empty,
                //                                                                    string.Empty,
                //                                                                    string.Empty,
                //                                                                    decimal.Zero,
                //                                                                    decimal.Zero,
                //                                                                    false,
                //                                                                    qtb_imp.Banco_Dados);
                //    if (lProcImpCalc.Count > 0)
                //        if (lProcImpCalc.Exists(p => p.Cd_contactb_deb.HasValue && p.Cd_contactb_cred.HasValue))
                //            CamadaNegocio.Contabil.TCN_LanContabil.ProcessaCTB_Impostos(lProcImpCalc.FindAll(p => p.Cd_contactb_cred.HasValue && p.Cd_contactb_deb.HasValue), qtb_imp.Banco_Dados);
                //}
                ////Gravar Contabilidade Imposto Retido
                //if (val.Vl_impostoretido > decimal.Zero && val.Nr_lanctofiscal != null)
                //{
                //    List<CamadaDados.Contabil.TRegistro_ProcImpostos> lProcImpRet =
                //        CamadaNegocio.Contabil.TCN_Lan_ProcContabil.BuscarProc_Impostos(val.Cd_empresa,
                //                                                                        val.Nr_lanctofiscal.Value.ToString(),
                //                                                                        string.Empty,
                //                                                                        string.Empty,
                //                                                                        val.Cd_impostostr,
                //                                                                        string.Empty,
                //                                                                        string.Empty,
                //                                                                        string.Empty,
                //                                                                        string.Empty,
                //                                                                        string.Empty,
                //                                                                        string.Empty,
                //                                                                        string.Empty,
                //                                                                        decimal.Zero,
                //                                                                        decimal.Zero,
                //                                                                        false,
                //                                                                        qtb_imp.Banco_Dados);
                //    if (lProcImpRet.Count > 0)
                //        if (lProcImpRet.Exists(p => p.Cd_contactb_deb.HasValue && p.Cd_contactb_cred.HasValue))
                //            CamadaNegocio.Contabil.TCN_LanContabil.ProcessaCTB_Impostos(lProcImpRet.FindAll(p => p.Cd_contactb_cred.HasValue && p.Cd_contactb_deb.HasValue), qtb_imp.Banco_Dados);
                //}
                if (st_transacao)
                {
                    qtb_imp.Banco_Dados.Commit_Tran();
                }
                return(retorno);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_imp.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro gravar impostos: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_imp.deletarBanco_Dados();
                }
            }
        }