nio74
21-11-2013, 18:47
problema volevo far si che quando salvo mi puliva tutti i campi (ma quello del codice creato con il metodo "codice" non lo pulisce e non genera neanche il codice nuovo(ho commentato dove sono le chiamate ai metodi)
Ho fatto il debug ma al momento della seconda chiamata il valore della variabile è sempre la stessa di prima non si è autoincrementata sebbene nel database sia stata memorizzata e se continuo a salvare il codice sulla textbox resta sempre quello mentre sul database si aggiorna.
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.Data.OleDb;
namespace Orologeria
{
public partial class InsBusta : Form
{
SqlCommand comando;
SqlConnection conn;
string constr = @"Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\Paolo\Dropbox\Programmazione\c#\Work\Orologeria\Orologeria\DataOrologeria.mdf;Integrated Security=True";
public InsBusta()
{
InitializeComponent();
}
private void salvaButton_Click(object sender, EventArgs e)
{
conn = new SqlConnection(constr);
comando = new SqlCommand();
conn.Open();
try
{
comando.Parameters.Add("@CB",SqlDbType.NVarChar).Value = codiceBustaTB.Text;
comando.Parameters.Add("@CL", SqlDbType.NVarChar).Value = clienteCB.Text;
comando.Parameters.Add("@DI", SqlDbType.Date).Value = dataAccDTP.Value;
comando.Parameters.Add("@DC", SqlDbType.Date).Value = dataConsegnaDTP.Value;
comando.Parameters.Add("@DO", SqlDbType.NVarChar).Value = descOggettiTB.Text ;
comando.Parameters.Add("@LV", SqlDbType.NVarChar).Value = lavoriTB.Text;
comando.Parameters.Add("@PC", SqlDbType.Float).Value = string.IsNullOrWhiteSpace(prezzoCTB.Text);
comando.Parameters.Add("@PP", SqlDbType.Float).Value = string.IsNullOrWhiteSpace(prezzoPTB.Text);
comando.Parameters.Add("@PPr", SqlDbType.Float).Value = string.IsNullOrWhiteSpace(prezzoPrecTB.Text);
comando.Parameters.Add("@N", SqlDbType.NVarChar).Value = noteTB.Text;
comando.Connection = conn;
//sql Statement
comando.CommandText = "Insert into bustaRiparazione (codiceBustaCliente,cliente,dataInserimento,dataConsegna,"+
"descrizioneOggetti,lavoriDaEseguire,prezzoC,prezzoP,prezzoPreventivo,"+
"note) values (@CB,@CL,@DI,@DC,@DO,@LV,@PC,@PP,@PPr,@N)";
comando.ExecuteNonQuery();
MessageBox.Show("Salvato");
idBustaTB.Clear();
codiceBustaTB.Clear();
descOggettiTB.Clear();
lavoriTB.Clear();
prezzoCTB.Clear();
prezzoPTB.Clear();
prezzoPrecTB.Clear();
noteTB.Clear();
}
catch(Exception err)
{
MessageBox.Show("Non Salvato"+err);
}
finally
{
conn.Close();
this.codice();
}
}
private void InsBusta_Load(object sender, EventArgs e)
{
// TODO: questa riga di codice carica i dati nella tabella 'dataSet11._clienti__'. È possibile spostarla o rimuoverla se necessario.
this.clienti__TableAdapter.Fill(this.dataSet11._clienti__);
// TODO: questa riga di codice carica i dati nella tabella 'dataSet1._clienti__'. È possibile spostarla o rimuoverla se necessario.
this.clienti__TableAdapter.Fill(this.dataSet1._clienti__);
}
private void esciButton_Click(object sender, EventArgs e)
{
this.Close();
}
//Metodo perche legge il record piu alto e ne incrementa di 1 il valore e lo trasmette
//Alla TextBox
private void codice()
{
DataClasses1DataContext db = new DataClasses1DataContext();
var maxvalue = (from b in db.bustaRiparazione select b.IdBusta).Max()+1;
Console.Write("Questo è il codice "+maxvalue);
idBustaTB.Text = Convert.ToString(maxvalue);
}
}
}
Ho fatto il debug ma al momento della seconda chiamata il valore della variabile è sempre la stessa di prima non si è autoincrementata sebbene nel database sia stata memorizzata e se continuo a salvare il codice sulla textbox resta sempre quello mentre sul database si aggiorna.
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.Data.OleDb;
namespace Orologeria
{
public partial class InsBusta : Form
{
SqlCommand comando;
SqlConnection conn;
string constr = @"Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\Paolo\Dropbox\Programmazione\c#\Work\Orologeria\Orologeria\DataOrologeria.mdf;Integrated Security=True";
public InsBusta()
{
InitializeComponent();
}
private void salvaButton_Click(object sender, EventArgs e)
{
conn = new SqlConnection(constr);
comando = new SqlCommand();
conn.Open();
try
{
comando.Parameters.Add("@CB",SqlDbType.NVarChar).Value = codiceBustaTB.Text;
comando.Parameters.Add("@CL", SqlDbType.NVarChar).Value = clienteCB.Text;
comando.Parameters.Add("@DI", SqlDbType.Date).Value = dataAccDTP.Value;
comando.Parameters.Add("@DC", SqlDbType.Date).Value = dataConsegnaDTP.Value;
comando.Parameters.Add("@DO", SqlDbType.NVarChar).Value = descOggettiTB.Text ;
comando.Parameters.Add("@LV", SqlDbType.NVarChar).Value = lavoriTB.Text;
comando.Parameters.Add("@PC", SqlDbType.Float).Value = string.IsNullOrWhiteSpace(prezzoCTB.Text);
comando.Parameters.Add("@PP", SqlDbType.Float).Value = string.IsNullOrWhiteSpace(prezzoPTB.Text);
comando.Parameters.Add("@PPr", SqlDbType.Float).Value = string.IsNullOrWhiteSpace(prezzoPrecTB.Text);
comando.Parameters.Add("@N", SqlDbType.NVarChar).Value = noteTB.Text;
comando.Connection = conn;
//sql Statement
comando.CommandText = "Insert into bustaRiparazione (codiceBustaCliente,cliente,dataInserimento,dataConsegna,"+
"descrizioneOggetti,lavoriDaEseguire,prezzoC,prezzoP,prezzoPreventivo,"+
"note) values (@CB,@CL,@DI,@DC,@DO,@LV,@PC,@PP,@PPr,@N)";
comando.ExecuteNonQuery();
MessageBox.Show("Salvato");
idBustaTB.Clear();
codiceBustaTB.Clear();
descOggettiTB.Clear();
lavoriTB.Clear();
prezzoCTB.Clear();
prezzoPTB.Clear();
prezzoPrecTB.Clear();
noteTB.Clear();
}
catch(Exception err)
{
MessageBox.Show("Non Salvato"+err);
}
finally
{
conn.Close();
this.codice();
}
}
private void InsBusta_Load(object sender, EventArgs e)
{
// TODO: questa riga di codice carica i dati nella tabella 'dataSet11._clienti__'. È possibile spostarla o rimuoverla se necessario.
this.clienti__TableAdapter.Fill(this.dataSet11._clienti__);
// TODO: questa riga di codice carica i dati nella tabella 'dataSet1._clienti__'. È possibile spostarla o rimuoverla se necessario.
this.clienti__TableAdapter.Fill(this.dataSet1._clienti__);
}
private void esciButton_Click(object sender, EventArgs e)
{
this.Close();
}
//Metodo perche legge il record piu alto e ne incrementa di 1 il valore e lo trasmette
//Alla TextBox
private void codice()
{
DataClasses1DataContext db = new DataClasses1DataContext();
var maxvalue = (from b in db.bustaRiparazione select b.IdBusta).Max()+1;
Console.Write("Questo è il codice "+maxvalue);
idBustaTB.Text = Convert.ToString(maxvalue);
}
}
}