private void dataGridView2_CellContentDoubleClick(object sender, DataGridViewCellEventArgs e) { lasku_id = Convert.ToInt32(dataGridView2.CurrentRow.Cells["Laskun nro"].Value); // Avaa lasku. LaskuPohja laskuPohjaWindow = new LaskuPohja(); laskuPohjaWindow.ShowDialog(); }
private void button_Tulosta2_Click(object sender, EventArgs e) { if (dataGridView2.SelectedCells.Count == 1 | dataGridView2.SelectedRows.Count == 1) { lasku_id = Convert.ToInt32(dataGridView2.CurrentRow.Cells["Laskun nro"].Value); LaskuPohja laskuPohjaWindow = new LaskuPohja(); laskuPohjaWindow.ShowDialog(); } else { // Tulosta virheilmoitus. MessageBox.Show("Laskunvalinnassa tapahtui virhe. Valitsithan vain yhden varauksen?", "Virhe", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void button_LuoLasku_Click(object sender, EventArgs e) { // Haetaan ikkunan tekstikentistä ajantasaiset // tiedot laskunmuodostamista varten. Laskutus.Nimi = textBox_MaksajaNimi.Text; Laskutus.Lahiosoite = textBox_MaksajaLahiosoite.Text; Laskutus.Postitoimipaikka = textBox_MaksajaPostitoimipaikka.Text; Laskutus.Postinro = Convert.ToInt32(textBox_MaksajaPostinro.Text); Laskutus.Email = textBox_MaksajaEmail.Text; using (SqlConnection connection = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;" + @"AttachDbFilename=|DataDirectory|\mokkivaraus.mdf; Integrated Security=True")) { try { string query = "INSERT INTO Lasku (Lasku.varaus_id, Lasku.asiakas_id, Lasku.nimi, Lasku.lahiosoite, Lasku.postitoimipaikka, Lasku.paivays, Lasku.email, Lasku.summa, Lasku.alv) " + "VALUES (@varaus_id, @asiakas_id, @nimi, @lahiosoite, @postitoimipaikka, @paivays, @email, @summa, @alv)"; // Create a SqlCommand instance SqlCommand command = new SqlCommand(query, connection); //Määritä SQL-haun parametrit. command.Parameters.Add("@varaus_id", SqlDbType.Int).Value = Laskutus.Varaus_id; command.Parameters.Add("@asiakas_id", SqlDbType.Int).Value = Laskutus.Asiakas_id; command.Parameters.Add("@nimi", SqlDbType.VarChar).Value = Laskutus.Nimi; command.Parameters.Add("@lahiosoite", SqlDbType.VarChar).Value = Laskutus.Lahiosoite; command.Parameters.Add("@postitoimipaikka", SqlDbType.VarChar).Value = Laskutus.Postitoimipaikka; command.Parameters.Add("@paivays", SqlDbType.Date).Value = DateTime.Today; command.Parameters.Add("@email", SqlDbType.VarChar).Value = Laskutus.Email; command.Parameters.Add("@summa", SqlDbType.Decimal).Value = Laskutus.Summa; command.Parameters.Add("@alv", SqlDbType.Int).Value = Laskutus.Alv; /// Suoritetaan haku tietokannasta. connection.Open(); command.ExecuteReader(); if (MessageBox.Show("Uusi lasku on luotu. Haluatko tulostaa laskun?", "Lasku luotu", MessageBoxButtons.OKCancel, MessageBoxIcon.Information) == DialogResult.OK) { LaskuPohja laskuPohjaWindow = new LaskuPohja(); laskuPohjaWindow.ShowDialog(); this.Hide(); } else { this.Hide(); } } catch (Exception ex) { MessageBox.Show("Tapahtui virhe: " + ex.Message, "Virhe", MessageBoxButtons.OK, MessageBoxIcon.Error); } } // Päivitetään käsitelty lasku laskutetuksi; muutetaan // Varaus-taulun laskutettu-kentän arvoksi 'true', jolloin // kyseinen varaus ei enää näy laskuttamattomissa. using (SqlConnection connection = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;" + @"AttachDbFilename=|DataDirectory|\mokkivaraus.mdf; Integrated Security=True")) { try { string query = "UPDATE Varaus SET Varaus.laskutettu = 'true' WHERE Varaus.varaus_id = @varaus_id"; // Create a SqlCommand instance SqlCommand command = new SqlCommand(query, connection); //Määritä SQL-haun parametrit. command.Parameters.Add("@varaus_id", SqlDbType.Int).Value = Laskutus.Varaus_id; /// Suoritetaan haku tietokannasta. connection.Open(); command.ExecuteReader(); } catch (Exception ex) { MessageBox.Show("Tapahtui virhe: " + ex.Message, "Virhe", MessageBoxButtons.OK, MessageBoxIcon.Error); } } // Päivitä Laskutus-ikkunan dataGridView-näkymät // ja sulke ikkuna. Laskutus laskutusWindow = new Laskutus(); try { laskutusWindow.Refresh(); this.Hide(); } catch (Exception ex) { MessageBox.Show("Tapahtui virhe: " + ex.Message, "Virhe", MessageBoxButtons.OK, MessageBoxIcon.Error); } }