Ejemplo n.º 1
0
        public Boolean GuardarDB(cxc_cobro_x_EstadoCobro_Info InfoEstadoCobro)
        {
            try
            {
                using (EntitiesCuentas_x_Cobrar context = new EntitiesCuentas_x_Cobrar())
                {
                    //no se debe insertar el mismo tipo de estado para el mismo cobro
                    var Q = from tbCbteCble in context.cxc_cobro_x_EstadoCobro
                            where tbCbteCble.IdEmpresa == InfoEstadoCobro.IdEmpresa &&
                            tbCbteCble.IdSucursal == InfoEstadoCobro.IdSucursal &&
                            tbCbteCble.IdCobro == InfoEstadoCobro.IdCobro &&
                            tbCbteCble.IdCobro_tipo == InfoEstadoCobro.IdCobro_tipo
                            select tbCbteCble;

                    if (Q.ToList().Count == 0)
                    {
                        cxc_cobro_x_EstadoCobro addressG = new cxc_cobro_x_EstadoCobro();
                        addressG.IdEmpresa       = InfoEstadoCobro.IdEmpresa;
                        addressG.Secuencia       = GetSecuencia(InfoEstadoCobro.IdEmpresa, InfoEstadoCobro.IdSucursal, InfoEstadoCobro.IdCobro);
                        addressG.IdSucursal      = InfoEstadoCobro.IdSucursal;
                        addressG.IdCobro         = InfoEstadoCobro.IdCobro;
                        addressG.IdCobro_tipo    = InfoEstadoCobro.IdCobro_tipo;
                        addressG.IdEstadoCobro   = InfoEstadoCobro.IdEstadoCobro;
                        addressG.Fecha           = InfoEstadoCobro.Fecha;
                        addressG.nt_IdBodega     = InfoEstadoCobro.nt_IdBodega;
                        addressG.nt_IdNota       = InfoEstadoCobro.nt_IdNota;
                        addressG.nt_IdSucursal   = InfoEstadoCobro.nt_IdSucursal;
                        addressG.IdBanco         = InfoEstadoCobro.IdBanco;
                        addressG.observacion     = "";
                        addressG.IdCbte_vta_nota = InfoEstadoCobro.IdCbte_vta_nota;
                        context.cxc_cobro_x_EstadoCobro.Add(addressG);
                        context.SaveChanges();
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                string arreglo = ToString();
                tb_sis_Log_Error_Vzen_Data oDataLog      = new tb_sis_Log_Error_Vzen_Data();
                tb_sis_Log_Error_Vzen_Info Log_Error_sis = new tb_sis_Log_Error_Vzen_Info(ex.ToString(), "", arreglo, "", "", "", "", "", DateTime.Now);
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                mensaje = ex.InnerException + " " + ex.Message;
                throw new Exception(ex.InnerException.ToString());
            }
        }
Ejemplo n.º 2
0
        private void btnCobrar_Click(object sender, EventArgs e)
        {
            try
            {
                list_Cobro_EstadoCobro = new List <cxc_cobro_x_EstadoCobro_Info>();
                textBox1.Focus();


                var s = from q in (List <cxc_cobro_Info>)gridConsulta.DataSource
                        where q.IdEstadoCobro == "PORC" && q.chek == true && (q.IdCobro_tipo == a || q.IdCobro_tipo == b || q.IdCobro_tipo == c)
                        select q;
                foreach (var item in s)
                {
                    Info_cobro_x_EstadoCobro               = new cxc_cobro_x_EstadoCobro_Info();
                    Info_cobro_x_EstadoCobro.Fecha         = Convert.ToDateTime(DateTime.Now.ToShortDateString());
                    Info_cobro_x_EstadoCobro.IdCobro       = item.IdCobro;
                    Info_cobro_x_EstadoCobro.IdCobro_tipo  = item.IdCobro_tipo;
                    Info_cobro_x_EstadoCobro.IdEmpresa     = param.IdEmpresa;
                    Info_cobro_x_EstadoCobro.IdEstadoCobro = "COBR";
                    Info_cobro_x_EstadoCobro.IdSucursal    = item.IdSucursal;
                    list_Cobro_EstadoCobro.Add(Info_cobro_x_EstadoCobro);
                }
                if (list_Cobro_EstadoCobro.Count() == 0)
                {
                    MessageBox.Show("No ha seleccionado ningun registro Valido", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return;
                }
                if (MessageBox.Show("¿Desea Continuar?", "?", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    if (BusCobroEstado.GuardarDB_Verifica_si_es_Protestado(list_Cobro_EstadoCobro, ref msg))
                    {
                        MessageBox.Show("Guardado con exito", "OK", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }
                }
                cargarGrid();
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Ejemplo n.º 3
0
        private void btnProtestar_Click(object sender, EventArgs e)
        {
            try
            {
                string mensajeDocumentoDupli = "";
                string mensajeError          = "";
                string numDocumento          = "";
                list_Cobro_EstadoCobro = new List <cxc_cobro_x_EstadoCobro_Info>();
                textBox1.Focus();
                var s = from q in (List <cxc_cobro_Info>)gridConsulta.DataSource
                        where (q.IdEstadoCobro == "COBR" || q.IdCobro_tipo == "CHQV") && q.chek == true
                        select q;

                foreach (var item in s)
                {
                    cxc_Parametros_x_cheqProtesto_Info Info_Param = InfoParam_cxc.LstParamProtesto.FirstOrDefault(v => v.IdEmpresa == param.IdEmpresa &&
                                                                                                                  v.pa_IdSucursal_x_default_x_cheqProtes == item.IdSucursal);

                    Info_cobro_x_EstadoCobro               = new cxc_cobro_x_EstadoCobro_Info();
                    Info_cobro_x_EstadoCobro.Fecha         = Convert.ToDateTime(DateTime.Now.ToShortDateString());
                    Info_cobro_x_EstadoCobro.IdCobro       = item.IdCobro;
                    Info_cobro_x_EstadoCobro.IdCobro_tipo  = item.IdCobro_tipo;
                    Info_cobro_x_EstadoCobro.IdEmpresa     = param.IdEmpresa;
                    Info_cobro_x_EstadoCobro.IdEstadoCobro = "PRTS";
                    Info_cobro_x_EstadoCobro.IdSucursal    = item.IdSucursal;
                    Info_cobro_x_EstadoCobro.nt_IdBodega   = Convert.ToInt32(Info_Param.pa_IdBodega_x_default_x_cheqProtes);
                    Info_Cobro = item;
                    Info_cobro_x_EstadoCobro.nt_IdSucursal = Info_Cobro.IdSucursal;


                    list_Cobro_EstadoCobro.Add(Info_cobro_x_EstadoCobro);
                }

                if (list_Cobro_EstadoCobro.Count() == 0)
                {
                    MessageBox.Show("No ha seleccionado ningun registro Valido", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return;
                }
                if (list_Cobro_EstadoCobro.Count() > 1)
                {
                    MessageBox.Show("Solo debe Seleccionar un cheque a Protestar", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return;
                }
                frmCxcMantenimiento_Cheques_Multa frm = new frmCxcMantenimiento_Cheques_Multa();
                if (MessageBox.Show("¿Desea Continuar?", "Sistema", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    frm.idSucursal    = Info_Cobro.IdSucursal;
                    frm.idCobro       = Info_Cobro.IdCobro;
                    frm.txtNCh.Text   = Info_Cobro.cr_NumDocumento;
                    frm.txtCta.Text   = Info_Cobro.cr_cuenta;
                    frm.txtBanco.Text = Info_Cobro.cr_Banco;
                    frm.ShowDialog();
                    ObservacionProtesta = frm.txtObservacion.Text;
                    if (frm.protestar)
                    {
                        GetNotaDC();
                        GetNotaDCDetalle();

                        Info_NDC.CobroInfo = Info_Cobro;
                        Bus_NotaDB.GuardarDB(Info_NDC, ref d, ref mensajeDocumentoDupli, ref mensajeError);
                        foreach (var item in list_Cobro_EstadoCobro)
                        {
                            item.nt_IdNota   = d;
                            item.observacion = ObservacionProtesta;
                            item.IdBanco     = idBanco;
                        }
                        msg = "PROS";
                        if (BusCobroEstado.GuardarDB_Verifica_si_es_Protestado(list_Cobro_EstadoCobro, ref msg))
                        {
                            MessageBox.Show("Guardado con exito", "", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        }
                        else
                        {
                            MessageBox.Show(msg, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                }
                cargarGrid();
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Ejemplo n.º 4
0
        public void cargarGrid()
        {
            try
            {
                List <cxc_cobro_x_EstadoCobro_Info> TEMP = new List <cxc_cobro_x_EstadoCobro_Info>();
                List <cxc_cobro_Info> ListCobro          = new List <cxc_cobro_Info>();
                List <cxc_cobro_Info> ListCobroTodo      = new List <cxc_cobro_Info>();
                ListCobroTodo = Bus_Cobro.Get_List_cobro(param.IdEmpresa, ultraComboEditorTipoTransaccion.EditValue.ToString(), ultraComboEditorEstado.EditValue.ToString(), Convert.ToDateTime(dtpFechaIni.Value.ToShortDateString()), Convert.ToDateTime(dtpFechaFin.Value.ToShortDateString()), porfecha);
                cxc_cobro_x_EstadoCobro_Bus Cobro_x_EstadoCobro = new cxc_cobro_x_EstadoCobro_Bus();
                var LstCbr = Cobro_x_EstadoCobro.Get_List_cobro_x_EstadoCobro(param.IdEmpresa);

                var EstadoCobro = Bus_Cobro.Get_List_CobroEstado();

                var Join = from q in LstCbr
                           join w in EstadoCobro
                           on new { q.IdEstadoCobro } equals new { w.IdEstadoCobro }
                select new { q.IdCobro, w.posicion, q.IdSucursal };

                foreach (var item in Join)
                {
                    if (item.IdCobro == 4)
                    {
                        var temp2 = Join.ToList().FindAll(v => v.IdCobro == item.IdCobro && v.IdSucursal == item.IdSucursal);
                    }
                    var temp1  = Join.ToList().FindAll(v => v.IdCobro == item.IdCobro && v.IdSucursal == item.IdSucursal);
                    int maximo = temp1.Max(v => v.posicion);
                    var Obj    = temp1.First(p => p.posicion == maximo);
                    var Item   = LstCbr.First(v => v.IdCobro == Obj.IdCobro && v.posicion == Obj.posicion && v.IdSucursal == Obj.IdSucursal);
                    TEMP.Add(Item);
                }

                var ListaGrid = TEMP.GroupBy(v => v).ToList();

                List <cxc_cobro_x_EstadoCobro_Info> Lst2 = new List <cxc_cobro_x_EstadoCobro_Info>();

                var pru = TEMP.Where(q => q.IdSucursal == 2 && q.IdCobro == 4);

                foreach (var item in ListaGrid)
                {
                    cxc_cobro_x_EstadoCobro_Info info = new cxc_cobro_x_EstadoCobro_Info();

                    info.Fecha           = item.Key.Fecha;
                    info.IdBanco         = item.Key.IdBanco;
                    info.IdCbte_vta_nota = item.Key.IdCbte_vta_nota;
                    info.IdCobro         = item.Key.IdCobro;
                    info.IdCobro_tipo    = item.Key.IdCobro_tipo;
                    info.IdEmpresa       = item.Key.IdEmpresa;
                    info.IdEstadoCobro   = item.Key.IdEstadoCobro;
                    info.IdSucursal      = item.Key.IdSucursal;
                    info.nt_IdBodega     = item.Key.nt_IdBodega;
                    info.nt_IdNota       = item.Key.nt_IdNota;
                    info.nt_IdSucursal   = item.Key.nt_IdSucursal;
                    info.observacion     = item.Key.observacion;
                    info.posicion        = item.Key.posicion;

                    Lst2.Add(info);
                }


                var lst = Lst2.ToList().FindAll(c => c.IdEstadoCobro == ultraComboEditorEstado.EditValue.ToString());



                foreach (var item in lst)
                {
                    foreach (var item2 in ListCobroTodo)
                    {
                        if (item.IdCobro == item2.IdCobro && item.IdEmpresa == item2.IdEmpresa && item.IdSucursal == item2.IdSucursal)
                        {
                            cxc_cobro_Info info = new cxc_cobro_Info();

                            info.BancoCuenta         = item2.BancoCuenta;
                            info.BancoTarjeta        = item2.BancoTarjeta;
                            info.Caja                = item2.Caja;
                            info.chequeTarjeta       = item2.chequeTarjeta;
                            info.cr_Banco            = item2.cr_Banco;
                            info.cr_Codigo           = item2.cr_Codigo;
                            info.cr_cuenta           = item2.cr_cuenta;
                            info.cr_estado           = item2.cr_estado;
                            info.cr_fecha            = item2.cr_fecha;
                            info.cr_estadoCobro      = item2.cr_estadoCobro;
                            info.cr_fechaCobro       = item2.cr_fechaCobro;
                            info.IdBanco             = item2.IdBanco;
                            info.IdBodega_Cbte       = item2.IdBodega_Cbte;
                            info.IdCbte_vta_nota     = item2.IdCbte_vta_nota;
                            info.IdCbteCble_MoviCaja = item2.IdCbteCble_MoviCaja;
                            info.IdCliente           = item2.IdCliente;
                            info.IdCobro             = item2.IdCobro;
                            info.IdCobro_tipo        = item2.IdCobro_tipo;
                            info.IdEmpresa           = item.IdEmpresa;
                            info.IdEstadoCobro       = item.IdEstadoCobro;
                            info.IdSucursal          = item.IdSucursal;
                            info.IdTipocbte_MoviCaja = item2.IdTipocbte_MoviCaja;
                            info.IdTipoNotaCredito   = item2.IdTipoNotaCredito;
                            info.IdVendedorCliente   = item2.IdVendedorCliente;
                            info.nCliente            = item2.nCliente;
                            info.nSucursal           = item2.nSucursal;
                            info.RF              = item2.RF;
                            info.RI              = item2.RI;
                            info.secuencial      = item2.secuencial;
                            info.Tipo            = item2.Tipo;
                            info.TipoPagoTarjeta = item2.TipoPagoTarjeta;
                            info.ValorCheque     = item2.ValorCheque;
                            info.valorComision   = item2.valorComision;
                            info.valorRF         = item2.valorRF;
                            info.valorRI         = item2.valorRI;
                            info.cr_TotalCobro   = item2.cr_TotalCobro;
                            info.cr_NumDocumento = item2.cr_NumDocumento;
                            info.IdCaja          = item2.IdCaja;
                            ListCobro.Add(info);
                        }
                    }
                }

                gridConsulta.DataSource = ListCobro;//ListCobro;
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Ejemplo n.º 5
0
        private void btnCobrar_Click(object sender, EventArgs e)
        {
            try
            {
                recalcular();
                int cantRegistros = 0;
                txtFocus.Focus();
                lista          = new List <cxc_cobro_Info>();
                listaCxCestado = new List <cxc_cobro_x_EstadoCobro_Info>();
                lista          = ((List <cxc_cobro_Info>)gridConsulta.DataSource).Where(q => (q.chek == true || q.cr_estadoCobro == "PORC") && q.ValorCheque > 0 && q.ValorCheque < q.cr_TotalCobro).ToList();

                foreach (var item in lista)
                {
                    cxc_cobro_x_EstadoCobro_Info info = new cxc_cobro_x_EstadoCobro_Info();
                    info.Fecha         = Convert.ToDateTime(DateTime.Now.ToShortDateString());
                    info.IdCobro       = item.IdCobro;
                    info.IdCobro_tipo  = item.IdCobro_tipo;
                    info.IdEmpresa     = param.IdEmpresa;
                    info.IdEstadoCobro = "COBR";
                    info.observacion   = "Tipo Pago " + ((Convert.ToString(item.TipoPagoTarjeta) == "EFEC") ? Convert.ToString(item.TipoPagoTarjeta) : Convert.ToString(item.TipoPagoTarjeta) + " del Banco " + Convert.ToString(item.BancoTarjeta)) +
                                         ((Convert.ToString(item.RF) == "")?"":" con " + Convert.ToString(item.RF) + " de " + Convert.ToString(item.valorRF)) +
                                         ((Convert.ToString(item.RI) == "")?"":" con " + Convert.ToString(item.RI) + " de " + Convert.ToString(item.valorRI)) +
                                         " Por el monto de " + item.ValorCheque.ToString();
                    info.IdSucursal = item.IdSucursal;
                    listaCxCestado.Add(info);
                }


                if (validarDatos())
                {
                    if (MessageBox.Show("¿Desea Continuar?", "?", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        foreach (var item in lista)
                        {
                            idcobro     = item.IdCobro;
                            idtipocobro = item.IdCobro_tipo;

                            //guarda la comision
                            if (item.valorComision > 0)
                            {
                                guardarRF(item, infoParam.pa_IdCobro_tipo_Comision_TC, item.valorComision);
                            }
                            //guarda la retencion fte
                            if (item.valorRF > 0)
                            {
                                guardarRF(item, item.RF, item.valorRF);
                            }
                            //guarda la retencion de iva
                            if (item.valorRI > 0)
                            {
                                guardarRF(item, item.RI, item.valorRI);
                            }

                            if (Convert.ToString(item.TipoPagoTarjeta) != null)
                            {
                                guardarRF(item, item.TipoPagoTarjeta, item.ValorCheque, Convert.ToString(item.BancoTarjeta), item.cuentaTarjeta, item.chequeTarjeta);
                                if (busCobroEstado.GuardarDB_Verifica_si_es_Protestado(listaCxCestado, ref msg))
                                {
                                    cantRegistros = cantRegistros + 1;
                                }
                            }
                        }

                        MessageBox.Show("Se Guardo con exito " + cantRegistros + " Registros", "OK", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }


                    cargarGrid();
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Ejemplo n.º 6
0
        public Boolean GuardarDB_Verifica_si_es_Protestado(List <cxc_cobro_x_EstadoCobro_Info> lista, ref string msg)
        {
            try
            {
                try
                {
                    cxc_cobro_x_EstadoCobro_Info info    = new cxc_cobro_x_EstadoCobro_Info();
                    EntitiesCuentas_x_Cobrar     context = new EntitiesCuentas_x_Cobrar();
                    var select = from q in context.cxc_cobro_x_EstadoCobro
                                 select q;
                    if (msg == "PROS")
                    {
                        foreach (var item in lista)
                        {
                            select = from q in context.cxc_cobro_x_EstadoCobro
                                     where q.IdEmpresa == item.IdEmpresa && q.IdSucursal == item.IdSucursal &&
                                     q.IdCobro == item.IdCobro && q.IdEstadoCobro == item.IdEstadoCobro &&
                                     q.IdCobro_tipo == item.IdCobro_tipo
                                     select q;
                        }
                        if (select.ToList().Count() == 1)
                        {
                            msg = "Ya se encuentra Protestado";
                            return(false);
                        }
                    }
                }
                catch (Exception ex)
                {
                    string arreglo = ToString();
                    tb_sis_Log_Error_Vzen_Data oDataLog      = new tb_sis_Log_Error_Vzen_Data();
                    tb_sis_Log_Error_Vzen_Info Log_Error_sis = new tb_sis_Log_Error_Vzen_Info(ex.ToString(), "", arreglo, "", "", "", "", "", DateTime.Now);
                    oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                    mensaje = ex.InnerException + " " + ex.Message;
                }
                using (EntitiesCuentas_x_Cobrar context = new EntitiesCuentas_x_Cobrar())
                {
                    foreach (var item in lista)
                    {
                        //var contactG = cxc_cobro_x_EstadoCobro.Createcxc_cobro_x_EstadoCobro(0,0,0,"","",DateTime.Now);

                        cxc_cobro_x_EstadoCobro addressG = new cxc_cobro_x_EstadoCobro();
                        addressG.IdEmpresa  = item.IdEmpresa;
                        addressG.IdSucursal = item.IdSucursal;
                        addressG.IdCobro    = item.IdCobro;
                        addressG.Secuencia  = GetSecuencia(item.IdEmpresa, item.IdSucursal, item.IdCobro);

                        addressG.IdCobro_tipo    = item.IdCobro_tipo;
                        addressG.IdEstadoCobro   = item.IdEstadoCobro;
                        addressG.Fecha           = item.Fecha;
                        addressG.nt_IdBodega     = item.nt_IdBodega;
                        addressG.nt_IdNota       = item.nt_IdNota;
                        addressG.nt_IdSucursal   = item.nt_IdSucursal;
                        addressG.IdBanco         = item.IdBanco;
                        addressG.observacion     = item.observacion;
                        addressG.IdCbte_vta_nota = item.IdCbte_vta_nota;

                        //contactG = addressG;
                        context.cxc_cobro_x_EstadoCobro.Add(addressG);
                        context.SaveChanges();
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                string arreglo = ToString();
                tb_sis_Log_Error_Vzen_Data oDataLog      = new tb_sis_Log_Error_Vzen_Data();
                tb_sis_Log_Error_Vzen_Info Log_Error_sis = new tb_sis_Log_Error_Vzen_Info(ex.ToString(), "", arreglo, "", "", "", "", "", DateTime.Now);
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                mensaje = ex.InnerException + " " + ex.Message;
                msg     = ex.Message;
                throw new Exception(ex.InnerException.ToString());
            }
        }
        public Boolean Depositar()
        {
            try
            {
                string mensaje = "";
                List_Cobro    = new List <cxc_cobro_x_EstadoCobro_Info>();
                List_Mov_Caja = new List <caj_Caja_Movimiento_Info>();

                //Seleccion de los que estan chequeados en la grilla
                var SeleccionalosChequeados = Obj_Det_Asg_Ch.ToList();
                SeleccionalosChequeados = SeleccionalosChequeados.FindAll(q => q.Check == true);

                // Agrupando por los Bancos y por Fecha
                var AgrupaXIDBanco = from C in SeleccionalosChequeados
                                     group C by new { C.IdBanco_dep, C.Fecha_dep }
                into grouping
                    select new { grouping.Key };

                //Recorriendo la agrupación
                foreach (var item2 in AgrupaXIDBanco)
                {
                    // Recorriendo la lista seleccionada para obtener los infos
                    foreach (var item in SeleccionalosChequeados)
                    {
                        if (item2.Key.IdBanco_dep == item.IdBanco_dep && item2.Key.Fecha_dep == item.Fecha_dep)
                        {
                            if (item.IdEstadoCobro == "PORC")
                            {
                                cxc_cobro_x_EstadoCobro_Info Info_Cobro   = new cxc_cobro_x_EstadoCobro_Info();
                                caj_Caja_Movimiento_Info     Info_Mov_Caj = new caj_Caja_Movimiento_Info();

                                // Info de Cobro
                                Info_Cobro.IdEmpresa     = param.IdEmpresa;
                                Info_Cobro.IdSucursal    = item.IdSucursal;
                                Info_Cobro.IdCobro       = item.IdCobro;
                                Info_Cobro.IdEstadoCobro = "COBR";
                                Info_Cobro.IdCobro_tipo  = item.IdCobro_tipo;
                                Info_Cobro.observacion   = "";
                                Info_Cobro.Fecha         = DateTime.Now;
                                Info_Cobro.IdUsuario     = param.IdUsuario;
                                Info_Cobro.nom_pc        = param.nom_pc;
                                Info_Cobro.ip            = param.ip;

                                List_Cobro.Add(Info_Cobro);

                                // MOVIMIENTO DE CAJA
                                Info_Mov_Caj.IdEmpresa   = item.IdEmpresa;
                                Info_Mov_Caj.IdCaja      = (item.IdCaja == null) ? 0 : Convert.ToInt32(item.IdCaja);
                                Info_Mov_Caj.CodMoviCaja = item.CodCaja;
                                Info_Mov_Caj.IdCbteCble  = Convert.ToDecimal(item.mcj_IdCbteCble);
                                Info_Mov_Caj.IdTipocbte  = Convert.ToInt32(item.mcj_IdTipocbte);

                                List_Mov_Caja.Add(Info_Mov_Caj);
                            }
                        }
                    }
                    // Cambio de estado del Cobro
                    if (Bus_Cobro.GuardarDB_Verifica_si_es_Protestado(List_Cobro, ref mensaje))
                    {
                        // Creando el movimiento contable
                        if (Bus_Cobr.Registra_Contabiliza_MovCaja_x_Cobro_enDeposito(List_Mov_Caja, Convert.ToInt32(item2.Key.IdBanco_dep), Convert.ToDateTime(item2.Key.Fecha_dep), ref mensaje))
                        {
                            List_Cobro    = new List <cxc_cobro_x_EstadoCobro_Info>();
                            List_Mov_Caja = new List <caj_Caja_Movimiento_Info>();
                        }
                        else
                        {
                            MessageBox.Show("Error al tratar de registrar el Movimiento de Caja");
                            return(false);
                        }
                    }
                    else
                    {
                        MessageBox.Show("Error al tratar de actualizar el estado del cobro");
                        return(false);
                    }
                }
                MessageBox.Show("Se Guardo el Deposito correctamente");
                return(true);
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString()); return(false);
            }
        }