예제 #1
0
        public ResultadoEntidad CancelarActualizarActivo(TemporalActivoEntidad TemporalActivoObjetoEntidad)
        {
            string CadenaConexion = string.Empty;
            TemporalAccesorioEntidad TemporalAccesorioObjetoEntidad  = new TemporalAccesorioEntidad();
            TemporalAccesorioProceso TemporalAccesorioProcesoNegocio = new TemporalAccesorioProceso();
            ResultadoEntidad         Resultado = new ResultadoEntidad();
            SqlTransaction           Transaccion;
            SqlConnection            Conexion;

            CadenaConexion = SeleccionarConexion(ConstantePrograma.DefensoriaDB_Activos);

            Conexion = new SqlConnection(CadenaConexion);
            Conexion.Open();

            Transaccion = Conexion.BeginTransaction();

            //Se eliminan fisicamente todos los accesorios nuevos de ese activo temporal
            TemporalAccesorioObjetoEntidad.GrupoEstatus     = "," + ((int)ConstantePrograma.EstatusTemporalAccesorio.Nuevo).ToString() + ",";
            TemporalAccesorioObjetoEntidad.TemporalActivoId = TemporalActivoObjetoEntidad.TemporalActivoId;
            Resultado = TemporalAccesorioProcesoNegocio.EliminarTemporalAccesorio(Conexion, Transaccion, TemporalAccesorioObjetoEntidad);

            if (Resultado.ErrorId == (int)ConstantePrograma.TemporalAccesorio.TemporalAccesorioEliminadoCorrectamente)
            {
                //Se editan los accesorios con estatus Eliminado a estatus Activo de ese activo temporal
                TemporalAccesorioObjetoEntidad.GrupoEstatus     = "," + ((int)ConstantePrograma.EstatusTemporalAccesorio.Eliminado).ToString() + ",";
                TemporalAccesorioObjetoEntidad.Estatus          = (Int16)ConstantePrograma.EstatusTemporalAccesorio.Activo;
                TemporalAccesorioObjetoEntidad.TemporalActivoId = TemporalActivoObjetoEntidad.TemporalActivoId;
                Resultado = TemporalAccesorioProcesoNegocio.ActualizarTemporalAccesorio(Conexion, Transaccion, TemporalAccesorioObjetoEntidad);

                //Si se actualizaron correctamente los accesorios, se termina la transaccion
                if (Resultado.ErrorId == (int)ConstantePrograma.TemporalAccesorio.TemporalAccesorioEditadoCorrectamente)
                {
                    Transaccion.Commit();
                }
                else
                {
                    Transaccion.Rollback();
                }
            }
            else
            {
                Transaccion.Rollback();
            }

            Conexion.Close();

            return(Resultado);
        }
예제 #2
0
        public ResultadoEntidad CancelarNuevoActivo(TemporalAccesorioEntidad TemporalAccesorioObjetoEntidad, TemporalActivoEntidad TemporalActivoObjetoEntidad)
        {
            string CadenaConexion = string.Empty;
            TemporalAccesorioProceso TemporalAccesorioProcesoNegocio = new TemporalAccesorioProceso();
            ResultadoEntidad         Resultado = new ResultadoEntidad();
            SqlTransaction           Transaccion;
            SqlConnection            Conexion;

            CadenaConexion = SeleccionarConexion(ConstantePrograma.DefensoriaDB_Activos);

            Conexion = new SqlConnection(CadenaConexion);
            Conexion.Open();

            Transaccion = Conexion.BeginTransaction();

            Resultado = TemporalAccesorioProcesoNegocio.EliminarTemporalAccesorio(Conexion, Transaccion, TemporalAccesorioObjetoEntidad);

            // Si se eliminaron los accesorios temporales exitosamente
            if (Resultado.ErrorId == (int)ConstantePrograma.TemporalAccesorio.TemporalAccesorioEliminadoCorrectamente)
            {
                //Se elimina el activo temporal
                Resultado = EliminarTemporalActivo(Conexion, Transaccion, TemporalActivoObjetoEntidad);

                if (Resultado.ErrorId == (int)ConstantePrograma.TemporalActivo.TemporalActivoEliminadoCorrectamente)
                {
                    Transaccion.Commit();
                }
                else
                {
                    Transaccion.Rollback();
                }
            }
            else
            {
                Transaccion.Rollback();
            }

            Conexion.Close();

            return(Resultado);
        }