Ejemplo n.º 1
0
        //Metoda wywoływana w momencie wciśnięcia guzika usuwania przepisu.
        private void btnUsunPrzepis_Click(object sender, EventArgs e)
        {
            //Otwieramy formę z potwierdzeniem operacji i jeżeli został wcisnięty przycisk "Tak" to usuwamy zaznaczony przepis oraz wszystkie powiązania z nim w bazie.
            //Po wykkonaniu operacji zaznaczamy przepis, który był o 1 pozycję wyżej od usuniętego.
            Potwierdzenie potwierdz = new Potwierdzenie();

            if (potwierdz.ShowDialog() == DialogResult.Yes)
            {
                int           index     = gvListaPrzepisow.CurrentRow.Cells["ID"].RowIndex;
                int           selection = Convert.ToUInt16(gvListaPrzepisow.CurrentRow.Cells["ID"].Value.ToString());
                SqlConnection conn      = new SqlConnection(strSqlCon);
                conn.Open();
                SqlCommand usunSkladniki = new SqlCommand("DELETE from Przepisy_Skladniki where L_ID_PRZEPISU = " + selection, conn);
                usunSkladniki.ExecuteNonQuery();
                SqlCommand usunPrzepis = new SqlCommand("DELETE from Przepisy where ID_PRZEPISU = " + selection, conn);
                usunPrzepis.ExecuteNonQuery();
                conn.Close();
                wypiszListePrzepisow(-1);
                if (index == 0)
                {
                    index++;
                }
                gvListaPrzepisow.CurrentCell = gvListaPrzepisow.Rows[index - 1].Cells[0];
            }
            potwierdz = null;
        }
Ejemplo n.º 2
0
        //Metoda usuwająca zaznaczony składnik
        private void btnUsunSkladnik_Click(object sender, EventArgs e)
        {
            //Sczytujemy ID zaznaczonego składnika
            int           selection = Convert.ToUInt16(gvListaSkladnikow.CurrentRow.Cells["LS_ID"].Value.ToString());
            SqlConnection conn      = new SqlConnection(strSqlCon);

            conn.Open();
            //Sprawdzamy w bazie czy nie występują jakieś powiązania ze składnikiem
            SqlCommand cmdLiczba = new SqlCommand("SELECT COUNT(L_ID_SKLADNIKA) from Przepisy_Skladniki where L_ID_SKLADNIKA = " + selection, conn);
            int        liczba    = (int)cmdLiczba.ExecuteScalar();

            //Jeżeli liczba powiązań jest większa od 0 to wyświetlamy messagebox z odpowiednim komunikatem
            if (liczba > 0)
            {
                MessageBox.Show("Nie możesz usunąć składnika, który jest używany. Najpierw musisz usunąć wszelkie powiązania.",
                                "Błąd",
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Error,
                                MessageBoxDefaultButton.Button1);
            }
            //Jeżeli liczba powiązań jest równa 0 to wyświetlamy formę z prośbą o potwierdzenie
            else if (liczba == 0)
            {
                Potwierdzenie potwierdz = new Potwierdzenie("Jesteś pewien, że chcesz usunąć ten składnik?");


                if (potwierdz.ShowDialog() == DialogResult.Yes)
                {
                    int        index = gvListaSkladnikow.CurrentRow.Cells["LS_ID"].RowIndex;
                    SqlCommand comm  = new SqlCommand("DELETE FROM Skladniki WHERE ID_SKLADNIKA = " + selection, conn);
                    comm.ExecuteNonQuery();
                    wypiszListeSkladnikow(-1);
                    if (index == 0)
                    {
                        index++;
                    }
                    gvListaSkladnikow.CurrentCell = gvListaSkladnikow.Rows[index - 1].Cells[0];
                    gvListaSkladnikow_SelectionChanged(null, null);
                }
                potwierdz = null;
            }
            conn.Close();
        }