Beispiel #1
0
        public string Grava_Transferencia(TRegistro_Lan_Transfere_Caixa val)
        {
            Hashtable hs = new Hashtable(5);

            hs.Add("@P_ID_TRANSF", val.ID_TRANSF);
            hs.Add("@P_CD_CONTA_ENT", val.CD_ContaGer_Entrada);
            hs.Add("@P_CD_LANCTOCAIXA_ENT", val.CD_LANCTOCAIXA_ENT);
            hs.Add("@P_CD_CONTA_SAI", val.CD_ContaGer_Saida);
            hs.Add("@P_CD_LANCTOCAIXA_SAI", val.CD_LANCTOCAIXA_SAI);

            return(executarProc("IA_FIN_TRANSFERE_CAIXA", hs));
        }
Beispiel #2
0
        public TList_Lan_Transfere_Caixa Select(TpBusca[] vBusca, Int32 vTop, string vNM_Campo)
        {
            bool podeFecharBco = false;
            TList_Lan_Transfere_Caixa lista = new TList_Lan_Transfere_Caixa();

            if (Banco_Dados == null)
            {
                podeFecharBco = CriarBanco_Dados(true);
            }
            SqlDataReader reader = ExecutarBusca(SqlCodeBusca(vBusca, vTop, vNM_Campo));

            try
            {
                while (reader.Read())
                {
                    TRegistro_Lan_Transfere_Caixa reg = new TRegistro_Lan_Transfere_Caixa();
                    if (!(reader.IsDBNull(reader.GetOrdinal("ID_Transf"))))
                    {
                        reg.ID_TRANSF = reader.GetDecimal(reader.GetOrdinal("ID_Transf"));
                    }
                    if (!(reader.IsDBNull(reader.GetOrdinal("CD_Conta_Ent"))))
                    {
                        reg.CD_ContaGer_Entrada = reader.GetString(reader.GetOrdinal("CD_Conta_Ent"));
                    }
                    if (!(reader.IsDBNull(reader.GetOrdinal("CD_Lanctocaixa_Ent"))))
                    {
                        reg.CD_LANCTOCAIXA_ENT = reader.GetDecimal(reader.GetOrdinal("CD_Lanctocaixa_Ent"));
                    }
                    if (!(reader.IsDBNull(reader.GetOrdinal("CD_Conta_Sai"))))
                    {
                        reg.CD_ContaGer_Saida = reader.GetString(reader.GetOrdinal("CD_Conta_Sai"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("CD_Lanctocaixa_Sai")))
                    {
                        reg.CD_LANCTOCAIXA_SAI = reader.GetDecimal(reader.GetOrdinal("CD_Lanctocaixa_Sai"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("Cd_Moeda_ent")))
                    {
                        reg.Cd_moeda_entrada = reader.GetString(reader.GetOrdinal("CD_Moeda_Ent"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("DS_Moeda_Ent")))
                    {
                        reg.Ds_moeda_entrada = reader.GetString(reader.GetOrdinal("DS_Moeda_Ent"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("Sigla_Moeda_Ent")))
                    {
                        reg.Sigla_moeda_entrada = reader.GetString(reader.GetOrdinal("Sigla_Moeda_ent"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("CD_Moeda_Sai")))
                    {
                        reg.Cd_moeda_saida = reader.GetString(reader.GetOrdinal("CD_Moeda_Sai"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("DS_Moeda_Sai")))
                    {
                        reg.Ds_moeda_saida = reader.GetString(reader.GetOrdinal("DS_Moeda_Sai"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("Sigla_Moeda_Sai")))
                    {
                        reg.Sigla_moeda_saida = reader.GetString(reader.GetOrdinal("Sigla_moeda_sai"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("conta_ent")))
                    {
                        reg.DS_ContaGer_Entrada = reader.GetString(reader.GetOrdinal("conta_ent"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("conta_sai")))
                    {
                        reg.DS_ContaGer_Saida = reader.GetString(reader.GetOrdinal("conta_sai"));
                    }

                    lista.Add(reg);
                }
            }
            finally
            {
                reader.Close();
                reader.Dispose();
                if (podeFecharBco)
                {
                    deletarBanco_Dados();
                }
            }
            return(lista);
        }
Beispiel #3
0
        public static string TransferirContaCartao(TList_FaturaCartao lFatura, string Cd_empresa, BancoDados.TObjetoBanco banco)
        {
            bool             st_transacao = false;
            TCD_FaturaCartao qtb_fatura   = new TCD_FaturaCartao();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_fatura.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_fatura.Banco_Dados = banco;
                }
                //Buscar conta gerencial
                CamadaDados.Faturamento.Cadastros.TList_CFGCupomFiscal lCfg =
                    CamadaNegocio.Faturamento.Cadastros.TCN_CFGCupomFiscal.Buscar(Cd_empresa, qtb_fatura.Banco_Dados);
                if (lCfg.Count < 1)
                {
                    throw new Exception("Não existe configuração ECF para a empresa: " + Cd_empresa.Trim());
                }
                if (string.IsNullOrEmpty(lCfg[0].Cd_contacartao))
                {
                    throw new Exception("Não existe conta gerencial cartão para processar fechamento do portador cartão!");
                }

                lFatura.ForEach(v =>
                {
                    //Buscar lancamento de caixa da fatura
                    new CamadaDados.Financeiro.Caixa.TCD_LanCaixa(qtb_fatura.Banco_Dados).Select(
                        new Utils.TpBusca[]
                    {
                        new Utils.TpBusca()
                        {
                            vNM_Campo = string.Empty,
                            vOperador = "exists",
                            vVL_Busca = "(select 1 from tb_fin_faturacartao_x_caixa x " +
                                        "where x.cd_contager = a.cd_contager " +
                                        "and x.cd_lanctocaixa = a.cd_lanctocaixa " +
                                        "and x.cd_contager <> '" + lCfg[0].Cd_contacartao.Trim() + "' " +
                                        "and x.id_fatura = " + v.Id_fatura.Value.ToString() + ")"
                        }
                    }, 0, string.Empty).ForEach(c =>
                    {
                        //Gravar transferencia de caixa
                        CamadaDados.Financeiro.Caixa.TRegistro_Lan_Transfere_Caixa rTransf = new CamadaDados.Financeiro.Caixa.TRegistro_Lan_Transfere_Caixa();
                        rTransf.CD_ContaGer_Entrada = c.Vl_RECEBER > decimal.Zero ? lCfg[0].Cd_contacartao : lCfg[0].Cd_contaoperacional;
                        rTransf.CD_ContaGer_Saida   = c.Vl_RECEBER > decimal.Zero ? lCfg[0].Cd_contaoperacional : lCfg[0].Cd_contacartao;
                        rTransf.CD_Empresa          = lCfg[0].Cd_empresa;
                        rTransf.CD_Historico        = lCfg[0].Cd_historico_transf;
                        rTransf.Complemento         = "TRANSFERENCIA PARA CONTA CARTÃO";
                        rTransf.Valor_Transferencia = c.Vl_RECEBER > decimal.Zero ? c.Vl_RECEBER : c.Vl_PAGAR;
                        rTransf.DT_Lancto           = CamadaDados.UtilData.Data_Servidor();
                        rTransf.NR_Docto            = "TRANSFERENCIA PARA CONTA CARTÃO";
                        CamadaNegocio.Financeiro.Caixa.TCN_Lan_Transfere_Caixa.Transfere_Caixa(rTransf, qtb_fatura.Banco_Dados);
                        //Gravar fatura cartao x novo lancamento caixa
                        CamadaNegocio.Financeiro.Cartao.TCN_FaturaCartao_X_Caixa.Gravar(
                            new CamadaDados.Financeiro.Cartao.TRegistro_FaturaCartao_X_Caixa()
                        {
                            Cd_contager    = c.Vl_RECEBER > decimal.Zero ? lCfg[0].Cd_contaoperacional : lCfg[0].Cd_contacartao,
                            Cd_lanctocaixa = rTransf.CD_LANCTOCAIXA_SAI,
                            Id_fatura      = v.Id_fatura
                        }, qtb_fatura.Banco_Dados);

                        CamadaNegocio.Financeiro.Cartao.TCN_FaturaCartao_X_Caixa.Gravar(
                            new CamadaDados.Financeiro.Cartao.TRegistro_FaturaCartao_X_Caixa()
                        {
                            Cd_contager    = c.Vl_RECEBER > decimal.Zero ? lCfg[0].Cd_contacartao : lCfg[0].Cd_contaoperacional,
                            Cd_lanctocaixa = rTransf.CD_LANCTOCAIXA_ENT,
                            Id_fatura      = v.Id_fatura
                        }, qtb_fatura.Banco_Dados);
                    });
                });
                if (st_transacao)
                {
                    qtb_fatura.Banco_Dados.Commit_Tran();
                }
                return("OK");
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_fatura.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro gravar fatura: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_fatura.deletarBanco_Dados();
                }
            }
        }