/// <summary>
        /// Liga los datos a los controles
        /// </summary>
        public void BindData()
        {
            //  Instanciamos el Administrador de conexiones
            lib.AdminConexiones adminConexiones = new AdminConexiones();

            //  Cargamos las conexiones actuales
            adminConexiones.CargarConexiones();

            //  Si no hay conexiones de Artus
            if (adminConexiones.Conexiones.ConexionesMetaDataArtus.Count == 0)
            {
                //  No hay conexiones Artus
                //  Solicitar una nueva conexión
                string msg = @"No hay conexiones a servidores de metadata de artus disponibles.
¿Desea crear una nueva?";

                //  Si se desea crear una nueva conexión
                if (MessageBox.Show(msg, "Confirmacion", MessageBoxButtons.YesNo, MessageBoxIcon.Question) ==
                    System.Windows.Forms.DialogResult.Yes)
                {
                    //  Mostramos la pantalla
                    MyForms.ConexionMetadataArtus.EsNueva = true;
                    MyForms.ConexionMetadataArtus.BindData();

                    //  Si llenó una nueva forma
                    if (MyForms.ConexionMetadataArtus.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        //  Volvemos a cargar las conexiónes
                        adminConexiones.CargarConexiones();

                        this.conexionMetaDataArtusBindingSource.DataSource = adminConexiones.Conexiones.ConexionesMetaDataArtus;

                        //  Cargamos los cubos
                        BindCubos();
                    }
                }
            }
            else // Si no, hay al menos una conexión
            {
                //  establecemos la fuente de datos
                this.conexionMetaDataArtusBindingSource.DataSource = adminConexiones.Conexiones.ConexionesMetaDataArtus;

                //  Cargamos los cubos
                BindCubos();
            }
        } // end ConsultarDetalle
Exemple #2
0
        /// <summary>
        /// Maneja el evento "Click" del control "GuardarButton"
        /// </summary>
        /// <param name="sender">El control "GuardarButton"</param>
        /// <param name="e">Los eventos del argumento</param>
        private void GuardarButton_Click(object sender, EventArgs e)
        {
            try
            {
                //  Abrir conexiones
                //  Agregar conexion
                //  Guardar conexiones
                //  Salir

                //  Instanciamos el administrador de conexiones
                AdminConexiones admin = new AdminConexiones();

                //  Cargamos las conexiones actuales
                admin.CargarConexiones();

                //  Obtenemos la conexión
                ConexionMetaDataArtus conn = SetConn();

                //  Variable para determinar si la conexión existe
                bool existe = false;
                int  index  = 0;

                //  Verificamos la existencia de la conexión
                if (admin.Conexiones.ConexionesMetaDataArtus.Count > 0)
                {
                    //  Recorremos las conexiónes
                    foreach (ConexionMetaDataArtus connArtus in admin.Conexiones.ConexionesMetaDataArtus)
                    {
                        //  Comparamos por nombre
                        if (connArtus.Nombre.ToUpper().Equals(conn.Nombre.ToUpper()))
                        {
                            //  Si existe, salimos del foreach
                            existe = true;
                            index  = admin.Conexiones.ConexionesMetaDataArtus.IndexOf(connArtus);
                            break;
                        } // end if
                    }     // end foreach

                    //  Si existe
                    if (existe)
                    {
                        //  Si fue declarada como nueva conexión
                        if (EsNueva)
                        {
                            throw new Exception("El nombre de la conexión ya existe. Elije otro o actualiza la conexión existente");
                        }

                        //  La actualizamos
                        admin.Conexiones.ConexionesMetaDataArtus[index].Servidor  = conn.Servidor;
                        admin.Conexiones.ConexionesMetaDataArtus[index].BaseDatos = conn.BaseDatos;
                        admin.Conexiones.ConexionesMetaDataArtus[index].Usuario   = conn.Usuario;
                        admin.Conexiones.ConexionesMetaDataArtus[index].Password  = conn.Password;
                    }
                    else // Si no
                    {
                        //  La agregamos
                        admin.Conexiones.ConexionesMetaDataArtus.Add(SetConn());
                    }
                }
                else // Si la colección está vacía
                {
                    //  Agregamos las nueva conexión
                    admin.Conexiones.ConexionesMetaDataArtus.Add(SetConn());
                }


                //  Guardamos las conexiones
                admin.Guardar();

                //  Informamos de éxito
                MessageBox.Show(
                    "Conexión guardada exitosamente",
                    "Info",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Information
                    );

                //  Recargamos las conexiones
                MyForms.Conexiones.CargarConexionesArtus();

                //  Por si se abre en modal
                this.DialogResult = System.Windows.Forms.DialogResult.OK;

                //  Cerramos la forma
                this.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(
                    ex.Message,
                    "Error",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Warning
                    );
            } // end catch
        }     // end GuardarButton_Click
Exemple #3
0
 /// <summary>
 /// Carga las conexiones de Artus
 /// </summary>
 public void CargarConexionesArtus()
 {
     AdminConexiones = new AdminConexiones();
     AdminConexiones.CargarConexiones();
     this.conexionArtusBindingSource.DataSource = AdminConexiones.Conexiones.ConexionesMetaDataArtus;
 }
Exemple #4
0
        /// <summary>
        /// Maneja el evento "CellClick" del control "conexionArtusDataGridView"
        /// </summary>
        /// <param name="sender">El control "conexionArtusDataGridView"</param>
        /// <param name="e">Los argumentos del evento</param>
        private void conexionArtusDataGridView_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            try
            {
                //  Dependiendo de la celda seleccionada
                DataGridViewColumn columna = this.conexionArtusDataGridView.Columns[e.ColumnIndex];

                //  Si es la columna de eliminar la conexión
                if (columna.Name.Equals("EliminarConexion"))
                {
                    //  Mensaje a mostrar al usuario, para confirmar la eliminación
                    string msg = @"¿Realmente desea eliminar la conexión?";

                    //  Instanciamos un dialogo de confirmación
                    DialogResult dialogResult = 
                        MessageBox.Show(
                            msg, 
                            "Confirmación", 
                            MessageBoxButtons.YesNo, 
                            MessageBoxIcon.Question
                        );

                    //  Si el usuario confirmó la eliminación
                    if (dialogResult == System.Windows.Forms.DialogResult.Yes)
                    {
                        //  Obtenemos el dato de la conexión de Artus
                        //  del renglón seleccionado
                        ConexionMetaDataArtus artusConn =
                        (ConexionMetaDataArtus)this.conexionArtusDataGridView.Rows[e.RowIndex].DataBoundItem;

                        //  Inicializamos el administrador de conexiones
                        //  Eliminamos la conexión
                        //  Guardamos
                        AdminConexiones adminConexiones = new AdminConexiones();
                        adminConexiones.CargarConexiones();
                        adminConexiones.Conexiones.ConexionesMetaDataArtus.Remove(artusConn);
                        adminConexiones.Guardar();

                        //  Recargamos las conexiones de artus
                        MyForms.Conexiones.CargarConexionesArtus();
                    }
                }
                else if (columna.Name.Equals("EditConexion")) // si la columna es la de actualización
                {
                    //  Obtenemos el dato de la conexión de Artus
                    //  del renglón seleccionado
                    ConexionMetaDataArtus artusConn =
                        (ConexionMetaDataArtus)this.conexionArtusDataGridView.Rows[e.RowIndex].DataBoundItem;

                    //  Abrimosla pantalla para actualizar la conexión

                    //  Establecemos que la conexión NO es nueva
                    MyForms.ConexionMetadataArtus.EsNueva = false;

                    //  Establecemos la conexión a modificar
                    MyForms.ConexionMetadataArtus.Conexion = artusConn;

                    //  Mandamos llamar a BindData
                    MyForms.ConexionMetadataArtus.BindData();

                    //  Mostramos la forma
                    MyForms.ConexionMetadataArtus.Show();

                } // end else if                
            }
            catch (Exception ex)
            {
                MessageBox.Show(
                    ex.Message,
                    "Error",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Warning
                );

            } // end catch

        } // end NuevaConexionArtusLinkLabel_LinkClicked