Задание
Разработать приложение с графическим интерфейсом пользователя на языке C# с базой данных для учета продаж компьютерной техники. В качестве интерфейса был использован WinForms, в качестве базы данных SQL Server.
Функционал программы
- добавление данных
- удаление данных
- редактирование данных
Содержание отчета к программе
1 АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ.. 9
1.1 Информационное обеспечение задачи. 9
1.2. Обзор и анализ существующих программных решений. 11
1.3. Выбор состава технических и программных средств. 13
2 АНАЛИЗ СРЕД И ЯЗЫКОВ КАК ИНСТРУМЕНТОВ РЕАЛИЗАЦИИ.. 18
2.1 Современные языки программирования. 18
2.2 Язык высокого уровня C#. 19
2.3 Windows Forms или Windows Presentation Foundation. 20
2.4 Техническое задание на разработку приложения «АИС Компьютерный магазин («Учет продаж компьютерной техники»)». 23
3 РАЗРАБОТКА ПРИЛОЖЕНИЯ КОМПЬЮТЕРНЫЙ МАГАЗИН НА ЯЗЫКЕ C# 25
3.1 Постановка задачи. 25
3.2 Физическая структура базы данных. 25
3.3 Разработка пользовательского интерфейса. 29
3.4 Расчет экономической эффективности от внедрения программы. 37
3.5 Инструкция пользователя. 39
ЗАКЛЮЧЕНИЕ. 42
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ. 44
ПРИЛОЖЕНИЯ. 46
Приложение А. Код формы «Товары». 46
Приложение Б. Код формы «Клиенты». 49
Приложение В. Код формы «Продажи». 52
Фрагмент программного кода
using System; using System.Configuration; using System.Data; using System.Data.SqlClient; using System.Windows.Forms; using MaterialSkin; using MaterialSkin.Controls; namespace Nix.Forms { public partial class CustomersForm : MaterialForm { public CustomersForm() { InitializeComponent(); var materialSkinManager = MaterialSkinManager.Instance; materialSkinManager.AddFormToManage(this); materialSkinManager.Theme = MaterialSkinManager.Themes.LIGHT; materialSkinManager.ColorScheme = new ColorScheme(Primary.BlueGrey800, Primary.BlueGrey900, Primary.BlueGrey500, Accent.LightBlue200, TextShade.WHITE); } SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Accounting"].ConnectionString); private void Populate() { conn.Open(); string query = "select * from Customers"; SqlDataAdapter da = new SqlDataAdapter(query, conn); SqlCommandBuilder builder = new SqlCommandBuilder(da); var ds = new DataSet(); da.Fill(ds); CustomersDGV.DataSource = ds.Tables[0]; conn.Close(); } private void CustomersForm_Load(object sender, EventArgs e) { Populate(); } private void guna2Button3_Click(object sender, EventArgs e) { if (IdTb.Text == "") { MessageBox.Show("Missing information"); } else { try { conn.Open(); string query = "delete from Customers where CustomerId=" + IdTb.Text + ";"; SqlCommand cmd = new SqlCommand(query, conn); cmd.ExecuteNonQuery(); MessageBox.Show("Данные о покупателях удалены"); conn.Close(); Populate(); } catch (Exception ex) { MessageBox.Show(ex.Message); } } } private void guna2Button4_Click(object sender, EventArgs e) { MainForm mainForm = new MainForm(); mainForm.Show(); Hide(); } private void CustomersDGV_CellContentClick(object sender, DataGridViewCellEventArgs e) { IdTb.Text = CustomersDGV.SelectedRows[0].Cells[0].Value.ToString(); CustomerTb.Text = CustomersDGV.SelectedRows[0].Cells[1].Value.ToString(); PhoneTb.Text = CustomersDGV.SelectedRows[0].Cells[2].Value.ToString(); } private void guna2Button1_Click(object sender, EventArgs e) { if (IdTb.Text == "" || CustomerTb.Text == "" || PhoneTb.Text == "") { MessageBox.Show("Missing information"); } else { try { conn.Open(); string query = "insert into Customers values (" + IdTb.Text + ", '" + CustomerTb.Text + "', '" + PhoneTb.Text + "')"; SqlCommand cmd = new SqlCommand(query, conn); cmd.ExecuteNonQuery(); MessageBox.Show("Данные о покупателях добавлены"); conn.Close(); Populate(); } catch (Exception ex) { MessageBox.Show(ex.Message); } } } private void guna2Button2_Click(object sender, EventArgs e) { if (IdTb.Text == "" || CustomerTb.Text == "" || PhoneTb.Text == "") { MessageBox.Show("Missing information"); } else { try { conn.Open(); string query = "update Customers set CustomerName='" + CustomerTb.Text + "', Phone='" + PhoneTb.Text + "' where CustomerId=" + IdTb.Text + ";"; SqlCommand cmd = new SqlCommand(query, conn); cmd.ExecuteNonQuery(); MessageBox.Show("Данные о покупателях обновлены"); conn.Close(); Populate(); } catch (Exception ex) { MessageBox.Show(ex.Message); } } } } }
Структура проекта
Скриншот архива с проектом
Пояснения по запуску программы
Запустить Visual Studio, сменить путь к базе данных, запустить код на выполнение.
admin