Exemplo n.º 1
0
 ////////////////////////////////////////////////////////////////////////////////////////////////////
 /// <summary>   Constructor por Defecto. </summary>
 ///
 /// <remarks>   . </remarks>
 ///
 ///////////////////////////////////////////////////////////////////////////////////////////////////////
 public ENPersona()
 {
     this.dni       = "";
     this.clave     = "";
     this.nombre    = "";
     this.apellidos = "";
     this.email     = "";
     this.telefono  = "";
     this.direccion = "";
     this.ccc       = "";
     this.provincia = -1;
     this.poblacion = "";
     this.perfil    = kPerfil.pNinguno;
     this.imgData   = null;
     dsPersonas     = new DataSet();
     this.fecha     = System.DateTime.Today;
     this.sexo      = "";
 }
Exemplo n.º 2
0
        ////////////////////////////////////////////////////////////////////////////////////////////////////
        /// <summary> Método virtual. Obtiene el número de filas como resultado de una consulta. Realiza una consulta a la Base de Datos con los
        /// criterios de búsqueda seleccionados y obtiene la cantidad de filas afectadas. Este método
        /// se usa como preparación para la fucnionalidad de paginación, permitiendo ajustar los componentes
        /// visuales.</summary>
        ///
        /// <remarks>   . </remarks>
        ///
        /// <exception cref="CADException">Se recoge cuando existe algún problema en el CADPersona</exception>
        /// <exception cref="ENException">Se lanza si se ha recogido una CADException.</exception>
        ///
        /// <param name="nif">      NIF que identifica a a la persona. </param>
        /// <param name="nombre">   Nombre o Apellido. Si se usa "" no se tendrá en cuenta en la búsqueda</param>
        /// <param name="email">    Correo electrónico. Si se usa "" no se tendrá en cuenta en la búsqueda</param>
        /// <param name="perfil">   Perfil. Entero que representa el perfil. Si su valor es -1, no se tiene en cuenta en la búsqueda. </param>
        ///
        /// <returns>Entero que representa el número de filas de la consulta. </returns>
        ////////////////////////////////////////////////////////////////////////////////////////////////////
        virtual public int obtenerTamanyoConsulta(string nif, string nombre, string email, kPerfil perfil)
        {
            CADPersona cad = new CADPersona();
            DataSet    dsD = new DataSet();
            int        tam = 0;

            try
            {
                dsD = cad.BD_obtenerTamanyo(nif, nombre, email, (int)perfil);
                tam = Convert.ToInt32(dsD.Tables["Total"].Rows[0]["total"]);
            }
            catch (CADException cex)
            {
                throw new ENException(cex.Mensaje);
            }

            return(tam);
        }
Exemplo n.º 3
0
        ////////////////////////////////////////////////////////////////////////////////////////////////////
        /// <summary>
        /// Sobrecargado (1). Método virtual Obtener personas. Obtiene un DataView generado desde una
        /// DataSet con el resultado de la consulta y que queda preparado para ser mostrado en la parte
        /// visual.
        /// </summary>
        ///
        ///
        /// <remarks>   EL DataTable obtenido por el método <see cref="ObtenerVistaPersona">ObtenerVistaPersona</see>, se trasforma a DataView
        /// y se devuelve a la vista. . </remarks>
        ///
        /// <exception cref="CADException"> Se recoge cuando existe algún problema en el CADPersona. </exception>
        /// <exception cref="ENException">  Se lanza si se ha recogido una CADException o si el
        ///
        /// <param name="nif">      NIF que identifica a a la persona. </param>
        /// <param name="nombre">   Nombre o Apellido. Si se usa "" no se tendrá en cuenta en la
        ///                         búsqueda. </param>
        /// <param name="email">    Correo electrónico. Si se usa "" no se tendrá en cuenta en la
        ///                         búsqueda. </param>
        /// <param name="perfil">   Perfil. Entero que representa el perfil. Si su valor es -1, no se
        ///                         tiene en cuenta en la búsqueda. </param>
        /// <param name="desde">    Valor entero que representa el registro desde el cual se obtendrán los datos. </param>
        /// <param name="cantidad"> Valor entero que representa cuantos registros como máximo debemos obtener apartir de 'desde'. </param>
        ///
        /// <returns>   . </returns>
        ///
        ///                                     Datase está vacío. </exception>
        ////////////////////////////////////////////////////////////////////////////////////////////////////
        virtual public DataView obtenerPersonas(string nif, string nombre, string email, kPerfil perfil, int desde, int cantidad)
        {
            CADPersona cad        = new CADPersona();
            DataView   dvPersonas = new DataView();
            ArrayList  contenedor = new ArrayList();

            DataSet dsRes = new DataSet();

            try
            {
                dsRes = cad.BD_obtenerPersonas(nif, nombre, email, (int)perfil, desde, cantidad);

                if (dsRes.Tables.Count > 0)
                {
                    dvPersonas = (ObtenerVistaPersonas(dsRes)).DefaultView;
                    dsPersonas = dsRes.Copy();
                }
                else
                {
                    throw new ENException("DataSet vacío", 0);
                }
            }
            catch (CADException cex)
            {
                throw new ENException(cex.Mensaje);
            }
            return(dvPersonas);
        }
Exemplo n.º 4
0
        ////////////////////////////////////////////////////////////////////////////////////////////////////
        /// <summary>   Event handler. Called by btnBuscar for click events. </summary>
        ///
        /// <remarks>   . </remarks>
        ///
        /// <param name="sender">   Source of the event. </param>
        /// <param name="e">        Event information. </param>
        ////////////////////////////////////////////////////////////////////////////////////////////////////
        private void btnBuscar_Click(object sender, EventArgs e)
        {
            MetodoBusqueda = btnBuscar_Click;
            DataView dvResultado = new DataView();
            kPerfil  p           = (kPerfil)cbPerfilBuscar.SelectedIndex - 1;

            try
            {
                if (Paginar)
                {
                    // Obtenemos el tamaño de la consulta
                    TOTAL_registros = administrador.obtenerTamanyoConsulta(mtbNIFBuscar.Text, tbNombreBuscar.Text, tbEmailBuscar.Text, p);

                    // Si el total de filas es inferior al número de resgistros por página, se desactiva la paginación
                    if (TOTAL_registros <= MIN_PAGINA_registros)
                    {
                        throw new Exception("Excepción de paginación");
                    }
                    else
                    {
                        // Si el total de filas obtenidas es menos que el registro que estabamos mostrando -> actualizamos el registro actual
                        if (esDesbordamientoPagina(ACTUAL_registro))
                        {
                            ACTUAL_registro = TOTAL_registros - (TOTAL_registros % PAGINA_registros) + 1;
                        }
                        else if (esUltimaPagina(ACTUAL_registro))
                        {
                            btnPaginaSiguiente.Visible = false;
                            btnPaginaUltima.Visible    = false;
                        }
                        else
                        {
                            btnPaginaSiguiente.Visible = true;
                            btnPaginaUltima.Visible    = true;
                        }
                        MensajePaginacion(etInfoPAG, getNumPaginaActual(ACTUAL_registro), getNumPaginasTotales());
                        dvResultado = administrador.obtenerPersonas(mtbNIFBuscar.Text, tbNombreBuscar.Text, tbEmailBuscar.Text, p, ACTUAL_registro, PAGINA_registros);
                    }
                }
                else
                {
                    dvResultado     = administrador.obtenerPersonas(mtbNIFBuscar.Text, tbNombreBuscar.Text, tbEmailBuscar.Text, p);
                    TOTAL_registros = dvResultado.Table.Rows.Count;
                    if (TOTAL_registros <= MIN_PAGINA_registros)
                    {
                        chkPaginacion.Enabled = false;
                    }
                    else
                    {
                        chkPaginacion.Enabled = true;
                    }
                }
                dgvPersonas.DataSource = dvResultado;

                if (dvResultado.Count > 0)
                {
                    darFormatoDataGrid();
                }
                gbInfoCON.Visible = true;

                if (dvResultado.Count == 0)
                {
                    dgvPersonas.Visible = false;
                }
                else
                {
                    dgvPersonas.Visible = true;
                }

                if (dvResultado.Count == 1)
                {
                    MensajeSistema(etInfoCON, "Se ha obtenido 1 resultado.", kMensajeSistema.mCORRECTO);
                }
                else
                {
                    MensajeSistema(etInfoCON, "Se han obtenido " + dvResultado.Count + " resultados.", kMensajeSistema.mCORRECTO);
                }
            }
            catch (ENException enex)
            {
                if (enex.Tipo != -1)
                {
                    MensajeSistema(etInfoCON, enex.Message, kMensajeSistema.mADVERTENCIA);
                }
                else
                {
                    MensajeSistema(etInfoCON, enex.Message, kMensajeSistema.mERROR);
                }

                gbInfoCON.Visible = true;
            }
            catch (Exception ex)
            {
                chkPaginacion.Checked = false;
                chkPaginacion_CheckedChanged((CheckBox)chkPaginacion, null);
                MensajeSistema(etInfoCON, "Se ha desactivado la paginación debido a que sólo hay 1 página", kMensajeSistema.mADVERTENCIA);
                chkPaginacion.Enabled = false;
            }
        }