private Det_Cotizacion_OV_EventosTareas SelectOne(Int32 CCOT_Numero, Int16 CCOT_Tipo, Int16 EVEN_Item)
 {
     try
     {
         Det_Cotizacion_OV_EventosTareas item = new Det_Cotizacion_OV_EventosTareas();
         DataAccessEnterpriseSQL.DAAsignarProcedure("COM_EVENSS_UnReg");
         DataAccessEnterpriseSQL.DAAgregarParametro("@pintCCOT_Numero", CCOT_Numero, SqlDbType.Int, 4, ParameterDirection.Input);
         DataAccessEnterpriseSQL.DAAgregarParametro("@psinCCOT_Tipo", CCOT_Tipo, SqlDbType.SmallInt, 2, ParameterDirection.Input);
         DataAccessEnterpriseSQL.DAAgregarParametro("@psinEVEN_Item", EVEN_Item, SqlDbType.SmallInt, 2, ParameterDirection.Input);
         using (IDataReader reader = DataAccessEnterpriseSQL.DAExecuteReader())
         {
             if (reader.Read())
             {
                 Loader.LoadEntity(reader, item);
                 item.Instance = InstanceEntity.Unchanged;
             }
             else
             {
                 throw new Exception("No se encontro el registro.");
             }
         }
         return(item);
     }
     catch (Exception ex)
     { throw ex; }
 }
        private bool Delete(ref Det_Cotizacion_OV_EventosTareas item)
        {
            try
            {
                if (item.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Deleted)
                {
                    DataAccessEnterpriseSQL.DAAsignarProcedure("COM_EVENSD_UnReg");
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pintCCOT_Numero", item.CCOT_Numero, SqlDbType.Int, 4, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@psinCCOT_Tipo", item.CCOT_Tipo, SqlDbType.SmallInt, 2, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@psinEVEN_Item", item.EVEN_Item, SqlDbType.SmallInt, 2, ParameterDirection.Input);

                    if (DataAccessEnterpriseSQL.DAExecuteNonQuery() > 0)
                    {
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
                else
                {
                    return(true);
                }
            }
            catch (Exception ex)
            { throw ex; }
        }
        public void GenerarEventosTareas(String Observacion_Evento, String Codigo_Evento, Cab_Cotizacion_OV oItem)
        {
            try
            {
                //ItemsEventosTareas = new ObservableCollection<Det_Cotizacion_OV_EventosTareas>();
                //int pos = 1;
                //Int32 _CCOT_NumActual = 0;

                //if (DT_OV != null && DT_OV.Rows.Count > 0)
                //{
                //    foreach (System.Data.DataRow drOV in DT_OV.Rows)
                //    {
                //        if ((Convert.ToInt32(drOV["CCOT_Numero"])) != _CCOT_NumActual)
                //        {
                //            _CCOT_NumActual = (Convert.ToInt32(drOV["CCOT_Numero"]));

                ItemEventoTarea                    = new Det_Cotizacion_OV_EventosTareas();
                ItemEventoTarea.CCOT_Numero        = oItem.CCOT_Numero;
                ItemEventoTarea.CCOT_Tipo          = oItem.CCOT_Tipo;
                ItemEventoTarea.EVEN_Fecha         = DateTime.Now;
                ItemEventoTarea.EVEN_Cumplida      = true;
                ItemEventoTarea.EVEN_Usuario       = Session.UserName;
                ItemEventoTarea.EVEN_Observaciones = Observacion_Evento;
                ItemEventoTarea.TIPO_TabEVE        = "EVE";
                ItemEventoTarea.TIPO_CodEVE        = Codigo_Evento;
                if (ListConstantesMOD != null && ListConstantesMOD.Count > 0 && ListConstantesMOD.First() != null)
                {
                    ItemEventoTarea.CONS_TabMOD = ListConstantesMOD.First().CONS_CodTabla;
                    ItemEventoTarea.CONS_CodMOD = ListConstantesMOD.First().CONS_CodTipo;
                }
                ItemEventoTarea.EVEN_Manual = false;

                ItemEventoTarea.AUDI_UsrCrea = Session.UserName;
                ItemEventoTarea.AUDI_FecCrea = Session.Fecha;

                ItemEventoTarea.Instance = Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added;
                Client.SaveDet_Cotizacion_OV_EventosTareas(ItemEventoTarea);
                // ItemsEventosTareas.Add(ItemEventoTarea);
                //        }
                //        else
                //        { _CCOT_NumActual = (Convert.ToInt32(drOV["CCOT_Numero"])); }
                //        if (DT_OV.Rows.Count == pos)
                //        {
                //            if ((Client.SaveDet_Cotizacion_OV_EventosTareas(ItemsEventosTareas)))
                //            {
                //                //Infrastructure.WinForms.Controls.Dialogos.MostrarMensajeInformacion(Title, "Se han Generado Eventos");
                //            }
                //        }
                //        pos++;
                //    }
                //}
                //else
                //{ Infrastructure.WinForms.Controls.Dialogos.MostrarMensajeInformacion(Title, "No hay Ordenes de venta para generar eventos."); }
            }
            catch (Exception ex)
            {
                Infrastructure.WinForms.Controls.Dialogos.MostrarMensajeError(Title, "Error al momento de generar Eventos", ex);
            }
        }
        public BLDet_Cotizacion_OV_EventosTareas(IUnityContainer container)
        {
            this.ContainerService = container;
            Loader = new BusinessEntityLoader <Det_Cotizacion_OV_EventosTareas>();
            Det_Cotizacion_OV_EventosTareas item = new Det_Cotizacion_OV_EventosTareas();

            Loader.EntityType = item.GetType();
        }
Esempio n. 5
0
 public Boolean SaveDet_Cotizacion_OV_EventosTareas(ref Det_Cotizacion_OV_EventosTareas Item)
 {
     try
     {
         if (Item.Instance != Infrastructure.Aspect.BusinessEntity.InstanceEntity.Unchanged)
         {
             return(BL_Det_Cotizacion_OV_EventosTareas.Save(ref Item));
         }
         return(true);
     }
     catch (Exception)
     { throw; }
 }
        private bool Insert(ref Det_Cotizacion_OV_EventosTareas item)
        {
            try
            {
                if (item.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added)
                {
                    DataAccessEnterpriseSQL.DAAsignarProcedure("COM_EVENSI_UnReg");
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pintCCOT_Numero", item.CCOT_Numero, SqlDbType.Int, 4, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@psinCCOT_Tipo", item.CCOT_Tipo, SqlDbType.SmallInt, 2, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@psinEVEN_Item", item.EVEN_Item, SqlDbType.SmallInt, 2, ParameterDirection.InputOutput);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pdtmEVEN_Fecha", item.EVEN_Fecha, SqlDbType.DateTime, 8, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pbitEVEN_Cumplida", item.EVEN_Cumplida, SqlDbType.Bit, 1, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pvchEVEN_Usuario", item.EVEN_Usuario, SqlDbType.VarChar, 20, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pvchEVEN_Observaciones", item.EVEN_Observaciones, SqlDbType.VarChar, 8000, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pchrTIPO_TabEVE", item.TIPO_TabEVE, SqlDbType.Char, 3, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pchrTIPO_CodEVE", item.TIPO_CodEVE, SqlDbType.Char, 3, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pchrCONS_TabMOD", item.CONS_TabMOD, SqlDbType.Char, 3, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pchrCONS_CodMOD", item.CONS_CodMOD, SqlDbType.Char, 3, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pbitEVEN_Manual", item.EVEN_Manual, SqlDbType.Bit, 1, ParameterDirection.Input);

                    DataAccessEnterpriseSQL.DAAgregarParametro("@pvchAUDI_UsrCrea", item.AUDI_UsrCrea, SqlDbType.VarChar, 20, ParameterDirection.Input);

                    if (DataAccessEnterpriseSQL.DAExecuteNonQuery() > 0)
                    {
                        //Int32 _CCOT_Numero;
                        //if (Int32.TryParse(DataAccessEnterpriseSQL.DASqlCommand.Parameters["@pintCCOT_Numero"].Value.ToString(), out _CCOT_Numero))
                        //{ item.CCOT_Numero = _CCOT_Numero; }
                        //Int16 _CCOT_Tipo;
                        //if (Int16.TryParse(DataAccessEnterpriseSQL.DASqlCommand.Parameters["@psinCCOT_Tipo"].Value.ToString(), out _CCOT_Tipo))
                        //{ item.CCOT_Tipo = _CCOT_Tipo; }
                        Int16 _EVEN_Item;
                        if (Int16.TryParse(DataAccessEnterpriseSQL.DASqlCommand.Parameters["@psinEVEN_Item"].Value.ToString(), out _EVEN_Item))
                        {
                            item.EVEN_Item = _EVEN_Item;
                        }
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
                else
                {
                    return(true);
                }
            }
            catch (Exception ex)
            { throw ex; }
        }
Esempio n. 7
0
        public Boolean Save(ref Det_Cotizacion_OV_EventosTareas Item, Boolean Tran)
        {
            try
            {
                Boolean m_isCorrect = true;
                if (Tran)
                {
                    Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DABeginTransaction();
                }
                switch (Item.Instance)
                {
                case Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added:
                    m_isCorrect = Insert(ref Item); break;

                case Infrastructure.Aspect.BusinessEntity.InstanceEntity.Modified:
                    m_isCorrect = Update(ref Item); break;

                case Infrastructure.Aspect.BusinessEntity.InstanceEntity.Deleted:
                    m_isCorrect = Delete(ref Item); break;
                }
                if (m_isCorrect)
                {
                    if (Tran)
                    {
                        Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DACommitTransaction();
                    }
                }
                else
                {
                    if (Tran)
                    {
                        Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DARollbackTransaction();
                    }
                }
                return(m_isCorrect);
            }
            catch (Exception)
            { if (Tran)
              {
                  Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DARollbackTransaction();
              }
              throw; }
        }
 private ObservableCollection <Det_Cotizacion_OV_EventosTareas> SelectAll()
 {
     try
     {
         ObservableCollection <Det_Cotizacion_OV_EventosTareas> items = new ObservableCollection <Det_Cotizacion_OV_EventosTareas>();
         Det_Cotizacion_OV_EventosTareas item = new Det_Cotizacion_OV_EventosTareas();
         DataAccessEnterpriseSQL.DAAsignarProcedure("COM_EVENSS_Todos");
         using (IDataReader reader = DataAccessEnterpriseSQL.DAExecuteReader())
         {
             while (reader.Read())
             {
                 item = new Det_Cotizacion_OV_EventosTareas();
                 Loader.LoadEntity(reader, item);
                 item.Instance = InstanceEntity.Unchanged;
                 items.Add(item);
             }
         }
         return(items);
     }
     catch (Exception ex)
     { throw ex; }
 }
        private bool Update(ref Det_Cotizacion_OV_EventosTareas item)
        {
            try
            {
                if (item.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Modified)
                {
                    DataAccessEnterpriseSQL.DAAsignarProcedure("COM_EVENSU_UnReg");
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pintCCOT_Numero", item.CCOT_Numero, SqlDbType.Int, 4, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@psinCCOT_Tipo", item.CCOT_Tipo, SqlDbType.SmallInt, 2, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@psinEVEN_Item", item.EVEN_Item, SqlDbType.SmallInt, 2, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pdtmEVEN_Fecha", item.EVEN_Fecha, SqlDbType.DateTime, 8, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pbitEVEN_Cumplida", item.EVEN_Cumplida, SqlDbType.Bit, 1, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pvchEVEN_Usuario", item.EVEN_Usuario, SqlDbType.VarChar, 20, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pvchEVEN_Observaciones", item.EVEN_Observaciones, SqlDbType.VarChar, 8000, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pchrTIPO_TabEVE", item.TIPO_TabEVE, SqlDbType.Char, 3, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pchrTIPO_CodEVE", item.TIPO_CodEVE, SqlDbType.Char, 3, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pchrCONS_TabMOD", item.CONS_TabMOD, SqlDbType.Char, 3, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pchrCONS_CodMOD", item.CONS_CodMOD, SqlDbType.Char, 3, ParameterDirection.Input);
                    DataAccessEnterpriseSQL.DAAgregarParametro("@pbitEVEN_Manual", item.EVEN_Manual, SqlDbType.Bit, 1, ParameterDirection.Input);

                    DataAccessEnterpriseSQL.DAAgregarParametro("@pvchAUDI_UsrMod", item.AUDI_UsrMod, SqlDbType.VarChar, 20, ParameterDirection.Input);

                    if (DataAccessEnterpriseSQL.DAExecuteNonQuery() > 0)
                    {
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
                else
                {
                    return(true);
                }
            }
            catch (Exception ex)
            { throw ex; }
        }
Esempio n. 10
0
        public void GenerarEventosTareas(String Observacion_Evento, String Codigo_Evento, Int32 x_CCOT_Numero, Int16 x_CCOT_Tipo)
        {
            try
            {
                ItemsEventosTareas                 = new ObservableCollection <Det_Cotizacion_OV_EventosTareas>();
                ItemEventoTarea                    = new Det_Cotizacion_OV_EventosTareas();
                ItemEventoTarea.CCOT_Numero        = x_CCOT_Numero;
                ItemEventoTarea.CCOT_Tipo          = x_CCOT_Tipo;
                ItemEventoTarea.EVEN_Fecha         = DateTime.Now;
                ItemEventoTarea.EVEN_Cumplida      = true;
                ItemEventoTarea.EVEN_Usuario       = Session.UserName;
                ItemEventoTarea.EVEN_Observaciones = Observacion_Evento;
                ItemEventoTarea.TIPO_TabEVE        = "EVE";
                ItemEventoTarea.TIPO_CodEVE        = Codigo_Evento;
                if (ListConstantesMOD != null && ListConstantesMOD.Count > 0 && ListConstantesMOD.First() != null)
                {
                    ItemEventoTarea.CONS_TabMOD = ListConstantesMOD.First().CONS_CodTabla;
                    ItemEventoTarea.CONS_CodMOD = ListConstantesMOD.First().CONS_CodTipo;
                }
                ItemEventoTarea.EVEN_Manual = false;

                ItemEventoTarea.AUDI_UsrCrea = Session.UserName;
                ItemEventoTarea.AUDI_FecCrea = Session.Fecha;

                ItemEventoTarea.Instance = Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added;

                ItemsEventosTareas.Add(ItemEventoTarea);

                if ((Client.SaveDet_Cotizacion_OV_EventosTareas(ItemsEventosTareas)))
                {
                    Infrastructure.WinForms.Controls.Dialogos.MostrarMensajeInformacion(Title, "Se han Generado Eventos");
                }
            }
            catch (Exception ex)
            {
                Infrastructure.WinForms.Controls.Dialogos.MostrarMensajeError(Title, "Error al momento de generar Eventos", ex);
            }
        }
 private ObservableCollection <Det_Cotizacion_OV_EventosTareas> SelectAllByCotizacion_OV(Int32 CCOT_Numero, Int16 CCOT_Tipo)
 {
     try
     {
         ObservableCollection <Det_Cotizacion_OV_EventosTareas> items = new ObservableCollection <Det_Cotizacion_OV_EventosTareas>();
         Det_Cotizacion_OV_EventosTareas item = new Det_Cotizacion_OV_EventosTareas();
         DataAccessEnterpriseSQL.DAAsignarProcedure("COM_EVENSS_Todos");
         DataAccessEnterpriseSQL.DAAgregarParametro("@pintCCOT_Numero", CCOT_Numero, SqlDbType.Int, 4, ParameterDirection.Input);
         DataAccessEnterpriseSQL.DAAgregarParametro("@psinCCOT_Tipo", CCOT_Tipo, SqlDbType.SmallInt, 2, ParameterDirection.Input);
         using (IDataReader reader = DataAccessEnterpriseSQL.DAExecuteReader())
         {
             while (reader.Read())
             {
                 item = new Det_Cotizacion_OV_EventosTareas();
                 Loader.LoadEntity(reader, item);
                 item.Instance = InstanceEntity.Unchanged;
                 items.Add(item);
             }
         }
         return(items);
     }
     catch (Exception ex)
     { throw ex; }
 }
        public Boolean OPE_Save(ref Cab_Cotizacion_OV Item, ref String CCOT_MensajeError)
        {
            Boolean m_isCorrect = true;
            Boolean m_isAdded   = true;
            String  m_usuario   = "";

            try
            {
                Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DABeginTransaction();
                if (Item.Instance != Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added && !OPE_ValidateVersion(ref Item))
                {
                    Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DARollbackTransaction();

                    Item = OPE_SelectOne(Item.EMPR_Codigo.Value, Item.SUCR_Codigo.Value, Item.CCOT_Tipo, Item.CCOT_Numero);
                    CCOT_MensajeError = String.Format("El registro que esta editando ha sido modificado(Usuario: {0} - Fecha: {1}), el sistema cargará el registro con los valores actualizados, sus cambios no se han guardado.", (!String.IsNullOrEmpty(Item.AUDI_UsrMod) ? Item.AUDI_UsrMod : ""), (Item.AUDI_FecMod.HasValue ? Item.AUDI_FecMod.Value.ToLongDateString() : ""));

                    return(false);
                }
                else
                {
                    switch (Item.Instance)
                    {
                    case Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added:
                        m_isCorrect = OPE_Insert(ref Item); m_isAdded = true; m_usuario = Item.AUDI_UsrCrea; break;

                    case Infrastructure.Aspect.BusinessEntity.InstanceEntity.Modified:
                        m_isCorrect = OPE_Update(ref Item); m_isAdded = false; m_usuario = Item.AUDI_UsrMod; break;

                    case Infrastructure.Aspect.BusinessEntity.InstanceEntity.Deleted:
                        m_isCorrect = OPE_Delete(ref Item);

                        if (m_isCorrect)
                        {
                            Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DACommitTransaction(); return(true);
                        }
                        else
                        {
                            Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DARollbackTransaction(); return(false);
                        }
                    }
                    if (m_isCorrect)
                    {
                        for (int indexFlete = 0; indexFlete < Item.ItemsFlete.Count; indexFlete++)
                        {
                            Det_Cotizacion_OV_Flete _itemFlete = Item.ItemsFlete[indexFlete];
                            _itemFlete.CCOT_Tipo   = Item.CCOT_Tipo;
                            _itemFlete.CCOT_Numero = Item.CCOT_Numero;

                            if (_itemFlete.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added)
                            {
                                _itemFlete.AUDI_UsrCrea = m_usuario;
                            }
                            else if (_itemFlete.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Modified)
                            {
                                _itemFlete.AUDI_UsrMod = m_usuario;
                            }

                            m_isCorrect = BL_Det_Cotizacion_OV_Flete.Save(ref _itemFlete, false);
                            if (!m_isCorrect)
                            {
                                break;
                            }
                        }
                        if (m_isCorrect)
                        {
                            for (int indexFlete = 0; indexFlete < Item.ItemsFleteDeleted.Count; indexFlete++)
                            {
                                Det_Cotizacion_OV_Flete _itemFlete = Item.ItemsFleteDeleted[indexFlete];
                                _itemFlete.CCOT_Tipo   = Item.CCOT_Tipo;
                                _itemFlete.CCOT_Numero = Item.CCOT_Numero;
                                m_isCorrect            = BL_Det_Cotizacion_OV_Flete.Save(ref _itemFlete, false);
                                if (!m_isCorrect)
                                {
                                    break;
                                }
                            }
                        }
                        if (m_isCorrect)
                        {
                            for (int indexServicio = 0; indexServicio < Item.ItemsServicio.Count; indexServicio++)
                            {
                                Det_Cotizacion_OV_Servicio _itemServicio = Item.ItemsServicio[indexServicio];
                                _itemServicio.CCOT_Tipo   = Item.CCOT_Tipo;
                                _itemServicio.CCOT_Numero = Item.CCOT_Numero;

                                if (_itemServicio.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added)
                                {
                                    _itemServicio.AUDI_UsrCrea = m_usuario;
                                }
                                else if (_itemServicio.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Modified)
                                {
                                    _itemServicio.AUDI_UsrMod = m_usuario;
                                }

                                m_isCorrect = BL_Det_Cotizacion_OV_Servicio.Save(ref _itemServicio, false);
                                if (!m_isCorrect)
                                {
                                    break;
                                }
                            }
                        }
                        if (m_isCorrect)
                        {
                            for (int indexServicio = 0; indexServicio < Item.ItemsServicioDeleted.Count; indexServicio++)
                            {
                                Det_Cotizacion_OV_Servicio _itemServicio = Item.ItemsServicioDeleted[indexServicio];
                                _itemServicio.CCOT_Tipo   = Item.CCOT_Tipo;
                                _itemServicio.CCOT_Numero = Item.CCOT_Numero;
                                m_isCorrect = BL_Det_Cotizacion_OV_Servicio.Save(ref _itemServicio, false);
                                if (!m_isCorrect)
                                {
                                    break;
                                }
                            }
                        }

                        if (m_isCorrect)
                        {
                            for (int indexServicioChangeControl = 0; indexServicioChangeControl < Item.ItemsServicioChangeControl.Count; indexServicioChangeControl++)
                            {
                                Det_Cotizacion_OV_Servicio _itemServicioChangeControl = Item.ItemsServicioChangeControl[indexServicioChangeControl];
                                _itemServicioChangeControl.CCOT_Tipo   = Item.CCOT_Tipo;
                                _itemServicioChangeControl.CCOT_Numero = Item.CCOT_Numero;

                                if (_itemServicioChangeControl.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added)
                                {
                                    _itemServicioChangeControl.AUDI_UsrCrea = m_usuario;
                                }
                                else if (_itemServicioChangeControl.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Modified)
                                {
                                    _itemServicioChangeControl.AUDI_UsrMod = m_usuario;
                                }

                                m_isCorrect = BL_Det_Cotizacion_OV_Servicio.Save(ref _itemServicioChangeControl, false);
                                if (!m_isCorrect)
                                {
                                    break;
                                }
                            }
                        }
                        if (m_isCorrect)
                        {
                            for (int indexServicioChangeControl = 0; indexServicioChangeControl < Item.ItemsServicioChangeControlDeleted.Count; indexServicioChangeControl++)
                            {
                                Det_Cotizacion_OV_Servicio _itemServicioChangeControl = Item.ItemsServicioChangeControlDeleted[indexServicioChangeControl];
                                _itemServicioChangeControl.CCOT_Tipo   = Item.CCOT_Tipo;
                                _itemServicioChangeControl.CCOT_Numero = Item.CCOT_Numero;
                                m_isCorrect = BL_Det_Cotizacion_OV_Servicio.Save(ref _itemServicioChangeControl, false);
                                if (!m_isCorrect)
                                {
                                    break;
                                }
                            }
                        }

                        if (m_isCorrect)
                        {
                            for (int indexEventoServicio = 0; indexEventoServicio < Item.ItemsEventosTareas.Count; indexEventoServicio++)
                            {
                                Det_Cotizacion_OV_EventosTareas _itemEventoTarea = Item.ItemsEventosTareas[indexEventoServicio];
                                _itemEventoTarea.CCOT_Tipo   = Item.CCOT_Tipo;
                                _itemEventoTarea.CCOT_Numero = Item.CCOT_Numero;

                                if (_itemEventoTarea.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added)
                                {
                                    _itemEventoTarea.AUDI_UsrCrea = m_usuario;
                                }
                                else if (_itemEventoTarea.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Modified)
                                {
                                    _itemEventoTarea.AUDI_UsrMod = m_usuario;
                                }

                                m_isCorrect = BL_EventosTareas.Save(ref _itemEventoTarea, false);
                                if (!m_isCorrect)
                                {
                                    break;
                                }
                            }
                        }
                        if (m_isCorrect)
                        {
                            for (int indexEventoServicio = 0; indexEventoServicio < Item.ItemsEventosTareasDeleted.Count; indexEventoServicio++)
                            {
                                Det_Cotizacion_OV_EventosTareas _itemEventoTarea = Item.ItemsEventosTareasDeleted[indexEventoServicio];
                                _itemEventoTarea.CCOT_Tipo   = Item.CCOT_Tipo;
                                _itemEventoTarea.CCOT_Numero = Item.CCOT_Numero;
                                _itemEventoTarea.Instance    = Infrastructure.Aspect.BusinessEntity.InstanceEntity.Deleted;
                                m_isCorrect = BL_EventosTareas.Save(ref _itemEventoTarea, false);
                                if (!m_isCorrect)
                                {
                                    break;
                                }
                            }
                        }

                        if (m_isCorrect)
                        {
                            for (int indexAnexos = 0; indexAnexos < Item.ItemsAnexos.Count; indexAnexos++)
                            {
                                Anexos _itemAnexo = Item.ItemsAnexos[indexAnexos];
                                _itemAnexo.CCOT_Tipo   = Item.CCOT_Tipo;
                                _itemAnexo.CCOT_Numero = Item.CCOT_Numero;

                                if (_itemAnexo.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added)
                                {
                                    _itemAnexo.AUDI_UsrCrea = m_usuario;
                                }
                                else if (_itemAnexo.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Modified)
                                {
                                    _itemAnexo.AUDI_UsrMod = m_usuario;
                                }

                                m_isCorrect = BL_Anexos.Save(ref _itemAnexo);
                                if (!m_isCorrect)
                                {
                                    break;
                                }
                            }
                        }
                        if (m_isCorrect)
                        {
                            for (int indexAnexos = 0; indexAnexos < Item.ItemsAnexosDeleted.Count; indexAnexos++)
                            {
                                Anexos _itemAnexo = Item.ItemsAnexosDeleted[indexAnexos];
                                _itemAnexo.CCOT_Tipo   = Item.CCOT_Tipo;
                                _itemAnexo.CCOT_Numero = Item.CCOT_Numero;
                                m_isCorrect            = BL_Anexos.Save(ref _itemAnexo);
                                if (!m_isCorrect)
                                {
                                    break;
                                }
                            }
                        }


                        if (m_isCorrect)
                        {
                            for (int indexArchivos = 0; indexArchivos < Item.ItemsArchivo.Count; indexArchivos++)
                            {
                                Det_Cotizacion_OV_Archivo _itemArchivo = Item.ItemsArchivo[indexArchivos];

                                if (_itemArchivo.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added)
                                {
                                    _itemArchivo.AUDI_UsrCrea = m_usuario;
                                }
                                else if (_itemArchivo.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Modified)
                                {
                                    _itemArchivo.AUDI_UsrMod = m_usuario;
                                }

                                if (_itemArchivo.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Modified)
                                {
                                    m_isCorrect = BL_Det_Cotizacion_OV_Archivo.Save(ref _itemArchivo);
                                }
                                if (!m_isCorrect)
                                {
                                    break;
                                }
                            }
                        }

                        if (m_isCorrect)
                        {
                            for (int indexDet_CNTR = 0; indexDet_CNTR < Item.ItemsDet_CNTR.Count; indexDet_CNTR++)
                            {
                                Det_CNTR _itemDet_CNTR = Item.ItemsDet_CNTR[indexDet_CNTR];
                                _itemDet_CNTR.CCOT_Tipo   = Item.CCOT_Tipo;
                                _itemDet_CNTR.CCOT_Numero = Item.CCOT_Numero;

                                if (_itemDet_CNTR.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Added)
                                {
                                    _itemDet_CNTR.AUDI_UsrCrea = m_usuario;
                                }
                                else if (_itemDet_CNTR.Instance == Infrastructure.Aspect.BusinessEntity.InstanceEntity.Modified)
                                {
                                    _itemDet_CNTR.AUDI_UsrMod = m_usuario;
                                }

                                m_isCorrect = BL_Det_CNTR.Save(ref _itemDet_CNTR);
                                if (!m_isCorrect)
                                {
                                    break;
                                }
                            }
                        }
                        if (m_isCorrect)
                        {
                            for (int indexDet_CNTR = 0; indexDet_CNTR < Item.ItemsDet_CNTRDeleted.Count; indexDet_CNTR++)
                            {
                                Det_CNTR _itemDet_CNTR = Item.ItemsDet_CNTRDeleted[indexDet_CNTR];
                                _itemDet_CNTR.CCOT_Tipo   = Item.CCOT_Tipo;
                                _itemDet_CNTR.CCOT_Numero = Item.CCOT_Numero;
                                m_isCorrect = BL_Det_CNTR.Save(ref _itemDet_CNTR);
                                if (!m_isCorrect)
                                {
                                    break;
                                }
                            }
                        }

                        if (m_isCorrect)
                        {
                            m_isCorrect = InsertDetalleViaje(Item.CCOT_Tipo, Item.CCOT_Numero, m_usuario, ref CCOT_MensajeError);
                        }
                    }
                    if (m_isCorrect)
                    {
                        Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DACommitTransaction();

                        if (Item.EMPR_Codigo.HasValue && Item.SUCR_Codigo.HasValue)
                        {
                            return(true);
                        }
                        else
                        {
                            return(false);
                        }
                    }
                    else
                    {
                        Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DARollbackTransaction();
                        return(false);
                    }
                }
            }
            catch (Exception)
            { Infrastructure.Aspect.DataAccess.DataAccessEnterpriseSQL.DARollbackTransaction(); throw; }
        }