mercredi 7 septembre 2016

Sql query with 6 checkboxes

I have a report screen with 6 checkboxes that will tell which columns the report has to show. But when i check some checkboxes and click on the button nothing happens. Here is my code:

            connect = new SqlConnection(@"Data Source=LP12;Initial Catalog=SmmsData;Integrated Security=True");
        connect.Open();

        SqlCommand cmd = new SqlCommand();
        cmd.Connection = connect;
        cmd.CommandText = "SELECT DrukSensor, FlowSensor, TempSensor, KwaliteitSensor, Toerental, OlieVerbruik"
        + " FROM SysteemSensorInfo"
        + " WHERE DrukSensor=@DrukSensor"
        + " AND FlowSensor=@FlowSensor"
        + " AND TempSensor=@TempSensor"
        + " AND KwaliteitSensor=@KwaliteitSensor"
        + " AND Toerental=@Toerental"
        + " AND Olieverbruik=@OlieVerbruik"
        ;

        cmd.Parameters.Add("@DrukSensor", SqlDbType.Bit);
        cmd.Parameters.Add("@FlowSensor", SqlDbType.Bit);
        cmd.Parameters.Add("@TempSensor", SqlDbType.Bit);
        cmd.Parameters.Add("@KwaliteitSensor", SqlDbType.Bit);
        cmd.Parameters.Add("@Toerental", SqlDbType.Bit);
        cmd.Parameters.Add("@OlieVerbruik", SqlDbType.Bit);

        cmd.Parameters["@DrukSensor"].Value = CheckBoxDruk.Checked;
        cmd.Parameters["@FlowSensor"].Value = CheckBoxFlow.Checked;
        cmd.Parameters["@TempSensor"].Value = CheckBoxTemp.Checked;
        cmd.Parameters["@KwaliteitSensor"].Value = CheckKwaliteit.Checked;
        cmd.Parameters["@Toerental"].Value = CheckBoxToerenTal.Checked;
        cmd.Parameters["@OlieVerbruik"].Value = CheckBoxOlieVerbruik.Checked;

        DataSet ds = new DataSet();
        new SqlDataAdapter(cmd).Fill(ds);
        GridView1.DataSource = ds.Tables[0];
        GridView1.DataBind();
        GridView1.AutoGenerateColumns = true;

When i exclude this part of the code it works just fine but the checkboxes wont work.

 + " WHERE DrukSensor=@DrukSensor"
        + " AND FlowSensor=@FlowSensor"
        + " AND TempSensor=@TempSensor"
        + " AND KwaliteitSensor=@KwaliteitSensor"
        + " AND Toerental=@Toerental"
        + " AND Olieverbruik=@OlieVerbruik"
        ;

        cmd.Parameters.Add("@DrukSensor", SqlDbType.Bit);
        cmd.Parameters.Add("@FlowSensor", SqlDbType.Bit);
        cmd.Parameters.Add("@TempSensor", SqlDbType.Bit);
        cmd.Parameters.Add("@KwaliteitSensor", SqlDbType.Bit);
        cmd.Parameters.Add("@Toerental", SqlDbType.Bit);
        cmd.Parameters.Add("@OlieVerbruik", SqlDbType.Bit);

        cmd.Parameters["@DrukSensor"].Value = CheckBoxDruk.Checked;
        cmd.Parameters["@FlowSensor"].Value = CheckBoxFlow.Checked;
        cmd.Parameters["@TempSensor"].Value = CheckBoxTemp.Checked;
        cmd.Parameters["@KwaliteitSensor"].Value = CheckKwaliteit.Checked;
        cmd.Parameters["@Toerental"].Value = CheckBoxToerenTal.Checked;
        cmd.Parameters["@OlieVerbruik"].Value = CheckBoxOlieVerbruik.Checked;

What am i doing wrong or can i solve my checkbox problem in an easier way?

Hope you guys have the awnser!




Aucun commentaire:

Enregistrer un commentaire