codice:
//VALIDAZIONE CAMPI
private bool validationField()
{
//controllo dei campi obbligatori
if(tnome.Text==""||tcognome.Text==""||taa.Text==""||tcittares.Text==""||tveicolo.Text==""||tcolore.Text==""||tmarca.Text==""||tmodello.Text==""||tcilind.Text==""||ttelaio.Text=="")
{
MessageBox.Show("Alcuni campi sono OBBLIGATORI e non possono essere lasciati vuoti. I campi Obbligatori sono:\nNome - Cognome - Anno di nascita - Città di residenza - Tipo veicolo - Colore - Marca - Modello - Cilindrata - Codice telaio","Errori riscontrati",MessageBoxButtons.OK,MessageBoxIcon.Warning);
// errorProvider1.SetError(label1,"Alcuni campi di testo sono stati lasciati vuoti");
return false;
}
//controllo dei campi testuali
Regex exptestuale = new Regex("^[A-Z'ÓÒÁÀÈÉÙÚ]+$");
if(exptestuale.Match(tnome.Text).Success==false || exptestuale.Match(tcolore.Text).Success==false)
{//|| exptestuale.Match(tcognome.Text).Success==false
MessageBox.Show("Alcuni campi devono contenere solo caratteri ALFABETICI, Nessun numero!\nSono Accettati inoltre i caratteri speciali quali: { ' - à - ò - è - ù }\nI campi di tipo Testuale sono:\nNome - Cognome - Colore","Errori riscontrati",MessageBoxButtons.OK,MessageBoxIcon.Warning);
return false;
}
//controllo dei campi numerici
Regex expnumerica = new Regex("^[0-9]+$");
if(expnumerica.Match(tcilind.Text).Success==false || expnumerica.Match(ttel.Text).Success==false || expnumerica.Match(tfax.Text).Success==false)
{
if(ttel.Text=="" || tfax.Text=="")
{
return true;
}
MessageBox.Show("Alcuni campi devono contenere solo caratteri NUMERICI, Nessun testo!\nI campo di tipo Numerico sono:\nCilindrata - Telefono - Fax","Errori riscontrati",MessageBoxButtons.OK,MessageBoxIcon.Warning);
return false;
}
//controllo del campo partita iva
Regex expiva = new Regex("^\\d{11}$");
if(expiva.Match(tpiva.Text).Success==false)
{
if(tpiva.Text=="")
{
return true;
}
MessageBox.Show("Il campo PARTITA IVA deve contenere solo 11 NUMERI.","Errori riscontrati",MessageBoxButtons.OK,MessageBoxIcon.Warning);
return false;
}
//controllo del campo codice fiscale
Regex expcodfisc = new Regex("^[A-Za-z]{6}[0-9]{2}[A-Za-z]{1}[0-9]{2}[A-Za-z]{1}[0-9]{3}[A-Za-z]{1}$");
if(expcodfisc.Match(tcdf.Text).Success==false)
{
if(tcdf.Text=="")
{
return true;
}
MessageBox.Show("Il CODICE FISCALE non è formalmente corretto.\n Un codice fiscale corretto deve rispettare la forma di: 16 caratteri alfanumerici ordinati.","Errori riscontrati",MessageBoxButtons.OK,MessageBoxIcon.Warning);
return false;
}
if(lblId.Text!="")
{
//INSERIMENTO SOLO DEL CICLOMOTORE
string Id=lblId.Text;
string connstring = "Database=maximotogest;Data Source=localhost;User Id=root;Password=";
string queryCiclomotore = "INSERT INTO ciclomotori(Cliente,Tipo_veicolo,Colore,Marca,Modello,Cilindrata,Cod_telaio,Targa,Note_ciclomotore) VALUES("+Id+",'"+tveicolo.Text.Replace("'","''")+"','"+tcolore.Text.Replace("'","''")+"','"+tmarca.Text.Replace("'","''")+"','"+tmodello.Text.Replace("'","''")+"',"+tcilind.Text+",'"+ttelaio.Text+"','"+ttarga.Text+"','"+tnote.Text.Replace("'","''")+"')";
MySqlConnection myconn = new MySqlConnection(connstring);
MySqlCommand cmdciclomotore = new MySqlCommand(queryCiclomotore);
cmdciclomotore.Connection = myconn;
myconn.Open();
cmdciclomotore.ExecuteNonQuery();
cmdciclomotore.Connection.Close();
MessageBox.Show("INSERIMENTO NUOVO CICLOMOTORE ASSOCIATO AD UTENTE PREESISTENTE RIUSCITO!.","Inserimento riuscito",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
else
{
//INSERIMENTO NUOVO CLIENTE E CICLOMOTORE
string giorno =(string) tgg.SelectedItem;
string mese = (string)tmm.SelectedItem;
string anno = taa.Text;
string datanascita = giorno +"/"+mese+"/"+anno;
string connstring = "Database=maximotogest;Data Source=localhost;User Id=root;Password=";
string queryCliente="INSERT INTO clienti(Nome,Cognome,Birth_date,Luogo_nascita,Res_city,Address,Cod_fisc,Partita_iva,Num_tel,Num_fax,Note_cliente) VALUES('"+tnome.Text.Replace("'","''")+"' ,'"+ tcognome.Text.Replace("'","''") +"','"+ datanascita + "','"+tluogonascita.Text.Replace("'","''")+"','"+tcittares.Text.Replace("'","''")+"','"+tvia.Text.Replace("'","''")+"','"+tcdf.Text+"','"+tpiva.Text+"','"+ttel.Text+"','"+tfax.Text+"','"+tnoteclient.Text.Replace("'","''")+"')";
//inserisco il record per il cliente
MySqlConnection conn = new MySqlConnection(connstring);
MySqlCommand cmdcliente = new MySqlCommand(queryCliente);
conn.Open();
cmdcliente.Connection = conn;
cmdcliente.ExecuteNonQuery();
cmdcliente.Connection.Close();
//recupero l'ultimo record inserito e inserisco il ciclomotore con l'id recuperato
//LAST_INSERT_ID() E' UNA FUNZIONE INTRINSECA DI MYSQL QUINDI NON STANDARD
string qselectionlastid="SELECT LAST_INSERT_ID() FROM clienti";
MySqlConnection readerconn = new MySqlConnection(connstring);
MySqlCommand cmdselectlastid = new MySqlCommand(qselectionlastid,readerconn);
MySqlDataReader reader;
readerconn.Open();
reader=cmdselectlastid.ExecuteReader();
if(reader.Read())
{
uint Idc = (uint) reader.GetInt32(0);
//string connstring = "Database=maximotogest;Data Source=localhost;User Id=root;Password=";
string queryCiclomotore = "INSERT INTO ciclomotori(Cliente,Tipo_veicolo,Colore,Marca,Modello,Cilindrata,Cod_telaio,Targa,Note_ciclomotore) VALUES("+Idc+",'"+tveicolo.Text.Replace("'","''")+"','"+tcolore.Text.Replace("'","''")+"','"+tmarca.Text.Replace("'","''")+"','"+tmodello.Text.Replace("'","''")+"',"+tcilind.Text+",'"+ttelaio.Text+"','"+ttarga.Text+"','"+tnote.Text.Replace("'","''")+"')";
MySqlConnection myconn = new MySqlConnection(connstring);
MySqlCommand cmdciclomotore = new MySqlCommand(queryCiclomotore);
cmdciclomotore.Connection = myconn;
myconn.Open();
cmdciclomotore.ExecuteNonQuery();
cmdciclomotore.Connection.Close();
MessageBox.Show("INSERIMENTO NUOVO CLIENTE RIUSCITO!.","Inserimento riuscito",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
reader.Close();
readerconn.Close();
}
return true;
}