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