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; namespace proba { public partial class Nomenklaturaadd : Form { public int razmer = 0; public static string[] add_nomenklatura = new string[1]; DataBase dataBase = new DataBase(); public Nomenklaturaadd() { InitializeComponent(); } private void Nomenklatura_add_Load(object sender, EventArgs e) { // TODO: данная строка кода позволяет загрузить данные в таблицу "vINILDataSet_supplier.Supplier". При необходимости она может быть перемещена или удалена. this.supplierTableAdapter.Fill(this.vINILDataSet_supplier.Supplier); // TODO: данная строка кода позволяет загрузить данные в таблицу "vINILDataSet_Edition.Edition". При необходимости она может быть перемещена или удалена. this.editionTableAdapter.Fill(this.vINILDataSet_Edition.Edition); // TODO: данная строка кода позволяет загрузить данные в таблицу "vINILDataSet_Country.Country". При необходимости она может быть перемещена или удалена. this.countryTableAdapter.Fill(this.vINILDataSet_Country.Country); // TODO: данная строка кода позволяет загрузить данные в таблицу "vINILDataSet_performer.Performer". При необходимости она может быть перемещена или удалена. this.performerTableAdapter.Fill(this.vINILDataSet_performer.Performer); // TODO: данная строка кода позволяет загрузить данные в таблицу "vINILDataSet_Genre.Genre". При необходимости она может быть перемещена или удалена. this.genreTableAdapter.Fill(this.vINILDataSet_Genre.Genre); } public void global_FormClosed(object sender, EventArgs e) { Application.Exit(); } private void button_back_Click_1(object sender, EventArgs e) { this.Hide(); Nomenklatura nomenklatura = new Nomenklatura(); nomenklatura.ShowDialog(); } private void button_save_Click(object sender, EventArgs e) { string sqccommand_country = $"SELECT id_country From Country WHERE country = '{comboBox_country.Text}'"; SqlDataAdapter sda_country = new SqlDataAdapter(sqccommand_country, dataBase.GetConnection()); DataTable dtbl_country = new DataTable(); sda_country.Fill(dtbl_country); if (dtbl_country.Rows.Count == 0) MessageBox.Show("Поле страна производство должно быть выбрано из списка"); else { string sqccommand_edition = $"SELECT id_edition From Edition WHERE edition = '{comboBox_id_edition.Text}'"; SqlDataAdapter sda_edition = new SqlDataAdapter(sqccommand_edition, dataBase.GetConnection()); DataTable dtbl_edition = new DataTable(); sda_edition.Fill(dtbl_edition); if (dtbl_edition.Rows.Count == 0) MessageBox.Show("Поле издательство должно быть выбрано из списка"); else { string sqccommand_genre = $"SELECT id_genre From Genre WHERE genre = '{comboBox_id_genre.Text}'"; SqlDataAdapter sda_genre = new SqlDataAdapter(sqccommand_genre, dataBase.GetConnection()); DataTable dtbl_genre = new DataTable(); sda_genre.Fill(dtbl_genre); if (dtbl_genre.Rows.Count == 0) MessageBox.Show("Поле жанр музыки должно быть выбрано из списка"); else { string sqccommand_performer = $"SELECT id_performer From Performer WHERE performer = '{comboBox_id_performer.Text}'"; SqlDataAdapter sda_performer = new SqlDataAdapter(sqccommand_performer, dataBase.GetConnection()); DataTable dtbl_performer = new DataTable(); sda_performer.Fill(dtbl_performer); if (dtbl_performer.Rows.Count == 0) MessageBox.Show("Поле исполнитель должно быть выбрано из списка"); else { string sqccommand_supplier = $"SELECT id_supplier From Supplier WHERE name_organization = '{text_id_suplier.Text}'"; SqlDataAdapter sda_supplier = new SqlDataAdapter(sqccommand_supplier, dataBase.GetConnection()); DataTable dtbl_supplier = new DataTable(); sda_supplier.Fill(dtbl_supplier); if (dtbl_supplier.Rows.Count == 0) MessageBox.Show("Поле поставщик должно быть выбрано из списка"); else if (text_name.Text.Replace(" ", "") == "") MessageBox.Show("Поле название не может быть пустым"); else if (text_description.Text.Replace(" ", "") == "") MessageBox.Show("Поле описание не может быть пустым"); else if (text_price.Text.Replace(" ", "") == "") MessageBox.Show("Поле цена не может быть пустым"); else if (textBox_year_publishing.Text.Replace(" ", "") == "") MessageBox.Show("Поле год издания не может быть пустым"); else { dataBase.openConnection(); var name = text_name.Text; var description = text_description.Text; var price = text_price.Text; var year_publishing = textBox_year_publishing.Text; string id_country; SqlCommand sqlCommand_country = new SqlCommand(sqccommand_country, dataBase.GetConnection()); id_country = sqlCommand_country.ExecuteScalar().ToString(); string id_edition; SqlCommand sqlCommand_edition = new SqlCommand(sqccommand_edition, dataBase.GetConnection()); id_edition = sqlCommand_edition.ExecuteScalar().ToString(); string id_genre; SqlCommand sqlCommand_genre = new SqlCommand(sqccommand_genre, dataBase.GetConnection()); id_genre = sqlCommand_genre.ExecuteScalar().ToString(); string id_performer; SqlCommand sqlCommand_performer = new SqlCommand(sqccommand_performer, dataBase.GetConnection()); id_performer = sqlCommand_performer.ExecuteScalar().ToString(); string id_supplier; SqlCommand sqlCommand_suplier = new SqlCommand(sqccommand_supplier, dataBase.GetConnection()); id_supplier = sqlCommand_suplier.ExecuteScalar().ToString(); var addQuery = $"insert into Products (product, description, price, year_publishing, id_country, id_edition, id_genre, id_performer, id_supplier) values ('{name}','{description}','{price}', '{year_publishing}','{id_country}', '{id_edition}', '{id_genre}', '{id_performer}', '{id_supplier}')"; var command = new SqlCommand(addQuery, dataBase.GetConnection()); command.ExecuteNonQuery(); MessageBox.Show("Запись успешно добавлена в таблицу"); add_nomenklatura[razmer] = text_name.Text; Array.Resize(ref add_nomenklatura, add_nomenklatura.Length + 1); razmer++; dataBase.closeConnection(); } } } } } } private void text_price_KeyPress_1(object sender, KeyPressEventArgs e) { char number = e.KeyChar; if (!Char.IsDigit(number) && number != 8) // цифры и клавиша BackSpace { e.Handled = true; } } private void textBox_year_publishing_KeyPress(object sender, KeyPressEventArgs e) { char number = e.KeyChar; if (!Char.IsDigit(number) && number != 8) // цифры и клавиша BackSpace { e.Handled = true; } } } }