/// <summary> /// Permite guardar el documento nota de credito, realizando las respectivas operaciones para completar el proceso en finanzas /// </summary> /// <param name="Item"></param> /// <returns></returns> public Boolean SaveNotaCredito(ref DocsVta Item) { try { Boolean m_isCorrect = true; String x_usuario = ""; Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DABeginTransaction(); switch (Item.Instance) { case Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added: m_isCorrect = InsertNotaCredito(ref Item); x_usuario = Item.AUDI_UsrCrea; /* CtaCte */ getCtaCte(ref Item); Item.ItemCtaCte.AUDI_UsrCrea = x_usuario; Item.ItemCtaCte.Instance = Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added; Item.ItemDetCtaCte.AUDI_UsrCrea = x_usuario; Item.ItemDetCtaCte.Instance = Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added; Item.ItemDetCtaCteFactura.Instance = Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added; break; case Infrastructure.Aspect.BusinessEntity.InstanceEntity.Modified: m_isCorrect = UpdateNotaCredito(ref Item); x_usuario = Item.AUDI_UsrMod; getDocsVta(ref Item); if (Item.ItemCtaCte != null) { getCtaCte(ref Item); Item.ItemCtaCte.AUDI_UsrMod = x_usuario; Item.ItemDetCtaCte.AUDI_UsrMod = x_usuario; } Item.ItemDetCtaCteFactura.AUDI_UsrMod = x_usuario; if (Item.ItemDetCtaCteFactura.Instance != Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added) { Item.ItemDetCtaCteFactura.Instance = Infrastructure.Aspect.BusinessEntity.InstanceEntity.Modified; } break; case Infrastructure.Aspect.BusinessEntity.InstanceEntity.Deleted: m_isCorrect = Delete(ref Item); break; } /* CtaCte */ Entities.CtaCte _itemCtaCte = Item.ItemCtaCte; if (_itemCtaCte != null && BL_CtaCte.Save(ref _itemCtaCte)) { Entities.DetCtaCte _itemDetCtaCte = Item.ItemDetCtaCte; _itemDetCtaCte.CCCT_Codigo = _itemCtaCte.CCCT_Codigo; _itemDetCtaCte.DCCT_MontoDebe = 0; _itemDetCtaCte.DCCT_MontoDebeD = 0; _itemDetCtaCte.DCCT_MontoHaber = Item.DOCV_ValorVtaTotal; _itemDetCtaCte.DCCT_MontoHaberD = Item.DOCV_ValorVtaTotalD; _itemDetCtaCte.CONS_TabTDC = Infrastructure.Aspect.Constants.Util.GetTTipoMovimientoDetCtaCte(); _itemDetCtaCte.CONS_CodTDC = Infrastructure.Aspect.Constants.Util.GetTTipoMovimientoDetCtaCte(Infrastructure.Aspect.Constants.TTipoMovimientoDetCtaCte.Provision); _itemDetCtaCte.DCCT_TipoCambio = Item.DOCV_TipoCambio; _itemDetCtaCte.TIPO_CodMND = Item.TIPO_CodMND; _itemDetCtaCte.TIPO_TabMND = Item.TIPO_TabMND; _itemDetCtaCte.DCCT_FechaTrans = Item.DOCV_FechaEmision.Value; _itemDetCtaCte.CCCT_CodReferencia = null; _itemDetCtaCte.DCCT_ItemReferencia = null; m_isCorrect = BL_DetCtaCte.Save(ref _itemDetCtaCte); Item.ItemDetCtaCte = _itemDetCtaCte; } /* Canjes en la Factura * * * if (m_isCorrect && Item.ItemDetCtaCteFactura.CCCT_Pendiente.HasValue && Item.ItemDetCtaCteFactura.CCCT_Pendiente > 0 && Item.ItemDetCtaCte != null) * { * Entities.DetCtaCte _itemDetCtaCte = Item.ItemDetCtaCteFactura; * _itemDetCtaCte.DCCT_MontoDebe = 0; * _itemDetCtaCte.DCCT_MontoDebeD = 0; * _itemDetCtaCte.DCCT_MontoHaber = Item.DOCV_ValorVtaTotal; * _itemDetCtaCte.DCCT_MontoHaberD = Item.DOCV_ValorVtaTotalD; * _itemDetCtaCte.CONS_TabTDC = Infrastructure.Aspect.Constants.Util.GetTTipoMovimientoDetCtaCte(); * _itemDetCtaCte.CONS_CodTDC = Infrastructure.Aspect.Constants.Util.GetTTipoMovimientoDetCtaCte(Infrastructure.Aspect.Constants.TTipoMovimientoDetCtaCte.Canje); * _itemDetCtaCte.DCCT_TipoCambio = Item.DOCV_TipoCambio; * _itemDetCtaCte.TIPO_CodMND = Item.TIPO_CodMND; * _itemDetCtaCte.TIPO_TabMND = Item.TIPO_TabMND; * _itemDetCtaCte.DCCT_FechaTrans = Item.DOCV_FechaEmision.Value; * _itemDetCtaCte.CCCT_CodReferencia = Item.ItemCtaCte.CCCT_Codigo; * _itemDetCtaCte.AUDI_UsrCrea = x_usuario; * * m_isCorrect = BL_DetCtaCte.Save(ref _itemDetCtaCte); * Item.ItemDetCtaCteFactura = _itemDetCtaCte; * } * * if (m_isCorrect && Item.ItemDetCtaCteFactura.CCCT_Pendiente.HasValue && Item.ItemDetCtaCteFactura.CCCT_Pendiente > 0 && Item.ItemDetCtaCte!= null) * { * Entities.DetCtaCte _itemDetCtaCte = Item.ItemDetCtaCte; * _itemDetCtaCte.DCCT_MontoDebe = Item.DOCV_ValorVtaTotal; * _itemDetCtaCte.DCCT_MontoDebeD = Item.DOCV_ValorVtaTotalD; * _itemDetCtaCte.DCCT_MontoHaber = 0; * _itemDetCtaCte.DCCT_MontoHaberD = 0; * _itemDetCtaCte.CONS_TabTDC = Infrastructure.Aspect.Constants.Util.GetTTipoMovimientoDetCtaCte(); * _itemDetCtaCte.CONS_CodTDC = Infrastructure.Aspect.Constants.Util.GetTTipoMovimientoDetCtaCte(Infrastructure.Aspect.Constants.TTipoMovimientoDetCtaCte.Canje); * _itemDetCtaCte.DCCT_TipoCambio = Item.DOCV_TipoCambio; * _itemDetCtaCte.TIPO_CodMND = Item.TIPO_CodMND; * _itemDetCtaCte.TIPO_TabMND = Item.TIPO_TabMND; * _itemDetCtaCte.CCCT_CodReferencia = Item.ItemDetCtaCteFactura.CCCT_Codigo; * _itemDetCtaCte.DCCT_ItemReferencia = Item.ItemDetCtaCteFactura.DCCT_Item; * _itemDetCtaCte.DCCT_FechaTrans = Item.DOCV_FechaEmision.Value; * _itemDetCtaCte.AUDI_UsrCrea = x_usuario; * * m_isCorrect = BL_DetCtaCte.Save(ref _itemDetCtaCte, DetCtaCte.TInterfazDetCtaCte.Canje); * } */ if (m_isCorrect) { Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DACommitTransaction(); } else { Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DARollbackTransaction(); } return(m_isCorrect); } catch (Exception) { Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DARollbackTransaction(); throw; } }
private Boolean GuardarDescuadre(ref Movimiento Item, String x_Usuario) { try { if (Item.TieneDescuadre && Item.GeneraCtaCte) { /* * Completar las propiedades correspondientes para guardar el Registro en la Base de Datos */ CtaCte ItemCtaCteDescuadre = Item.ItemCtaCteDescuadre; ItemCtaCteDescuadre.EMPR_Codigo = Item.EMPR_Codigo; ItemCtaCteDescuadre.SUCR_Codigo = Item.SUCR_Codigo; ItemCtaCteDescuadre.TIPE_Codigo = Item.TIPE_Codigo; ItemCtaCteDescuadre.ENTC_Codigo = Item.ENTC_Codigo; //ItemCtaCteDescuadre.TIPO_CodTDO = TIPO_CodTDO; //ItemCtaCteDescuadre.TIPO_TabTDO = TIPO_TabTDO; ItemCtaCteDescuadre.TIPO_TabMND = Item.ItemCuentasBancarias.TIPO_TabMND; ItemCtaCteDescuadre.TIPO_CodMND = Item.ItemCuentasBancarias.TIPO_CodMND; //ItemCtaCteDescuadre.CCCT_Serie = TIPO_CodTDO; //ItemCtaCteDescuadre.CCCT_Numero ItemCtaCteDescuadre.CCCT_TipoCambio = Item.MOVI_TipoCambio; ItemCtaCteDescuadre.CCCT_ValVta = Item.MOVI_MontoDescuadre; ItemCtaCteDescuadre.CCCT_Imp1 = 0; ItemCtaCteDescuadre.CCCT_Monto = Item.MOVI_MontoDescuadre; ItemCtaCteDescuadre.AUDI_UsrCrea = x_Usuario; ItemCtaCteDescuadre.CCCT_Monto = Item.MOVI_MontoDescuadre; ItemCtaCteDescuadre.MOVI_Codigo = Item.MOVI_Codigo; ItemCtaCteDescuadre.TIPO_TabDES = Item.TIPO_TabDES; ItemCtaCteDescuadre.TIPO_CodDES = Item.TIPO_CodDES; if (Item.TIPO_CodMOV.Equals(Item.GetTipoMovimiento(Entities.Movimiento.TipoMovimiento.EgresosChequeDiferido))) { ItemCtaCteDescuadre.Diferido = true; } else { ItemCtaCteDescuadre.Diferido = false; } if (BL_CtaCte.Save(ref ItemCtaCteDescuadre, CtaCte.TInterfazCtaCte.RegistroDescuadre)) { Item.ItemCtaCteDescuadre = ItemCtaCteDescuadre; return(true); } } else { if (Item.ItemCtaCteDescuadre != null && Item.ItemCtaCteDescuadre.CCCT_Codigo > 0) { Item.ItemCtaCteDescuadre.Instance = InstanceEntity.Deleted; Entities.CtaCte ItemCtaCteDescuadre = Item.ItemCtaCteDescuadre; if (BL_CtaCte.Save(ref ItemCtaCteDescuadre, CtaCte.TInterfazCtaCte.RegistroDescuadre)) { return(true); } } return(true); } return(false); } catch (Exception) { throw; } }