Пример #1
0
        //Revisa en la base de datos si se encuentra el registro
        private bool verifyData(String rut, String folio, Visualizador visualizador)
        {
            bool salida = true;
            string query1 = "select rut, folio from " + this.table + " where rut='" + rut + "';";
            string query2 = "select rut, folio from " + this.table + " where folio='" + folio + "';";
            string query3 = "select rut, folio from " + this.table + " where rut='" + rut + "' and folio='" + folio + "';";
            Console.WriteLine(query1);
            Console.WriteLine(query2);
            Console.WriteLine(query3);
            try
            {
                MySqlConnection connection = new MySqlConnection(this.connectionStringMysql);
                connection.Open();
                MySqlCommand cmd = new MySqlCommand(query3, connection);
                MySqlDataReader reader = cmd.ExecuteReader();
                cmd.Dispose();

                //Si el rut se encuentra ingresado en la base de datos con el mismo folio
                if (reader.HasRows)
                {
                    visualizador.updateStatus(2, "El RUT " + rut + " ya tiene asignado el FOLIO" + folio);
                    salida = false;
                    reader.Close();
                }
                else
                {
                    reader.Close();
                    cmd.CommandText = query1;
                    reader = cmd.ExecuteReader();
                    cmd.Dispose();

                    //Si el rut se encuentra ingresado en la base de datos con diferente folio
                    if (reader.HasRows)
                    {
                        reader.Read();
                        visualizador.updateStatus(2, "El RUT " + rut + " posee otro FOLIO: " + reader.GetString(1));
                        salida = false;
                        reader.Close();
                    }
                    else
                    {
                        reader.Close();
                        cmd.CommandText = query2;
                        reader = cmd.ExecuteReader();
                        cmd.Dispose();

                        //Si el folio ingresado se encuentra registrado a otro rut en la base de datos
                        if (reader.HasRows)
                        {
                            reader.Read();
                            visualizador.updateStatus(2, "El FOLIO " + folio + " pertenece a otro RUT: " + reader.GetString(0));
                            salida = false;
                            reader.Close();
                        }
                        else
                            //Si esta todo ok al ingresar un nuevo registro
                        {
                            salida = true;
                            reader.Close();
                        }
                    }
                }

                reader.Close();
                connection.Close();
            }
            catch (Exception e)
            {
                visualizador.updateStatus(2, "error " + e.Message);
                salida = false;
                MessageBox.Show(e.Message);
            }

            return salida;
        }
Пример #2
0
        //Guarda el registro en la base de datos
        public bool saveRegisterMySql(BarcodeDataObject bObject, Visualizador visualizador)
        {
            string query = "insert into " + this.table + " (rut, nombre_estudiante, folio, num_serie_lector) values ('" + bObject.Rut + "','" + bObject.StudentName + "','" + bObject.ResponseFormId + "','" + bObject.ReaderSerial + "');";
            if (verifyData(bObject.Rut, bObject.ResponseFormId, visualizador))
            {
                try
                {
                    MySqlConnection connection = new MySqlConnection(this.connectionStringMysql);
                    connection.Open();

                    MySqlCommand cmd = new MySqlCommand(query, connection);

                    cmd.ExecuteNonQuery();

                    connection.Close();
                    visualizador.updateStatus(1, "RUT:" + bObject.Rut + " (" + bObject.StudentName + ") - FOLIO: " + bObject.ResponseFormId + "    .... fueron guardados exitosamente");
                }
                catch (Exception e)
                {
                    visualizador.updateStatus(2, "ERROR: Error al guardar los datos");
                    MessageBox.Show(e.Message);
                }
            }
            return true;
        }