public Boolean Eliminar_OrdenPagoCancelaciones(cp_orden_pago_cancelaciones_Info Info, ref string mensaje) { try { using (EntitiesCuentasxPagar CxP = new EntitiesCuentasxPagar()) { var eliminar = CxP.cp_orden_pago_cancelaciones.FirstOrDefault(v => v.IdEmpresa == Info.IdEmpresa && v.Idcancelacion == Info.Idcancelacion); if (eliminar != null) { CxP.cp_orden_pago_cancelaciones.Remove(eliminar); CxP.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.ToString() + " " + ex.Message; throw new Exception(ex.ToString()); } }
public ActionResult EditingUpdateFactura([ModelBinder(typeof(DevExpressEditorsBinder))] cp_orden_pago_cancelaciones_Info info_det) { List_op.UpdateRow(info_det, Convert.ToDecimal(SessionFixed.IdTransaccionSessionActual)); var model = List_op.get_list(Convert.ToDecimal(SessionFixed.IdTransaccionSessionActual)); return(PartialView("_GridViewPartial_cheque_op", model)); }
public Boolean GuardarDB(cp_orden_pago_cancelaciones_Info Info, int Id, ref string mensaje) { try { decimal IdCancelacion = GetIdcancelacion(Id); using (EntitiesCuentasxPagar Context = new EntitiesCuentasxPagar()) { cp_orden_pago_cancelaciones Cabe = new cp_orden_pago_cancelaciones(); Cabe.IdEmpresa = Info.IdEmpresa; Cabe.Idcancelacion = IdCancelacion; Cabe.Secuencia = Info.Secuencia; Cabe.IdEmpresa_op = Info.IdEmpresa_op; Cabe.IdOrdenPago_op = (Info.IdOrdenPago_op == null) ? 0 : Convert.ToDecimal(Info.IdOrdenPago_op); Cabe.Secuencia_op = (Info.Secuencia_op == null) ? 0 : Convert.ToInt32(Info.Secuencia_op); Cabe.IdEmpresa_op_padre = Info.IdEmpresa_op_padre; Cabe.IdOrdenPago_op_padre = Info.IdOrdenPago_op_padre; Cabe.Secuencia_op_padre = Info.Secuencia_op_padre; Cabe.IdEmpresa_cxp = Info.IdEmpresa_cxp; Cabe.IdTipoCbte_cxp = Info.IdTipoCbte_cxp; Cabe.IdCbteCble_cxp = Info.IdCbteCble_cxp; Cabe.IdEmpresa_pago = Convert.ToInt32(Info.IdEmpresa_pago); Cabe.IdTipoCbte_pago = Convert.ToInt32(Info.IdTipoCbte_pago); Cabe.IdCbteCble_pago = Convert.ToDecimal(Info.IdCbteCble_pago); Cabe.MontoAplicado = Info.MontoAplicado; Cabe.SaldoAnterior = Info.SaldoAnterior; Cabe.SaldoActual = Info.SaldoActual; Cabe.Observacion = Info.Observacion; Cabe.fechaTransaccion = DateTime.Now; Context.cp_orden_pago_cancelaciones.Add(Cabe); var op = Context.cp_orden_pago.Where(q => q.IdEmpresa == Info.IdEmpresa && q.IdOrdenPago == Info.IdOrdenPago_op).FirstOrDefault(); if (op != null) { op.IdEstadoAprobacion = "APRO"; var op_det = Context.cp_orden_pago_det.Where(q => q.IdEmpresa == Info.IdEmpresa && q.IdOrdenPago == Info.IdOrdenPago_op).ToList(); foreach (var item in op_det) { item.IdEstadoAprobacion = "APRO"; } } 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.ToString() + " " + ex.Message; throw new Exception(ex.ToString()); } }
public void UpdateRow(cp_orden_pago_cancelaciones_Info info_det, decimal IdTransaccionSession) { cp_orden_pago_cancelaciones_Info info = get_list(IdTransaccionSession).Where(q => q.IdOrdenPago_op == info_det.IdOrdenPago_op).FirstOrDefault(); if (info != null) { info.MontoAplicado = info_det.MontoAplicado; } }
public void AddRow(cp_orden_pago_cancelaciones_Info info_det) { List <cp_orden_pago_cancelaciones_Info> list = get_list(); info_det.Secuencia = list.Count == 0 ? 1 : list.Max(q => q.Secuencia) + 1; if (list.Where(q => q.IdOrdenPago_op == info_det.IdOrdenPago_op).Count() == 0) { list.Add(info_det); } }
public List <cp_orden_pago_cancelaciones_Info> Get_List_Cancelacion_x_Pagos_Anticipos(int IdEmpresa_pago, int IdTipoCbte_pago, decimal IdCbteCble_pago, ref string mensaje) { try { List <cp_orden_pago_cancelaciones_Info> Lst = new List <cp_orden_pago_cancelaciones_Info>(); using (EntitiesCuentasxPagar cxp = new EntitiesCuentasxPagar()) { var consulta = from q in cxp.cp_orden_pago_cancelaciones where q.IdEmpresa_pago == IdEmpresa_pago && q.IdTipoCbte_pago == IdTipoCbte_pago && q.IdCbteCble_pago == IdCbteCble_pago select q; foreach (var item in consulta) { cp_orden_pago_cancelaciones_Info info = new cp_orden_pago_cancelaciones_Info(); info.IdEmpresa = item.IdEmpresa; info.Idcancelacion = item.Idcancelacion; info.Secuencia = item.Secuencia; info.IdEmpresa_op = item.IdEmpresa_op; info.IdOrdenPago_op = item.IdOrdenPago_op; info.Secuencia_op = item.Secuencia_op; info.IdEmpresa_op_padre = item.IdEmpresa_op_padre; info.IdOrdenPago_op_padre = item.IdOrdenPago_op_padre; info.Secuencia_op_padre = item.Secuencia_op_padre; info.IdEmpresa_cxp = item.IdEmpresa_cxp; info.IdTipoCbte_cxp = item.IdTipoCbte_cxp; info.IdCbteCble_cxp = item.IdCbteCble_cxp; info.IdEmpresa_pago = item.IdEmpresa_pago; info.IdTipoCbte_pago = item.IdTipoCbte_pago; info.IdCbteCble_pago = item.IdCbteCble_pago; info.MontoAplicado = item.MontoAplicado; info.SaldoAnterior = item.SaldoAnterior; info.SaldoActual = item.SaldoActual; info.Observacion = item.Observacion; info.fechaTransaccion = item.fechaTransaccion; Lst.Add(info); } } return(Lst); } 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.ToString() + " " + ex.Message; throw new Exception(ex.ToString()); } }
public Boolean guardarDB(cp_orden_pago_cancelaciones_Info Info) { try { return(odata.guardarDB(Info)); } catch (Exception) { throw; } }
public Boolean GuardarDB(cp_orden_pago_cancelaciones_Info Info, int Id, ref string mensaje) { try { return(oData.GuardarDB(Info, Id, ref mensaje)); } catch (Exception ex) { Core.Erp.Info.Log_Exception.LoggingManager.Logger.Log(Core.Erp.Info.Log_Exception.LoggingCategory.Error, ex.Message); throw new Core.Erp.Info.Log_Exception.DalException(string.Format("", "Guardar_OrdenPagoCancelacion", ex.Message), ex) { EntityType = typeof(cp_orden_pago_cancelaciones_Bus) }; } }
public List <cp_orden_pago_cancelaciones_Info> Get_list_Cancelacion_x_CXP(int IdEmpresa_cxp, int IdTipoCbte_cxp, decimal IdCbteCble_cxp) { try { List <cp_orden_pago_cancelaciones_Info> Lst = new List <cp_orden_pago_cancelaciones_Info>(); using (EntitiesCuentasxPagar cxp = new EntitiesCuentasxPagar()) { var consulta = from q in cxp.cp_orden_pago_cancelaciones where q.IdEmpresa_cxp == IdEmpresa_cxp && q.IdTipoCbte_cxp == IdTipoCbte_cxp && q.IdCbteCble_cxp == IdCbteCble_cxp select q; foreach (var item in consulta) { cp_orden_pago_cancelaciones_Info info = new cp_orden_pago_cancelaciones_Info(); info.IdEmpresa = item.IdEmpresa; info.Idcancelacion = item.Idcancelacion; info.Secuencia = item.Secuencia; info.IdEmpresa_cxp = item.IdEmpresa_cxp; info.IdTipoCbte_cxp = item.IdTipoCbte_cxp; info.IdCbteCble_cxp = item.IdCbteCble_cxp; info.IdEmpresa_pago = item.IdEmpresa_pago; info.IdTipoCbte_pago = item.IdTipoCbte_pago; info.IdCbteCble_pago = item.IdCbteCble_pago; info.MontoAplicado = Convert.ToDouble(item.MontoAplicado); info.SaldoAnterior = Convert.ToDouble(item.SaldoAnterior); info.SaldoActual = Convert.ToDouble(item.SaldoActual); Lst.Add(info); } } return(Lst); } 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.ToString() + " " + ex.Message; throw new Exception(ex.ToString()); } }
public List <cp_orden_pago_cancelaciones_Info> Get_List_OP_x_CbteCtble(int IdEmpresa_pago, int IdTipoCbte_pago, decimal IdCbteCble_pago, ref string mensaje) { try { List <cp_orden_pago_cancelaciones_Info> Lst = new List <cp_orden_pago_cancelaciones_Info>(); using (EntitiesCuentasxPagar cxp = new EntitiesCuentasxPagar()) { var consulta = from q in cxp.cp_orden_pago_cancelaciones where q.IdEmpresa_pago == IdEmpresa_pago && q.IdTipoCbte_pago == IdTipoCbte_pago && q.IdCbteCble_pago == IdCbteCble_pago group q by new { q.IdEmpresa_op, q.IdOrdenPago_op, q.IdEmpresa_pago, q.IdTipoCbte_pago, q.IdCbteCble_pago } into gruoping select new { gruoping.Key }; foreach (var item in consulta) { cp_orden_pago_cancelaciones_Info info = new cp_orden_pago_cancelaciones_Info(); info.IdEmpresa_op = (item.Key.IdEmpresa_op == null) ? 0 : Convert.ToInt32(item.Key.IdEmpresa_op); info.IdOrdenPago_op = (item.Key.IdOrdenPago_op == null) ? 0 : Convert.ToDecimal(item.Key.IdOrdenPago_op); info.IdEmpresa_pago = item.Key.IdEmpresa_pago; info.IdTipoCbte_pago = item.Key.IdTipoCbte_pago; info.IdCbteCble_pago = item.Key.IdCbteCble_pago; Lst.Add(info); } } return(Lst); } 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.ToString() + " " + ex.Message; throw new Exception(ex.ToString()); } }
public ActionResult EditingUpdate_op([ModelBinder(typeof(DevExpressEditorsBinder))] cp_orden_pago_cancelaciones_Info info_det) { //var model = List_op_det.get_list(Convert.ToDecimal(SessionFixed.IdTransaccionSession)); //if (model.Count() > 0) //{ // cp_orden_pago_cancelaciones_Info edited_info = model.Where(m => m.IdOrdenPago_op == info_det.IdOrdenPago_op).First(); // edited_info.MontoAplicado = info_det.MontoAplicado; //} // List_op_det.set_list(model, Convert.ToDecimal(SessionFixed.IdTransaccionSession)); if (ModelState.IsValid) { List_op_det.UpdateRow(info_det, Convert.ToDecimal(SessionFixed.IdTransaccionSession)); } var model = List_op_det.get_list(Convert.ToDecimal(SessionFixed.IdTransaccionSession)); return(PartialView("_GridViewPartial_nota_credito_det", model)); }
public Boolean guardarDB(cp_orden_pago_cancelaciones_Info Info) { try { using (Entities_cuentas_por_pagar Context = new Entities_cuentas_por_pagar()) { cp_orden_pago_cancelaciones Entity = new cp_orden_pago_cancelaciones { IdEmpresa = Info.IdEmpresa, Idcancelacion = Info.Secuencia = get_id(Info.IdEmpresa), Secuencia = Info.Secuencia, IdEmpresa_op = Info.IdEmpresa_op, IdOrdenPago_op = Info.IdOrdenPago_op, Secuencia_op = Info.Secuencia_op, IdEmpresa_op_padre = Info.IdEmpresa_op_padre, IdOrdenPago_op_padre = Info.IdOrdenPago_op_padre, Secuencia_op_padre = Info.Secuencia_op_padre, IdEmpresa_cxp = Info.IdEmpresa_cxp, IdTipoCbte_cxp = Info.IdTipoCbte_cxp, IdCbteCble_cxp = Info.IdCbteCble_cxp, IdEmpresa_pago = Info.IdEmpresa_pago, IdTipoCbte_pago = Info.IdTipoCbte_pago, IdCbteCble_pago = Info.IdCbteCble_pago, MontoAplicado = Info.MontoAplicado, SaldoAnterior = Info.SaldoAnterior, SaldoActual = Info.SaldoActual, Observacion = Info.Observacion, fechaTransaccion = DateTime.Now }; Context.cp_orden_pago_cancelaciones.Add(Entity); Context.SaveChanges(); } return(true); } catch (Exception e) { throw; } }
public bool ModificarBD(cp_conciliacionAnticipo_Info info) { try { using (Entities_contabilidad db_cont = new Entities_contabilidad()) { ct_cbtecble_Info info_diario = armar_info(info.Lista_det_Cbte, info.IdEmpresa, info.IdSucursal, Convert.ToInt32(info.IdTipoCbte), 0, info.Observacion, info.Fecha); ct_cbtecble Entity_cbte = db_cont.ct_cbtecble.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdTipoCbte == info.IdTipoCbte && q.IdCbteCble == info.IdCbteCble).FirstOrDefault(); if (info_diario != null) { info_diario.IdCbteCble = Convert.ToDecimal(info.IdCbteCble); info_diario.IdUsuarioUltModi = info.IdUsuarioModificacion; if (data_cbtecble.modificarDB(info_diario)) { info.IdTipoCbte = info_diario.IdTipoCbte; info.IdCbteCble = info_diario.IdCbteCble; } } } using (Entities_cuentas_por_pagar db = new Entities_cuentas_por_pagar()) { cp_ConciliacionAnticipo entity = db.cp_ConciliacionAnticipo.Where(q => q.IdConciliacion == info.IdConciliacion && q.IdEmpresa == info.IdEmpresa).FirstOrDefault(); if (entity == null) { return(false); } entity.IdProveedor = info.IdProveedor; entity.Fecha = info.Fecha; entity.Observacion = info.Observacion; entity.IdSucursal = info.IdSucursal; entity.IdUsuarioModificacion = info.IdUsuarioModificacion; entity.FechaModificacion = DateTime.Now; var lst_det_OP = db.cp_ConciliacionAnticipoDetAnt.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdConciliacion == info.IdConciliacion).ToList(); db.cp_ConciliacionAnticipoDetAnt.RemoveRange(lst_det_OP); var lst_det_Fact = db.cp_ConciliacionAnticipoDetCXP.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdConciliacion == info.IdConciliacion).ToList(); db.cp_ConciliacionAnticipoDetCXP.RemoveRange(lst_det_Fact); var lst_Cancelaciones = db.cp_orden_pago_cancelaciones.Where(q => q.IdEmpresa_op == info.IdEmpresa && q.IdTipoCbte_pago == info.IdTipoCbte && q.IdCbteCble_pago == info.IdCbteCble).ToList(); db.cp_orden_pago_cancelaciones.RemoveRange(lst_Cancelaciones); if (info.Lista_det_OP != null) { int SecuenciaOP = 1; foreach (var item in info.Lista_det_OP) { db.cp_ConciliacionAnticipoDetAnt.Add(new cp_ConciliacionAnticipoDetAnt { IdEmpresa = info.IdEmpresa, IdConciliacion = info.IdConciliacion, Secuencia = SecuenciaOP++, IdOrdenPago = item.IdOrdenPago, MontoAplicado = item.MontoAplicado }); } } if (info.Lista_det_Fact != null) { int SecuenciaFact = 1; int SecuenciaCanc = 1; foreach (var item in info.Lista_det_Fact) { db.cp_ConciliacionAnticipoDetCXP.Add(new cp_ConciliacionAnticipoDetCXP { IdEmpresa = info.IdEmpresa, IdConciliacion = info.IdConciliacion, Secuencia = SecuenciaFact++, IdOrdenPago = item.IdOrdenPago, IdEmpresa_cxp = item.IdEmpresa, IdTipoCbte_cxp = item.IdTipoCbte_cxp, IdCbteCble_cxp = item.IdCbteCble_cxp, Fecha_cxp = item.Fecha_cxp, Observacion_cxp = item.Observacion_cxp, MontoAplicado = item.MontoAplicado }); cp_orden_pago_cancelaciones_Info info_cancelacion = new cp_orden_pago_cancelaciones_Info(); info_cancelacion.IdEmpresa = info.IdEmpresa; info_cancelacion.Secuencia = SecuenciaCanc++; info_cancelacion.IdEmpresa_op = item.IdEmpresa_cxp; info_cancelacion.IdOrdenPago_op = item.IdOrdenPago; info_cancelacion.Secuencia_op = 1; info_cancelacion.IdEmpresa_cxp = item.IdEmpresa_cxp; info_cancelacion.IdTipoCbte_cxp = item.IdTipoCbte_cxp; info_cancelacion.IdCbteCble_cxp = item.IdCbteCble_cxp; info_cancelacion.IdEmpresa_pago = info.IdEmpresa; info_cancelacion.IdTipoCbte_pago = Convert.ToInt32(info.IdTipoCbte); info_cancelacion.IdCbteCble_pago = Convert.ToInt32(info.IdCbteCble); info_cancelacion.MontoAplicado = item.MontoAplicado; info_cancelacion.Observacion = "CONCILIACION" + info.IdConciliacion; data_op_cancelaciones.guardarDB(info_cancelacion); } } db.SaveChanges(); } return(true); } catch (Exception ex) { tb_LogError_Data LogData = new tb_LogError_Data(); LogData.GuardarDB(new tb_LogError_Info { Descripcion = ex.Message, InnerException = ex.InnerException == null ? null : ex.InnerException.Message, Clase = "cp_conciliacionAnticipo_Data", Metodo = "ModificarDB", IdUsuario = info.IdUsuarioCreacion }); return(false); } }
public bool GuardarBD(cp_conciliacionAnticipo_Info info) { try { cp_parametros_Info info_parametros = new cp_parametros_Info(); info_parametros = data_cp_parametro.get_info(info.IdEmpresa); using (Entities_contabilidad db_cont = new Entities_contabilidad()) { if (info_parametros != null && info_parametros.pa_TipoCbte_para_conci_x_antcipo != null) { ct_cbtecble_Info info_diario = armar_info(info.Lista_det_Cbte, info.IdEmpresa, info.IdSucursal, Convert.ToInt32(info_parametros.pa_TipoCbte_para_conci_x_antcipo), 0, info.Observacion, info.Fecha); if (info_diario != null) { info_diario.IdUsuario = info.IdUsuarioCreacion; if (data_cbtecble.guardarDB(info_diario)) { info.IdTipoCbte = info_diario.IdTipoCbte; info.IdCbteCble = info_diario.IdCbteCble; } } } } using (Entities_cuentas_por_pagar db = new Entities_cuentas_por_pagar()) { db.cp_ConciliacionAnticipo.Add(new cp_ConciliacionAnticipo { IdEmpresa = info.IdEmpresa, IdConciliacion = info.IdConciliacion = get_id(info.IdEmpresa), IdSucursal = info.IdSucursal, IdProveedor = info.IdProveedor, Fecha = info.Fecha, Observacion = info.Observacion, IdTipoCbte = info.IdTipoCbte, IdCbteCble = info.IdCbteCble, Estado = true, IdUsuarioCreacion = info.IdUsuarioCreacion, FechaCreacion = DateTime.Now }); if (info.Lista_det_OP != null) { int SecuenciaOP = 1; foreach (var item in info.Lista_det_OP) { db.cp_ConciliacionAnticipoDetAnt.Add(new cp_ConciliacionAnticipoDetAnt { IdEmpresa = info.IdEmpresa, IdConciliacion = info.IdConciliacion, Secuencia = SecuenciaOP++, IdOrdenPago = item.IdOrdenPago, MontoAplicado = item.MontoAplicado }); } } if (info.Lista_det_Fact != null) { int SecuenciaFact = 1; int SecuenciaCanc = 1; foreach (var item in info.Lista_det_Fact) { db.cp_ConciliacionAnticipoDetCXP.Add(new cp_ConciliacionAnticipoDetCXP { IdEmpresa = info.IdEmpresa, IdConciliacion = info.IdConciliacion, Secuencia = SecuenciaFact++, IdOrdenPago = item.IdOrdenPago, IdEmpresa_cxp = item.IdEmpresa_cxp, IdTipoCbte_cxp = item.IdTipoCbte_cxp, IdCbteCble_cxp = item.IdCbteCble_cxp, Fecha_cxp = item.Fecha_cxp, Observacion_cxp = item.Observacion_cxp, MontoAplicado = item.MontoAplicado }); cp_orden_pago_cancelaciones_Info info_cancelacion = new cp_orden_pago_cancelaciones_Info(); info_cancelacion.IdEmpresa = info.IdEmpresa; info_cancelacion.Secuencia = SecuenciaCanc++; info_cancelacion.IdEmpresa_op = item.IdEmpresa_cxp; info_cancelacion.IdOrdenPago_op = item.IdOrdenPago; info_cancelacion.Secuencia_op = 1; info_cancelacion.IdEmpresa_cxp = item.IdEmpresa_cxp; info_cancelacion.IdTipoCbte_cxp = item.IdTipoCbte_cxp; info_cancelacion.IdCbteCble_cxp = item.IdCbteCble_cxp; info_cancelacion.IdEmpresa_pago = info.IdEmpresa; info_cancelacion.IdTipoCbte_pago = Convert.ToInt32(info.IdTipoCbte); info_cancelacion.IdCbteCble_pago = Convert.ToInt32(info.IdCbteCble); info_cancelacion.MontoAplicado = item.MontoAplicado; info_cancelacion.Observacion = "CONCILIACION" + info.IdConciliacion; data_op_cancelaciones.guardarDB(info_cancelacion); } } db.SaveChanges(); } return(true); } catch (Exception ex) { eliminar(info.IdEmpresa, Convert.ToInt32(info.IdTipoCbte), Convert.ToDecimal(info.IdCbteCble)); tb_LogError_Data LogData = new tb_LogError_Data(); LogData.GuardarDB(new tb_LogError_Info { Descripcion = ex.Message, InnerException = ex.InnerException == null ? null : ex.InnerException.Message, Clase = "cp_conciliacionAnticipo_Data", Metodo = "GuardarDB", IdUsuario = info.IdUsuarioCreacion }); return(false); } }
public List <cp_nota_DebCre_Info> Get_List_nota_DebCre(int IdEmpresa, int anio, int mes) { try { List <cp_nota_DebCre_Info> lM = new List <cp_nota_DebCre_Info>(); EntitiesCuentasxPagar Base = new EntitiesCuentasxPagar(); string msg = ""; var select_ = from T in Base.vwcp_nota_DebCre_ATS where T.IdEmpresa == IdEmpresa && T.cn_fecha.Year == anio && T.cn_fecha.Month == mes && T.Estado == "A" select T; foreach (var item in select_) { cp_nota_DebCre_Info dat = new cp_nota_DebCre_Info(); dat.IdEmpresa = item.IdEmpresa; dat.IdCbteCble_Nota = item.IdCbteCble_Nota; dat.IdTipoCbte_Nota = item.IdTipoCbte_Nota; dat.IdProveedor = item.IdProveedor; dat.cn_fecha = item.cn_fecha; dat.cn_serie1 = item.cn_serie1; dat.cn_serie2 = item.cn_serie2; dat.cn_Nota = item.cn_Nota; dat.cn_observacion = item.cn_observacion; dat.cn_subtotal_iva = item.cn_subtotal_iva; dat.cn_subtotal_siniva = item.cn_subtotal_siniva; dat.cn_baseImponible = item.cn_baseImponible; dat.cn_Por_iva = item.cn_Por_iva; dat.cn_valoriva = item.cn_valoriva; dat.IdCod_ICE = item.IdCod_ICE; dat.cn_Ice_base = item.cn_Ice_base; dat.cn_Ice_por = item.cn_Ice_por; dat.cn_Ice_valor = item.cn_Ice_valor; dat.cn_Serv_por = item.cn_Serv_por; dat.cn_Serv_valor = item.cn_Serv_valor; dat.cn_BaseSeguro = item.cn_BaseSeguro; dat.cn_total = item.cn_total; dat.cn_vaCoa = item.cn_vaCoa; dat.cn_Autorizacion = item.cn_Autorizacion; dat.IdTipoServicio = item.IdTipoServicio; dat.IdCtaCble_Acre = item.IdCtaCble_Acre; dat.IdCtaCble_IVA = item.IdCtaCble_IVA; dat.IdUsuario = item.IdUsuario; dat.Fecha_Transac = item.Fecha_Transac; dat.Estado = item.Estado; dat.IdUsuarioUltMod = item.IdUsuarioUltMod; dat.Fecha_UltMod = item.Fecha_UltMod; dat.IdUsuarioUltAnu = item.IdUsuarioUltAnu; dat.MotivoAnu = item.MotivoAnu; dat.nom_pc = item.nom_pc; dat.ip = item.ip; dat.Fecha_UltAnu = item.Fecha_UltAnu; dat.IdCbteCble_Anulacion = item.IdCbteCble_Anulacion; dat.IdTipoCbte_Anulacion = item.IdTipoCbte_Anulacion; dat.cn_tipoLocacion = item.cn_tipoLocacion; dat.IdCentroCosto = item.IdCentroCosto; dat.IdSucursal = item.IdSucursal; dat.IdTipoFlujo = item.IdTipoFlujo; dat.DebCre = (item.DebCre == "C") ? "Credito" : "Debito"; dat.IdIden_credito = item.IdIden_credito; dat.IdTipoNota = item.IdTipoNota; dat.cn_Autorizacion_Imprenta = null; dat.PagoLocExt = item.PagoLocExt; dat.PaisPago = item.PaisPago; dat.ConvenioTributacion = item.ConvenioTributacion; dat.PagoSujetoRetencion = item.PagoSujetoRetencion; dat.fecha_autorizacion = Convert.ToDateTime(item.fecha_autorizacion); dat.Num_Nota = "NT" + item.DebCre + "#:" + item.cn_serie1 + "-" + item.cn_serie2 + "-" + item.cn_Nota; dat.cn_Fecha_vcto = item.cn_Fecha_vcto; dat.InfoProveedor.IdProveedor = item.IdProveedor; dat.InfoProveedor.Persona_Info.IdTipoDocumento = item.IdTipoDocumento; dat.InfoProveedor.Persona_Info.pe_cedulaRuc = item.pe_cedulaRuc; dat.InfoProveedor.Persona_Info.pe_Naturaleza = item.pe_Naturaleza; dat.InfoProveedor.Persona_Info.pe_razonSocial = item.pe_razonSocial; cp_orden_pago_cancelaciones_Data Odata_can = new cp_orden_pago_cancelaciones_Data(); cp_orden_pago_cancelaciones_Info Info_cance = new cp_orden_pago_cancelaciones_Info(); Info_cance = Odata_can.Get_list_Cancelacion_x_Pagos(dat.IdEmpresa, dat.IdTipoCbte_Nota, dat.IdCbteCble_Nota, ref msg).FirstOrDefault(); if (Info_cance != null) { cp_orden_giro_Data OG_data = new cp_orden_giro_Data(); cp_orden_giro_Info Info_Og = new cp_orden_giro_Info(); Info_Og = OG_data.Get_Info_orden_giro(Convert.ToInt32(Info_cance.IdEmpresa_cxp), Convert.ToInt32(Info_cance.IdTipoCbte_cxp), Convert.ToDecimal(Info_cance.IdCbteCble_cxp)); if (Info_Og.IdEmpresa != 0) { dat.docModificado = Info_Og.IdOrden_giro_Tipo; dat.estabModificado = Info_Og.co_serie.Substring(0, 3); dat.ptoEmiModificado = Info_Og.co_serie.Substring(4, 3); dat.secModificado = Info_Og.co_factura; dat.autModificado = Info_Og.Num_Autorizacion; dat.cn_num_doc_modificado = Info_Og.co_factura; } lM.Add(dat); } } return(lM); } 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.ToString() + " " + ex.Message; throw new Exception(ex.ToString()); } }
public bool Contabilizar_proceso(ba_Archivo_Transferencia_Info info_archivo, tb_banco_procesos_bancarios_x_empresa_Info info_procesos_x_empresa, string Origen) { try { bool res = false; if (info_archivo.Contabilizado != true) { decimal IdCbteCble = 0; decimal Valor_total = 0; string Observacion = ""; int cont = 0; info_Cbtecble_ban = new ba_Cbte_Ban_Info(); info_cbte_ban_tipo_x_cbtecble = bus_cbte_ban_tipo_x_cbtecble.Get_info_Cbte_Ban_tipo_x_ct_CbteCble_tipo(info_archivo.IdEmpresa, "NDBA"); info_banco_cta = bus_banco_cta.Get_Info_Banco_Cuenta(info_archivo.IdEmpresa, info_archivo.IdBanco); List <cp_orden_pago_cancelaciones_Info> list_op_cancelaciones = new List <cp_orden_pago_cancelaciones_Info>(); List <ba_Archivo_Transferencia_Det> list_archivo_detalle_act = new List <ba_Archivo_Transferencia_Det>(); switch (info_archivo.IdProceso_bancario) { case "PAGO_PROVEEDORES_BOL": #region Pago a proveedores del bolivariano var list_secuenciales = (from q in info_archivo.Lst_Archivo_Transferencia_Det group q by new { q.Secuencial_reg_x_proceso } into secuenciales select new { secuencial = secuenciales.Key.Secuencial_reg_x_proceso == null ? 0 : Convert.ToDecimal(secuenciales.Key.Secuencial_reg_x_proceso) }); foreach (var item in list_secuenciales.OrderBy(q => q.secuencial)) { //OBTENGO LA LISTA DE OP PARA HACER DIARIOS POR PROVEEDOR list_op_cancelaciones = new List <cp_orden_pago_cancelaciones_Info>(); List <decimal> list_op = new List <decimal>(); foreach (var det_archivo in info_archivo.Lst_Archivo_Transferencia_Det.Where(q => q.Secuencial_reg_x_proceso == item.secuencial).ToList()) { list_op.Add(det_archivo.IdOrdenPago == null ? 0 : (decimal)det_archivo.IdOrdenPago); } List <cp_orden_pago_det_Info> list_op_det = new List <cp_orden_pago_det_Info>(); cp_orden_pago_det_Bus bus_op_det = new cp_orden_pago_det_Bus(); //OBTENGO LA LISTA DE LAS OP PARA MATAR CON LA NDBA list_op_det = bus_op_det.Get_list_orden_pago_con_cta_acreedora(info_archivo.IdEmpresa, list_op); #region Armo cabecera diario info_Cbtecble_ban.info_Cbtecble = new ct_Cbtecble_Info(); info_Cbtecble_ban.IdEmpresa = info_Cbtecble_ban.info_Cbtecble.IdEmpresa = info_archivo.IdEmpresa; info_Cbtecble_ban.IdTipocbte = info_Cbtecble_ban.info_Cbtecble.IdTipoCbte = info_cbte_ban_tipo_x_cbtecble.IdTipoCbteCble; info_Cbtecble_ban.IdCbteCble = info_Cbtecble_ban.info_Cbtecble.IdCbteCble = 0; info_Cbtecble_ban.IdPeriodo = info_Cbtecble_ban.info_Cbtecble.IdPeriodo = (info_archivo.Fecha.Year * 100) + info_archivo.Fecha.Month; info_Cbtecble_ban.cb_Fecha = info_Cbtecble_ban.info_Cbtecble.cb_Fecha = info_archivo.Fecha; info_Cbtecble_ban.cb_secuencia = info_Cbtecble_ban.info_Cbtecble.Secuencia = 0; info_Cbtecble_ban.info_Cbtecble.Anio = info_archivo.Fecha.Year; info_Cbtecble_ban.info_Cbtecble.Mes = info_archivo.Fecha.Month; info_Cbtecble_ban.IdUsuario = info_Cbtecble_ban.info_Cbtecble.IdUsuario = info_archivo.IdUsuario; info_Cbtecble_ban.Fecha_Transac = info_Cbtecble_ban.info_Cbtecble.cb_FechaTransac = DateTime.Now; info_Cbtecble_ban.IdSucursal = info_Cbtecble_ban.info_Cbtecble.IdSucursal = 1; info_Cbtecble_ban.cb_ChequeImpreso = "N"; info_Cbtecble_ban.info_Cbtecble.Mayorizado = "N"; info_Cbtecble_ban.info_Cbtecble._cbteCble_det_lista_info = new List <ct_Cbtecble_det_Info>(); info_Cbtecble_ban.Estado = info_Cbtecble_ban.info_Cbtecble.Estado = "A"; #endregion #region Armo detalle diario Valor_total = 0; Observacion = "OB# " + item.secuencial + " NDBA x " + info_archivo.IdProceso_bancario + " # " + info_archivo.IdArchivo.ToString(); cont = 0; foreach (var det_op in list_op_det) { if (cont == 0) { Observacion += " " + det_op.IdTipo_Persona + ": [" + det_op.IdEntidad.ToString() + "] " + det_op.pr_nombre.Trim(); cont++; } //validacion si llega una op para adjuntar como referencia if (det_op.Referencia == null) { Observacion += ", OP#" + det_op.IdOrdenPago; } else { Observacion += ", " + det_op.Referencia; } Valor_total += Convert.ToDecimal(Math.Round(det_op.Valor_a_pagar, 2, MidpointRounding.AwayFromZero)); ct_Cbtecble_det_Info Debe = new ct_Cbtecble_det_Info(); Debe.IdEmpresa = info_Cbtecble_ban.info_Cbtecble.IdEmpresa; Debe.IdTipoCbte = info_Cbtecble_ban.info_Cbtecble.IdTipoCbte; Debe.IdCbteCble = 0; Debe.secuencia = 0; Debe.IdCtaCble = det_op.IdCtaCble_Acreedora; Debe.dc_Valor = Convert.ToDouble(Math.Round(Convert.ToDecimal(det_op.Valor_a_pagar), 2, MidpointRounding.AwayFromZero)); Debe.dc_Observacion = "OB# " + item.secuencial + " NDBA x " + info_archivo.IdProceso_bancario + " # " + info_archivo.IdArchivo.ToString() + " " + det_op.IdTipo_Persona + ": [" + det_op.IdEntidad.ToString() + "] " + det_op.pr_nombre.Trim() + " " + det_op.Referencia; info_Cbtecble_ban.info_Cbtecble._cbteCble_det_lista_info.Add(Debe); //Cabecera de cbte bancario necesita id proveedor info_Cbtecble_ban.IdProveedor = det_op.IdEntidad; #region Cancelaciones x op cp_orden_pago_cancelaciones_Info info_op_cancelaciones = new cp_orden_pago_cancelaciones_Info(); info_op_cancelaciones.IdEmpresa = info_archivo.IdEmpresa; info_op_cancelaciones.Idcancelacion = 0; info_op_cancelaciones.Secuencia = 0; info_op_cancelaciones.IdEmpresa_op = det_op.IdEmpresa; info_op_cancelaciones.IdOrdenPago_op = det_op.IdOrdenPago; info_op_cancelaciones.Secuencia_op = det_op.Secuencia; info_op_cancelaciones.IdEmpresa_cxp = det_op.IdEmpresa_cxp; info_op_cancelaciones.IdTipoCbte_cxp = det_op.IdTipoCbte_cxp; info_op_cancelaciones.IdCbteCble_cxp = det_op.IdCbteCble_cxp; info_op_cancelaciones.MontoAplicado = det_op.Valor_a_pagar; info_op_cancelaciones.SaldoActual = 0; info_op_cancelaciones.SaldoAnterior = 0; info_op_cancelaciones.Observacion = "Canc./ de OP con Archivo bancario x " + info_archivo.IdProceso_bancario + " #" + info_archivo.IdArchivo.ToString(); info_op_cancelaciones.fechaTransaccion = info_archivo.Fecha; list_op_cancelaciones.Add(info_op_cancelaciones); #endregion } ct_Cbtecble_det_Info Haber = new ct_Cbtecble_det_Info(); Haber.IdEmpresa = info_Cbtecble_ban.info_Cbtecble.IdEmpresa; Haber.IdTipoCbte = info_Cbtecble_ban.info_Cbtecble.IdTipoCbte; Haber.IdCbteCble = 0; Haber.secuencia = 0; Haber.IdCtaCble = info_banco_cta.IdCtaCble; Haber.dc_Valor = Convert.ToDouble(Math.Round(Valor_total, 2, MidpointRounding.AwayFromZero)) * -1; Haber.dc_Observacion = Observacion; Haber.dc_para_conciliar = true; info_Cbtecble_ban.info_Cbtecble._cbteCble_det_lista_info.Add(Haber); #endregion info_Cbtecble_ban.cb_Valor = info_Cbtecble_ban.info_Cbtecble.cb_Valor = Convert.ToDouble(Math.Round(Valor_total, 2, MidpointRounding.AwayFromZero)); info_Cbtecble_ban.cb_Observacion = info_Cbtecble_ban.info_Cbtecble.cb_Observacion = Observacion; IdCbteCble = 0; #region Grabar if (bus_Cbtecble_conta.GrabarDB(info_Cbtecble_ban.info_Cbtecble, ref IdCbteCble, ref mensaje_error)) { info_Cbtecble_ban.IdBanco = info_archivo.IdBanco; info_Cbtecble_ban.IdCbteCble = IdCbteCble; info_Cbtecble_ban.IdTipoNota = info_procesos_x_empresa.IdTipoNota; bus_Cbtecble_ban.GrabarDB(info_Cbtecble_ban, ref mensaje_error); var list_agrup = (from q in list_op_cancelaciones group q by new { q.IdEmpresa, q.Idcancelacion, q.Secuencia, q.IdEmpresa_op, q.IdOrdenPago_op, q.Secuencia_op, q.IdEmpresa_cxp, q.IdTipoCbte_cxp, q.IdCbteCble_cxp, q.MontoAplicado, q.SaldoActual, q.SaldoAnterior, q.Observacion, q.fechaTransaccion } into Lista_agrupada select new { Lista_agrupada.Key.IdEmpresa, Lista_agrupada.Key.Idcancelacion, Lista_agrupada.Key.Secuencia, Lista_agrupada.Key.IdEmpresa_op, Lista_agrupada.Key.IdOrdenPago_op, Lista_agrupada.Key.Secuencia_op, Lista_agrupada.Key.IdEmpresa_cxp, Lista_agrupada.Key.IdTipoCbte_cxp, Lista_agrupada.Key.IdCbteCble_cxp, Lista_agrupada.Key.MontoAplicado, Lista_agrupada.Key.SaldoActual, Lista_agrupada.Key.SaldoAnterior, Lista_agrupada.Key.Observacion, Lista_agrupada.Key.fechaTransaccion }); list_op_cancelaciones = new List <cp_orden_pago_cancelaciones_Info>(); foreach (var cancelacion in list_agrup) { cp_orden_pago_cancelaciones_Info info_can = new cp_orden_pago_cancelaciones_Info(); info_can.IdEmpresa = cancelacion.IdEmpresa; info_can.Idcancelacion = cancelacion.Idcancelacion; info_can.Secuencia = cancelacion.Secuencia; info_can.IdEmpresa_op = cancelacion.IdEmpresa_op; info_can.IdOrdenPago_op = cancelacion.IdOrdenPago_op; info_can.Secuencia_op = cancelacion.Secuencia_op; info_can.IdEmpresa_cxp = cancelacion.IdEmpresa_cxp; info_can.IdTipoCbte_cxp = cancelacion.IdTipoCbte_cxp; info_can.IdCbteCble_cxp = cancelacion.IdCbteCble_cxp; info_can.MontoAplicado = cancelacion.MontoAplicado; info_can.SaldoActual = cancelacion.SaldoActual; info_can.SaldoAnterior = cancelacion.SaldoAnterior; info_can.Observacion = cancelacion.Observacion; info_can.fechaTransaccion = cancelacion.fechaTransaccion; info_can.IdEmpresa_pago = info_Cbtecble_ban.info_Cbtecble.IdEmpresa; info_can.IdTipoCbte_pago = info_Cbtecble_ban.info_Cbtecble.IdTipoCbte; info_can.IdCbteCble_pago = IdCbteCble; list_op_cancelaciones.Add(info_can); } bus_op_cancelaciones.GuardarDB(list_op_cancelaciones, info_archivo.IdEmpresa, ref mensaje_error); } #endregion } res = true; info_archivo.Contabilizado = true; #endregion break; default: if (info_archivo.Origen_Archivo != "RRHH") { #region Pago a proveedores que tengan op //OBTENGO LA LISTA DE OP PARA HACER DIARIOS POR PROVEEDOR List <decimal> list_op_x_canc = new List <decimal>(); foreach (var det_archivo in info_archivo.Lst_Archivo_Transferencia_Det) { list_op_x_canc.Add(det_archivo.IdOrdenPago == null ? 0 : (decimal)det_archivo.IdOrdenPago); } List <cp_orden_pago_det_Info> list_op_det_x_cancelar = new List <cp_orden_pago_det_Info>(); cp_orden_pago_det_Bus bus_op_det_x_cancelar = new cp_orden_pago_det_Bus(); //OBTENGO LA LISTA DE LAS OP PARA MATAR CON LA NDBA list_op_det_x_cancelar = bus_op_det_x_cancelar.Get_list_orden_pago_con_cta_acreedora(info_archivo.IdEmpresa, list_op_x_canc); foreach (var det_op in list_op_det_x_cancelar) { list_op_cancelaciones = new List <cp_orden_pago_cancelaciones_Info>(); #region Armo cabecera diario info_Cbtecble_ban.info_Cbtecble = new ct_Cbtecble_Info(); info_Cbtecble_ban.IdEmpresa = info_Cbtecble_ban.info_Cbtecble.IdEmpresa = info_archivo.IdEmpresa; info_Cbtecble_ban.IdTipocbte = info_Cbtecble_ban.info_Cbtecble.IdTipoCbte = info_cbte_ban_tipo_x_cbtecble.IdTipoCbteCble; info_Cbtecble_ban.IdCbteCble = info_Cbtecble_ban.info_Cbtecble.IdCbteCble = 0; info_Cbtecble_ban.IdPeriodo = info_Cbtecble_ban.info_Cbtecble.IdPeriodo = (info_archivo.Fecha.Year * 100) + info_archivo.Fecha.Month; info_Cbtecble_ban.cb_Fecha = info_Cbtecble_ban.info_Cbtecble.cb_Fecha = info_archivo.Fecha; info_Cbtecble_ban.cb_secuencia = info_Cbtecble_ban.info_Cbtecble.Secuencia = 0; info_Cbtecble_ban.info_Cbtecble.Anio = info_archivo.Fecha.Year; info_Cbtecble_ban.info_Cbtecble.Mes = info_archivo.Fecha.Month; info_Cbtecble_ban.IdUsuario = info_Cbtecble_ban.info_Cbtecble.IdUsuario = info_archivo.IdUsuario; info_Cbtecble_ban.Fecha_Transac = info_Cbtecble_ban.info_Cbtecble.cb_FechaTransac = DateTime.Now; info_Cbtecble_ban.IdSucursal = info_Cbtecble_ban.info_Cbtecble.IdSucursal = 1; info_Cbtecble_ban.cb_ChequeImpreso = "N"; info_Cbtecble_ban.info_Cbtecble.Mayorizado = "N"; info_Cbtecble_ban.info_Cbtecble._cbteCble_det_lista_info = new List <ct_Cbtecble_det_Info>(); info_Cbtecble_ban.Estado = info_Cbtecble_ban.info_Cbtecble.Estado = "A"; #endregion #region Armo detalle diario Valor_total = 0; Observacion = info_archivo.IdProceso_bancario + " # " + info_archivo.IdArchivo.ToString(); cont = 0; if (cont == 0) { Observacion += " " + det_op.IdTipo_Persona + ": [" + det_op.IdEntidad.ToString() + "] " + det_op.pr_nombre.Trim(); cont++; } Observacion += ", " + det_op.Referencia; Valor_total += Convert.ToDecimal(Math.Round(det_op.Valor_a_pagar, 2, MidpointRounding.AwayFromZero)); ct_Cbtecble_det_Info Debe = new ct_Cbtecble_det_Info(); Debe.IdEmpresa = info_Cbtecble_ban.info_Cbtecble.IdEmpresa; Debe.IdTipoCbte = info_Cbtecble_ban.info_Cbtecble.IdTipoCbte; Debe.IdCbteCble = 0; Debe.secuencia = 0; Debe.IdCtaCble = det_op.IdCtaCble_Acreedora; Debe.dc_Valor = Convert.ToDouble(Math.Round(Convert.ToDecimal(det_op.Valor_a_pagar), 2, MidpointRounding.AwayFromZero)); Debe.dc_Observacion = info_archivo.IdProceso_bancario + " # " + info_archivo.IdArchivo.ToString() + " " + det_op.IdTipo_Persona + ": [" + det_op.IdEntidad.ToString() + "] " + det_op.pr_nombre.Trim() + " " + det_op.Referencia; info_Cbtecble_ban.info_Cbtecble._cbteCble_det_lista_info.Add(Debe); //Cabecera de cbte bancario necesita id proveedor info_Cbtecble_ban.IdProveedor = det_op.IdEntidad; #region Cancelaciones x op cp_orden_pago_cancelaciones_Info info_op_cancelaciones = new cp_orden_pago_cancelaciones_Info(); info_op_cancelaciones.IdEmpresa = info_archivo.IdEmpresa; info_op_cancelaciones.Idcancelacion = 0; info_op_cancelaciones.Secuencia = 0; info_op_cancelaciones.IdEmpresa_op = det_op.IdEmpresa; info_op_cancelaciones.IdOrdenPago_op = det_op.IdOrdenPago; info_op_cancelaciones.Secuencia_op = det_op.Secuencia; info_op_cancelaciones.IdEmpresa_cxp = det_op.IdEmpresa_cxp; info_op_cancelaciones.IdTipoCbte_cxp = det_op.IdTipoCbte_cxp; info_op_cancelaciones.IdCbteCble_cxp = det_op.IdCbteCble_cxp; info_op_cancelaciones.MontoAplicado = det_op.Valor_a_pagar; info_op_cancelaciones.SaldoActual = 0; info_op_cancelaciones.SaldoAnterior = 0; info_op_cancelaciones.Observacion = "Canc./ de OP con Archivo bancario x " + info_archivo.IdProceso_bancario + " #" + info_archivo.IdArchivo.ToString(); info_op_cancelaciones.fechaTransaccion = info_archivo.Fecha; list_op_cancelaciones.Add(info_op_cancelaciones); #endregion ct_Cbtecble_det_Info Haber_op = new ct_Cbtecble_det_Info(); Haber_op.IdEmpresa = info_Cbtecble_ban.info_Cbtecble.IdEmpresa; Haber_op.IdTipoCbte = info_Cbtecble_ban.info_Cbtecble.IdTipoCbte; Haber_op.IdCbteCble = 0; Haber_op.secuencia = 0; Haber_op.IdCtaCble = info_banco_cta.IdCtaCble; Haber_op.dc_Valor = Convert.ToDouble(Math.Round(Valor_total, 2, MidpointRounding.AwayFromZero)) * -1; Haber_op.dc_Observacion = Observacion; Haber_op.dc_para_conciliar = true; info_Cbtecble_ban.info_Cbtecble._cbteCble_det_lista_info.Add(Haber_op); #endregion info_Cbtecble_ban.cb_Valor = info_Cbtecble_ban.info_Cbtecble.cb_Valor = Convert.ToDouble(Math.Round(Valor_total, 2, MidpointRounding.AwayFromZero)); info_Cbtecble_ban.cb_Observacion = info_Cbtecble_ban.info_Cbtecble.cb_Observacion = Observacion; IdCbteCble = 0; #region Grabar if (bus_Cbtecble_conta.GrabarDB(info_Cbtecble_ban.info_Cbtecble, ref IdCbteCble, ref mensaje_error)) { info_Cbtecble_ban.IdBanco = info_archivo.IdBanco; info_Cbtecble_ban.IdCbteCble = IdCbteCble; info_Cbtecble_ban.IdTipoNota = info_procesos_x_empresa.IdTipoNota; bus_Cbtecble_ban.GrabarDB(info_Cbtecble_ban, ref mensaje_error); ba_Archivo_Transferencia_Det_Info info_archivo_det = new ba_Archivo_Transferencia_Det_Info(); info_archivo_det = info_archivo.Lst_Archivo_Transferencia_Det.FirstOrDefault(q => q.IdEmpresa_OP == det_op.IdEmpresa && q.IdOrdenPago == det_op.IdOrdenPago && q.Secuencia_OP == det_op.Secuencia); if (info_archivo_det != null) { info_archivo_det.IdEmpresa_pago = info_Cbtecble_ban.IdEmpresa; info_archivo_det.IdTipoCbte_pago = info_Cbtecble_ban.IdTipocbte; info_archivo_det.IdCbteCble_pago = info_Cbtecble_ban.IdCbteCble; bus_archivo_det.ModificarDB(info_archivo_det); } var list_agrup = (from q in list_op_cancelaciones group q by new { q.IdEmpresa, q.Idcancelacion, q.Secuencia, q.IdEmpresa_op, q.IdOrdenPago_op, q.Secuencia_op, q.IdEmpresa_cxp, q.IdTipoCbte_cxp, q.IdCbteCble_cxp, q.MontoAplicado, q.SaldoActual, q.SaldoAnterior, q.Observacion, q.fechaTransaccion } into Lista_agrupada select new { Lista_agrupada.Key.IdEmpresa, Lista_agrupada.Key.Idcancelacion, Lista_agrupada.Key.Secuencia, Lista_agrupada.Key.IdEmpresa_op, Lista_agrupada.Key.IdOrdenPago_op, Lista_agrupada.Key.Secuencia_op, Lista_agrupada.Key.IdEmpresa_cxp, Lista_agrupada.Key.IdTipoCbte_cxp, Lista_agrupada.Key.IdCbteCble_cxp, Lista_agrupada.Key.MontoAplicado, Lista_agrupada.Key.SaldoActual, Lista_agrupada.Key.SaldoAnterior, Lista_agrupada.Key.Observacion, Lista_agrupada.Key.fechaTransaccion }); list_op_cancelaciones = new List <cp_orden_pago_cancelaciones_Info>(); foreach (var cancelacion in list_agrup) { cp_orden_pago_cancelaciones_Info info_can = new cp_orden_pago_cancelaciones_Info(); info_can.IdEmpresa = cancelacion.IdEmpresa; info_can.Idcancelacion = cancelacion.Idcancelacion; info_can.Secuencia = cancelacion.Secuencia; info_can.IdEmpresa_op = cancelacion.IdEmpresa_op; info_can.IdOrdenPago_op = cancelacion.IdOrdenPago_op; info_can.Secuencia_op = cancelacion.Secuencia_op; info_can.IdEmpresa_cxp = cancelacion.IdEmpresa_cxp; info_can.IdTipoCbte_cxp = cancelacion.IdTipoCbte_cxp; info_can.IdCbteCble_cxp = cancelacion.IdCbteCble_cxp; info_can.MontoAplicado = cancelacion.MontoAplicado; info_can.SaldoActual = cancelacion.SaldoActual; info_can.SaldoAnterior = cancelacion.SaldoAnterior; info_can.Observacion = cancelacion.Observacion; info_can.fechaTransaccion = cancelacion.fechaTransaccion; info_can.IdEmpresa_pago = info_Cbtecble_ban.info_Cbtecble.IdEmpresa; info_can.IdTipoCbte_pago = info_Cbtecble_ban.info_Cbtecble.IdTipoCbte; info_can.IdCbteCble_pago = IdCbteCble; list_op_cancelaciones.Add(info_can); } bus_op_cancelaciones.GuardarDB(list_op_cancelaciones, info_archivo.IdEmpresa, ref mensaje_error); } } #endregion res = true; info_archivo.Contabilizado = true; #endregion } break; } Actualizar_estado_contabilizacion(info_archivo); } return(res); } catch (Exception ex) { Core.Erp.Info.Log_Exception.LoggingManager.Logger.Log(Core.Erp.Info.Log_Exception.LoggingCategory.Error, ex.Message); throw new Core.Erp.Info.Log_Exception.DalException(string.Format("", "Get_List_Archivo_transferencia", ex.Message), ex) { EntityType = typeof(ba_Archivo_Transferencia_Bus) }; } }