jueves, 9 de enero de 2020

miércoles, 12 de julio de 2017

Leer app.config C#:

Agregar la referencia al proyecto "System.Configuration" en el App.config colocar

en codigo:
 string test = "";
  test = ConfigurationManager.AppSettings.Get("server");
  MessageBox.Show("Hola esto es tes[" + test + "]");
''recordar colocar using System.Configuration;

en el app.config agregar esta seccion;
[appSettings]
        [add key="StartingMonthColumn" value="7"/]
        [add key="CategoryHeadingColumn" value="1"/]
    [/appSettings]

----------------------------------------------------------------------------------------------------
  public MySqlConnection conn;
        public Mantenimiento_escuela()
        {
            InitializeComponent();
        }

        private void Mantenimiento_escuela_Load(object sender, EventArgs e)
        {
            string test = "";
            test = ConfigurationManager.AppSettings.Get("server");
            conectar_data();
           // inserta();
        }

        public void conectar_data()
        {
            conn = new MySqlConnection();
            conn.ConnectionString = "server=localhost;User Id=root;password=root;database=examen;Persist Security Info=false;Respect Binary Flags=false;functions return string=yes;Convert Zero Datetime=True";
            conn.Open();
            string sql = "select nombre from producto";
            MySqlCommand cmd = new MySqlCommand(sql, conn);
            MySqlDataReader reader = cmd.ExecuteReader();
            string campos = "";
            while (reader.Read())
            {
                campos = reader["nombre"].ToString();
            }
            conn.Close();

            sql = "select * from producto";

            using (MySqlCommand cmdConsulta = new MySqlCommand())
            {
                cmdConsulta.CommandType = CommandType.Text;
                cmdConsulta.Connection = conn;
                cmdConsulta.CommandText = sql;
                conn.Open();
                MySqlDataAdapter da = new MySqlDataAdapter(cmdConsulta);
                DataSet ds = new DataSet();
                da.Fill(ds);
                detalle.DataSource = ds.Tables[0];
en PROPIadades del detalle se pne false el rowheadersvisible=false
            }
            conn.Close();
        }
-----------------------


----en SQLSERVER crear tabla con llave autoincrementable e indice ---------
create table prueba_tempora
(
id int identity(1,1) not null,
nombre varchar(500),
direccion varchar(500),
telefono varchar(500)
)

-----------------------
-----en C# refrescar la forma actualizar la aplicacion refrescar objeto com oqueras
  Application.DoEvents();

--Pasar un strin a int convertir un string a int en c#----
     int cheque_numero_abrir = Int32.Parse((cheque_abrir));
----------------------------
-------En C# ver cual registro esta seleccionado en un grid y limpiar todo los check
 try
            {
                int columna;
                int fila_1;
                lote_a_liberar = "";
                columna = detalle.CurrentCellAddress.X;
                fila_1 = detalle.CurrentCellAddress.Y;
             
                //LLaves de expediente llenando campos

                if (this.detalle.Rows[fila_1].Cells[columna].Value.ToString() == "True")
                {
                    //this.detalle.Rows[fila_1].Cells[columna].Value = false;
                    lote_a_liberar = detalle.Rows[fila_1].Cells[columna + 1].Value.ToString();
                }
                else
                {
                    //this.detalle.Rows[fila_1].Cells[columna].Value = true;
                }

                if (columna == 0)
                {
                    //lote_a_liberar = detalle.Rows[fila_1].Cells[columna+1].Value.ToString();
                    for (int file = 0; (file <= (this.detalle.Rows.Count - 1)); file++)
                    {
                        if (fila_1 != file)
                        {
                            this.detalle.Rows[file].Cells[columna].Value = false;
                        }
                    }
               
               }
            }
            catch
            {
            }
-----------------------------
  private void detalle_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            try
            {
                int columna;
                int fila_1;
                string id = "";
                columna = detalle.CurrentCellAddress.X;
                fila_1 = detalle.CurrentCellAddress.Y;
                //LLaves de expediente llenando campos
                id = detalle.Rows[fila_1].Cells[0].Value.ToString();
                textBox1.Text = id;
            }
            catch
            {
            }
        }
--------------------------------
  public void inserta()
        {
            conn = new MySqlConnection();
            conn.ConnectionString = "server=localhost;User Id=root;password=root;database=examen;Persist Security Info=false;Respect Binary Flags=false;functions return string=yes;Convert Zero Datetime=True";
            conn.Open();
            string sql = "insert into producto (nombre,precio) values ('libro 1221u',11999);";
            using (MySqlTransaction trans = conn.BeginTransaction())
            {
                try
                {
                    using (MySqlCommand com = new MySqlCommand(sql, conn, trans))
                    {
                        com.ExecuteNonQuery();
                    }
                    trans.Commit();
                }
                catch (Exception ex)
                {
                    trans.Rollback();
                }
            }
            conn.Close();
        }
---------------------------------------

---------------------------------Ejemplo en SQL Server c#---------------------------------------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Configuration;
namespace Caso
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        public SqlConnection conn;
        public string id_llave = "";

        private void Form1_Load(object sender, EventArgs e)
        {
            llena_detalle();
        }

        public void connectar_data()
        {
            conn = new SqlConnection();
            string conexxion = ConfigurationManager.AppSettings.Get("connectionstring");
                              //"Server=192.168.1.246;Database=Prueba;User Id=sa;Password = sa"
            conn.ConnectionString = conexxion;
        }

        public void llena_detalle()
        {
            connectar_data();
            string sql = "select nocontrol, nombre as 'Nombre', apellidouno as 'Primer Apellido', apellidodos as 'Segundo Apellido' from alumnos";
            using (SqlCommand cmdConsulta = new SqlCommand())
            {
                cmdConsulta.CommandType = CommandType.Text;
                cmdConsulta.Connection = conn;
                cmdConsulta.CommandText = sql;
                conn.Open();
                SqlDataAdapter da = new SqlDataAdapter(cmdConsulta);
                DataSet ds = new DataSet();
                da.Fill(ds);
                detalle.DataSource = ds.Tables[0];
                detalle.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
                detalle.Columns[0].Visible = false;
            }
            conn.Close();
        }

        private void bt_salir_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void detalle_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            try
            {
                int columna;
                int fila_1;
                string id = "";
                columna = detalle.CurrentCellAddress.X;
                fila_1 = detalle.CurrentCellAddress.Y;
                id = detalle.Rows[fila_1].Cells[0].Value.ToString();
                id_llave = id;
                cargar_registro();
            }
            catch
            {
            }
        }

        public void cargar_registro()
        {
            if (id_llave != "")
            {
                connectar_data();
                conn.Open();
                string sql = "select * from alumnos where nocontrol=" + id_llave;
                SqlCommand cmd = new SqlCommand(sql, conn);
                SqlDataReader reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    tx_nombre.Text = reader["nombre"].ToString();
                    tx_apellido1.Text = reader["apellidouno"].ToString();
                    tx_apellido2.Text = reader["apellidodos"].ToString();
                }
                conn.Close();
            }
        }

        private void bt_guardar_Click(object sender, EventArgs e)
        {
            if (validar()==true)
            {
                connectar_data();
                conn.Open();
                string sql = "insert into alumnos (nombre,apellidouno,apellidodos) values ('"+ tx_nombre.Text +"','"+tx_apellido1.Text+"','"+tx_apellido2.Text+"');";
                using (SqlTransaction trans = conn.BeginTransaction())
                {
                    try
                    {
                        using (SqlCommand com = new SqlCommand(sql, conn, trans))
                        {
                            com.ExecuteNonQuery();
                        }
                        trans.Commit();
                    }
                    catch (Exception ex)
                    {
                        trans.Rollback();
                    }
                }
                conn.Close();
                limpiar_datos();
                llena_detalle();
            }
        }

        public bool validar()
        {
            bool resultado = true;
            errorP.SetError(tx_nombre, String.Empty);
            errorP.SetError(tx_apellido1, String.Empty);
            errorP.SetError(tx_apellido2, String.Empty);
            if (tx_nombre.Text == "")
            {
                resultado = false;
                errorP.SetError(tx_nombre, "Dato obligado.");
            }
            if (tx_apellido1.Text == "")
            {
                resultado = false;
                errorP.SetError(tx_apellido1, "Dato obligado.");
            }
            if (tx_apellido2.Text == "")
            {
                resultado = false;
                errorP.SetError(tx_apellido2, "Dato obligado.");
            }
            return resultado;
        }

        private void bt_nuevo_Click(object sender, EventArgs e)
        {
            limpiar_datos();
            llena_detalle();
        }

        public void limpiar_datos()
        {
            id_llave = "";
            errorP.SetError(tx_nombre, String.Empty);
            errorP.SetError(tx_apellido1, String.Empty);
            errorP.SetError(tx_apellido2, String.Empty);
            tx_nombre.Text = "";
            tx_apellido1.Text = "";
            tx_apellido2.Text = "";
        }

        private void bt_borrar_Click(object sender, EventArgs e)
        {
            if (validar() == true)
            {
                if (MessageBox.Show("¿Confirmar que desea borrar este registro?", "Confirmar",
        MessageBoxButtons.YesNo, MessageBoxIcon.Question)
        == DialogResult.Yes)
                {
                    connectar_data();
                    conn.Open();
                    string sql = "delete from alumnos where nocontrol=" + id_llave;
                    using (SqlTransaction trans = conn.BeginTransaction())
                    {
                        try
                        {
                            using (SqlCommand com = new SqlCommand(sql, conn, trans))
                            {
                                com.ExecuteNonQuery();
                            }
                            trans.Commit();
                        }
                        catch (Exception ex)
                        {
                            trans.Rollback();
                        }
                    }
                    conn.Close();
                    limpiar_datos();
                    llena_detalle();
                }
            }
        }

        private void bt_editar_Click(object sender, EventArgs e)
        {
            if (validar() == true)
            {
                connectar_data();
                conn.Open();
                string sql = "update alumnos set nombre='"+tx_nombre.Text+"', apellidouno='"+tx_apellido1.Text+"', apellidodos='"+tx_apellido2.Text+"' where nocontrol=" + id_llave;
                using (SqlTransaction trans = conn.BeginTransaction())
                {
                    try
                    {
                        using (SqlCommand com = new SqlCommand(sql, conn, trans))
                        {
                            com.ExecuteNonQuery();
                        }
                        trans.Commit();
                    }
                    catch (Exception ex)
                    {
                        trans.Rollback();
                    }
                }
                conn.Close();
                limpiar_datos();
                llena_detalle();
            }
        }

        private void bt_buscar_Click(object sender, EventArgs e)
        {
            bool resultado = false;
            string where = "";
            errorP.SetError(tx_nombre, String.Empty);
            if (tx_nombre.Text != "")
            {
                resultado = true;
                where += " nombre='"+ tx_nombre.Text +"' and";
            }

            if (tx_apellido1.Text != "")
            {
                resultado = true;
                where += " apellidouno='" + tx_apellido1.Text + "' and";
            }
            if (tx_apellido2.Text != "")
            {
                resultado = true;
                where += " apellidodos='" + tx_apellido2.Text + "' and";
            }

            if (resultado == false)
            {
                errorP.SetError(tx_nombre, "Ingresar por lo menos 1 dato.");
            }
            else
            {
                where = where.Substring(0,where.Length-3);

                connectar_data();
                string sql = "select nocontrol, nombre as 'Nombre', " +
                             "apellidouno as 'Primer Apellido', "+
                             " apellidodos as 'Segundo Apellido' from alumnos " +
                             " Where " + where;
                using (SqlCommand cmdConsulta = new SqlCommand())
                {
                    cmdConsulta.CommandType = CommandType.Text;
                    cmdConsulta.Connection = conn;
                    cmdConsulta.CommandText = sql;
                    conn.Open();
                    SqlDataAdapter da = new SqlDataAdapter(cmdConsulta);
                    DataSet ds = new DataSet();
                    da.Fill(ds);
                    detalle.DataSource = ds.Tables[0];
                    detalle.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
                    detalle.Columns[0].Visible = false;
                }
                conn.Close();
            }
     
    }


    }
}