/// <summary>
        /// Método que permite eliminar 
        /// un registro en la tabla departamentoProyecto
        /// </summary>
        /// <param name="poDepartamentoProyecto">departamentoProyecto a eliminar</param>
        /// <returns>Int valor del resultado de la ejecución de la sentencia</returns>
        public static int deleteDepartamentoProyectoMasivo(cls_departamentoProyecto poDepartamentoProyecto)
        {
            int vi_resultado;

               try
               {
               String vs_comando = "PA_cont_departamento_proyectoDeleteMasivo";
               cls_parameter[] vu_parametros =
                {

                 	new cls_parameter("@paramPK_proyecto", poDepartamentoProyecto.pPK_proyecto)
                };

               cls_sqlDatabase.beginTransaction();

               vi_resultado = cls_sqlDatabase.executeNonQuery(vs_comando, true, vu_parametros);

               cls_interface.insertarTransacccionBitacora(cls_constantes.ELIMINAR, cls_constantes.DEPARTAMENTO_PROYECTO, poDepartamentoProyecto.pPK_departamento + "/Masivo", poDepartamentoProyecto.pUsuarioTransaccion);

               cls_sqlDatabase.commitTransaction();

               return vi_resultado;

               }
               catch (Exception po_exception)
               {
               cls_sqlDatabase.rollbackTransaction();
               throw new Exception("Ocurrió un error al eliminar el registro.", po_exception);
               }
        }
Пример #2
0
        /// <summary>
        /// Método que carga la información
        /// de un proyecto.
        /// </summary>
        //private void cargarObjetoProyecto()
        //{
        //    cls_proyecto vo_proyecto = null;
        //    try
        //    {
        //        vo_proyecto = new cls_proyecto();
        //        vo_proyecto = (cls_proyecto)cls_variablesSistema.vs_proyecto;
        //        this.habilitarControles(true);
        //    }
        //    catch (Exception po_exception)
        //    {
        //        throw new Exception("Ocurrió un error al cargar el registro de proyecto.", po_exception);
        //    }
        //}
        /// <summary>
        /// Guarda la información se que se encuentra
        /// en el formulario Web, ya sea
        /// para ingresar o actualizarla
        /// </summary>
        /// <returns>Int valor devuelvo por el motor de bases de datos</returns>
        private int guardarDatos()
        {
            int vi_resultado = 1;

            try
            {
                cls_proyecto vo_proyecto = this.crearObjetoProyecto();
                cls_departamento vo_dpto = new cls_departamento();
                cls_departamentoProyecto vo_dptoProyecto = new cls_departamentoProyecto();

                List<cls_departamento> vl_departamentoAsociado = departamentosAsociados();
                List<cls_departamentoProyecto> vl_departamentoProyecto = new List<cls_departamentoProyecto>();

                //El proyecto es el mismo para todos los departamentos que se vayan a insertar
                vo_dptoProyecto.pProyecto = vo_proyecto;

                //Se intenta realizar la inserción del proyecto en la tabla correspondiente
                vi_resultado = cls_gestorProyecto.insertProyecto(vo_proyecto);

                //Para cada departamento, se realiza la correspondiente inserción con el proyecto específico
                foreach (cls_departamento vo_departamento in vl_departamentoAsociado)
                {
                    vo_dptoProyecto.pDepartamento = vo_departamento;

                    vi_resultado = cls_gestorDepartamentoProyecto.insertDepartamentoProyecto(vo_dptoProyecto);
                }

                //Se realiza la inserción en las demás tablas, entregable/componente/paquete/actividad, con respecto al proyecto copiado
                vi_resultado = cls_gestorProyecto.insertProyectoCopia(vo_proyecto.pPK_proyecto, cls_variablesSistema.vs_proyecto.pPK_proyecto);

                return vi_resultado;
            }
            catch (Exception po_exception)
            {
                throw new Exception("Ocurrió un error al guardar el registro de copia del proyecto.", po_exception);
            }
        }
Пример #3
0
        /// <summary>
        /// Guarda la información se que se encuentra
        /// en el formulario Web, ya sea
        /// para ingresar o actualizarla
        /// </summary>
        /// <returns>Int valor devuelvo por el motor de bases de datos</returns>
        private int guardarDatos()
        {
            int vi_resultado = 1;

            try
            {
                cls_proyecto vo_proyecto = this.crearObjetoProyecto();
                cls_departamento vo_dpto = new cls_departamento();
                cls_departamentoProyecto vo_dptoProyecto = new cls_departamentoProyecto();

                List<cls_departamento> vl_departamentoAsociado = departamentosAsociados();
                List<cls_departamentoProyecto> vl_departamentoProyecto = new List<cls_departamentoProyecto>();

                //El proyecto es el mismo para todos los departamentos que se vayan a insertar
                vo_dptoProyecto.pProyecto = vo_proyecto;

                switch (cls_variablesSistema.tipoEstado)
                {
                    case cls_constantes.AGREGAR:

                        //Se intenta realizar la inserción del proyecto en la tabla correspondiente
                        vi_resultado = cls_gestorProyecto.insertProyecto(vo_proyecto);

                        //Para cada departamento, se realiza la correspondiente inserción con el proyecto específico
                        foreach (cls_departamento vo_departamento in vl_departamentoAsociado)
                        {
                            vo_dptoProyecto.pDepartamento = vo_departamento;

                            vi_resultado = cls_gestorDepartamentoProyecto.insertDepartamentoProyecto(vo_dptoProyecto);
                        }

                        break;

                    case cls_constantes.EDITAR:
                        vi_resultado = cls_gestorProyecto.updateProyecto(vo_proyecto);

                        //Se revisa cada departamento en la lista que presenta la variable de sistema de "proyecto", si la lista de deparmentos asociados
                        //no cuenta con el departamento de contenido en la lista de la variable de sistema, esta última se intenta eliminar
                        foreach (cls_departamento vo_departamento in cls_variablesSistema.vs_proyecto.pDepartamentoLista)
                        {
                            if (!(vl_departamentoAsociado.Where(dep => dep.pPK_departamento == vo_departamento.pPK_departamento).Count() > 0))
                            {
                                vo_dptoProyecto.pDepartamento = vo_departamento;
                                vi_resultado = cls_gestorDepartamentoProyecto.deleteDepartamentoProyecto(vo_dptoProyecto);
                            }
                        }

                        //Si alguno de los departamentos recién asociados no se encuentra en la variable del sistema, se procede a realizar la inserción de la misma
                        foreach (cls_departamento vo_departamento in vl_departamentoAsociado)
                        {
                            if (!(cls_variablesSistema.vs_proyecto.pDepartamentoLista.Where(dep => dep.pPK_departamento == vo_departamento.pPK_departamento).Count() > 0))
                            {
                                vo_dptoProyecto.pDepartamento = vo_departamento;
                                vi_resultado = cls_gestorDepartamentoProyecto.insertDepartamentoProyecto(vo_dptoProyecto);
                            }
                        }

                        break;
                    default:
                        break;
                }

                return vi_resultado;
            }
            catch (Exception po_exception)
            {
                throw new Exception("Ocurrió un error al guardar el registro de proyecto.", po_exception);
            }
        }
Пример #4
0
        /// <summary>
        /// Método que elimina un proyecto
        /// </summary>
        /// <param name="po_proyecto">Permiso a eliminar</param>
        private void eliminarDatos(cls_proyecto po_proyecto)
        {
            //Primero se intenta eliminar los departamentos asociados a un proyecto, se presenta una excepción si estos tienen también entregables asociados
            try
            {
                int vi_resultado = 1;

                cls_departamentoProyecto vo_departamentoProyecto = new cls_departamentoProyecto();
                vo_departamentoProyecto.pProyecto = po_proyecto;
                vi_resultado = cls_gestorDepartamentoProyecto.deleteDepartamentoProyectoMasivo(vo_departamentoProyecto);

            }
            catch (Exception po_exception)
            {
                throw new Exception("No se ha logralo eliminar los departamentos asociados al proyecto seleccionado.", po_exception);
            }

            //Si se eliminaron de manera correcta los departamentos asociados a proyecto, se procede a eliminar el proyecto en si
            try
            {
                cls_gestorProyecto.deleteProyecto(po_proyecto);

                this.llenarGridView();

                this.upd_Principal.Update();

            }
            catch (Exception po_exception)
            {
                throw new Exception("No se ha logralo eliminar el registro seleccionado, el proyecto podría presentar entregables asociados.", po_exception);
            }
        }
Пример #5
0
        /// <summary>
        /// Método que obtiene los departamentos asociados a un proyecto específicos
        /// </summary>
        private void cargarDepartamentoProyecto(cls_proyecto po_proyecto)
        {
            DataSet vo_dataSet = new DataSet();

            try
            {
                vo_dataSet = cls_gestorDepartamentoProyecto.selectDepartamentoProyecto(po_proyecto);
                lbx_depasociados.DataSource = vo_dataSet;
                lbx_depasociados.DataTextField = "nombre";
                lbx_depasociados.DataValueField = "PK_departamento";
                lbx_depasociados.DataBind();

                if (lbx_depasociados.Items.Count > 0)
                {
                    cls_variablesSistema.vs_proyecto = po_proyecto;

                    foreach (ListItem item in lbx_depasociados.Items)
                    {
                        cls_departamento vo_departamento = new cls_departamento();
                        cls_departamentoProyecto vo_deptoProyecto = new cls_departamentoProyecto();

                        lbx_departamentos.Items.Remove(item);

                        vo_departamento.pPK_departamento = Convert.ToInt32(item.Value);
                        vo_departamento.pNombre = item.Text;

                        vo_deptoProyecto.pProyecto = po_proyecto;
                        vo_deptoProyecto.pDepartamentoList.Add(vo_departamento);

                        cls_variablesSistema.vs_proyecto.pDepartamentoLista.Add(vo_departamento);
                        cls_variablesSistema.vs_proyecto.pDptoProyLista.Add(vo_deptoProyecto);
                    }
                }
                else
                {
                    limpiarVariablesSistema();
                }
            }
            catch (Exception po_exception)
            {
                throw new Exception("Ocurrió un error al cargar los departamentos asociados al proyecto.", po_exception);
            }
        }