Министерство образования и науки Российской Федерации
Федеральное государственное бюджетное образовательное учреждение высшего образования

Курсовая работа

По дисциплине
«Прикладное программирование»
На тему
«Программный модуль «Автосервис»»

Содержание

Введение
1. Описание предметной области
2. Описание структуры БД
3. Таблицы
4. Техническое задание
5. Описание программы
6. Компоненты
7. Схема для пользователя
8. Интерфейс
Заключение
Список литературы
Приложение

Введение

В наш век, век цифровых технологий ЭВМ играют важнейшую роль. Сейчас в каждой организации – будь то государственные учреждения или частные фирмы все компьютеризировано, а это обусловлено очень высокой вычислительной мощностью. Вычисление даже самых сложных процессов и поставленных задач выполняется в кратчайшие сроки, а фактор времени зачастую играет важнейшую роль в большинстве поставленных задач. Вычислительная мощность и объем памяти ЭВМ в последние годы стали невероятно велики, а цены на них существенно снизились, это и способствовало массовой компьютеризации абсолютно всех отраслей деятельности человека. Сейчас трудно представить жизнь без умной машины, которая упрощает и ускоряет огромное количество поставленных задач. Полезность компьютера сводится на нет при отсутствии специализированного программного обеспечению, без которого «железный помощник» становится бесполезен. В данном труде пойдет речь о создании такой немаловажной, а в большинстве организаций и основной программе, название которой база данных. В данном конкретном случае база данных автосервиса.

1. Описание предметной области

Целью задачи является получение программного продукта, позволяющего хранить сведения о клиентах сервиса, дефектах их авто, обеспечивающего эффективность и надежность обработки данных.
База данных автосервиса предназначена для операторов автосервиса и обеспечивает доступ к информации о марке авто, дате визита, неисправности, vin номере авто, также информации о клиентах: номер телефона и т.д.
Эффективность программы заключается в сокращении времени на обработку, поиска необходимой информации.
Необходимость автоматизации данной задачи связана с тем, что выборку необходимых данных для отчетов и учета работы инженеров обычно производится вручную или средствами Excel, затрачивая на это значительное количество времени. Данная программа обеспечивает также возможностями поиска, фильтрации и сортировки данных.
Никаких специальных знаний для работы с программой в области программирования не требуется.

2. Описание структуры БД

Связи таблиц :
Таблица custumers связана с таблицей masters с помощью связи 1:N по полю vin_number
Таблица custumers связана с таблицей calculation с помощью связи 1:1 по полю vin_number

3. Таблицы

Таблица 1: Клиенты (ведущая таблица)

Таблица 2: Мастера (ведомая)

Таблица 3: Мастера (ведомая)

программный автосервис база редактирование
4. Техническое задание

Основание для разработки:
Задание преподавателя для проведения практических занятий и выполнения курсовой работы.
Назначение разработки:
Программа предназначена для автоматизации работы операторов автосервиса.
Требования к программе:
• Должна автоматизировать работу оператора автосервиса
• Информация должна постоянно храниться на жестком диске ЭВМ
• Должен быть обеспечен просмотр базы данных с возможностью удаления из нее указанной информации.
Требования к надежности:
• Программа должна обрабатывать ошибочные действия пользователя и сообщать ему об этом.
• Программа должна обеспечивать контроль входной информации.

5. Описание программы

private void Form1_Load(object sender, EventArgs e) {} // загрузка основных компонентов
private void b_add_Click(object sender, EventArgs e) {} // добавление новой записи
private void b_replace_Click(object sender, EventArgs e) {} // редактирование записи
private void b_cancel1_Click(object sender, EventArgs e) {} // отмена действия
private void b_save_Click(object sender, EventArgs e) {} // сохранение изменений
private void b_record1_Click(object sender, EventArgs e) {} // записать данные
private void b_delete_Click(object sender, EventArgs e) {} // удалить данные
private void b_exit_Click(object sender, EventArgs e) {} // выход из программы

6. Компоненты

7. Схема для пользователя

Таблица 1 «Клиенты» и таблица 2 «Мастера» связаны отношением «Один-ко-многим» по полю vin_number.
Таблица 1 «Клиенты» и таблица 3 «стоимость» связаны отношением «Один-к-одному» по полю vin_number.

8. Интерфейс

Добавление новой записи

Редактирование старой записи

Удаление записи

Сортировка по дате визита

Подписанные таблицы

Главная таблица программы «Автосервис» включает в себя:
1. Список автомобилей клиентов
2. Дату обращения владельца автомобиля
3. Неисправность
4. Телефон клиента
5. Vin номер
6. Управление списком клиентов осуществляется кнопками (Добавить/Заменить/Удалить)
7. Отображение и запись клиентов салона
8. Сортировка
9. Запросы к списку клиентов
10. Выбор мастеров
11. Наименование таблиц
12. Выход из программы

Заключение

Результатом работы стало, создание программного обеспечения, обслуживающего рабочее место оператора автосервиса.
В процессе выполнения курсовой работы были приобретены навыки в области построения и программирования баз данных на языке программирования C#.

Список литературы

1. Матюхин С.А «Программирование на С# объектно-ориентированный подход» — учебно методический комплекс 2013 г.
2. А. Хейлсберг, М. Торгерсен, С. Вилтамут, П. Голд Язык программирования C#. Классика Computers Science. 4-е издание = C# Programming Language (Covering C# 4.0), 4th Ed. — СПб.: «Питер», 2012. — 784 с. — ISBN 978-5-459-00283-6
3. Э. Стиллмен, Дж. Грин Изучаем C#. 2-е издание = Head First C#, 2ed. — СПб.: «Питер», 2012. — 704 с. — ISBN 978-5-4461-0105-4
4. Эндрю Троелсен Язык программирования C# 5.0 и платформа .NET 4.5, 6-е издание = Pro C# 5.0 and the .NET 4.5 Framework, 6th edition. — М.: «Вильямс», 2013. — 1312 с. — ISBN 978-5-8459-1814-7
5. Джозеф Албахари, Бен Албахари C# 5.0. Справочник. Полное описание языка = C# 5.0 in a Nutshell: The Definitive Reference. — М.: «Вильямс», 2013. — 1008 с. — ISBN 978-5-8459-1819-2
6. Герберт Шилдт. C# 4.0: полное руководство = C# 4.0 The Complete Reference. — М.: «Вильямс», 2010. — С. 1056. — ISBN 978-5-8459-1684-6

Приложение. Код программы

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;
namespace auto
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
groupBox1.Visible = false;
groupBox2.Visible = false;
}
private void customersBindingNavigatorSaveItem_Click_1(object sender, EventArgs e)
{
this.Validate();
this.customersBindingSource.EndEdit();
this.tableAdapterManager.UpdateAll(this.db_autoDataSet);
}
private void Form1_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the ‘db_autoDataSet.masters’ table. You can move, or remove it, as needed.
this.mastersTableAdapter.Fill(this.db_autoDataSet.masters);
// TODO: This line of code loads data into the ‘db_autoDataSet.calculation’ table. You can move, or remove it, as needed.
this.calculationTableAdapter.Fill(this.db_autoDataSet.calculation);
// TODO: This line of code loads data into the ‘db_autoDataSet.customers’ table. You can move, or remove it, as needed.
this.customersTableAdapter.Fill(this.db_autoDataSet.customers);
}
private void b_exit_Click(object sender, EventArgs e)
{
Close();
}
private void button5_Click_1(object sender, EventArgs e)
{
Close();
}
private void b_add_Click(object sender, EventArgs e)
{
groupBox1.Visible = true;
b_replace.Visible = false;
b_delete.Visible = false;
b_exit.Visible = false;
b_add.Visible = false;
b_exit2.Visible = false;
b_save.Visible = false;
textBox1.Text = «»;
textBox2.Text = «»;
textBox3.Text = «»;
textBox4.Text = «»;
textBox5.Text = «»;
}
private void b_replace_Click(object sender, EventArgs e)
{
textBox10.Text = customers DataGridView.CurrentRow.Cells[0].Value.ToString();
textBox9.Text = customers DataGridView.CurrentRow.Cells[1].Value.ToString();
textBox8.Text = customers DataGridView.CurrentRow.Cells[2].Value.ToString();
textBox7.Text = customers DataGridView.CurrentRow.Cells[3].Value.ToString();
textBox6.Text = customers DataGridView.CurrentRow.Cells[4].Value.ToString();
textBox6.ReadOnly = true;
groupBox2.Visible = true;
b_add.Visible = false;
b_delete.Visible = false;
b_exit.Visible = false;
b_exit2.Visible = false;
b_replace.Visible = false;
b_save.Visible = false;
}
private void b_cancel1_Click(object sender, EventArgs e)
{
b_add.Visible = true;
b_delete.Visible = true;
b_exit.Visible = true;
b_exit2.Visible = true;
b_replace.Visible = true;
b_save.Visible = true;
groupBox1.Visible = false;
}
private void b_cancel2_Click(object sender, EventArgs e)
{
b_add.Visible = true;
b_delete.Visible = true;
b_exit.Visible = true;
b_exit2.Visible = true;
b_replace.Visible = true;
b_save.Visible = true;
groupBox2.Visible = false;
}
private void b_save_Click(object sender, EventArgs e)
{
customersBindingNavigatorSaveItem_Click_1(sender, e);
}
private void b_record1_Click(object sender, EventArgs e)
{
DataTable table = db_autoDataSet.Tables[1];
DataRow row = table.NewRow();
row[0] = textBox1.Text;
row[1] = Convert.ToDateTime(textBox2.Text);
row[2] = textBox3.Text;
row[3] = textBox4.Text;
row[4] = textBox5.Text;
table.Rows.Add(row);
groupBox1.Hide();
b_replace.Visible = true;
b_delete.Visible = true;
b_exit.Visible = true;
b_add.Visible = true;
b_exit2.Visible = true;
b_save.Visible = true;
}
private void b_record2_Click(object sender, EventArgs e)
{
Int64 vinRab;
DataTable table = db_autoDataSet.Tables[1];//12 связали динамич. табл. table с первым файлом из базы данных
vinRab = Convert.ToInt64 (customersDataGridView.CurrentRow.Cells[4].Value.ToString());//13 получили vin текущей записи
DataRow row = table.Rows.Find(vinRab);//14 совместили динамич. строку row со записью файла vin c shifrRab и перевели набор данных DataSet в состояние «редактирования», в котором он позволяет изменять значения полей
row[0] = textBox10.Text;//15 записали во второе поле строки row данное из окна
row[1] = Convert.ToDateTime(textBox9.Text);// 15 записали в третье поле строки row
row[2] = textBox8.Text; //15 записали в четвёртое поле строки row row[3] = textBox7.Text;
row[4] = textBox6.Text;
table.AcceptChanges();//15 команда AcceptChanges позволяет принять изменённые значения полей
groupBox2.Hide();//16
b_replace.Visible = true;
b_delete.Visible = true;
b_exit.Visible = true;
b_add.Visible = true;
b_exit2.Visible = true;
b_save.Visible = true;
}
private void b_delete_Click(object sender, EventArgs e)
// удаление строки под курсором
// сначала строим предупреждение, чтобы не сделать ошибочного удаления
string s1, s2, s3, s4, s5, message;
DialogResult result;// 18
int ind = customersDataGridView.CurrentRow.Index;
s1 = customersDataGridView.CurrentRow.Cells[0].Value.ToString();
s2 = customersDataGridView.CurrentRow.Cells[1].Value.ToString();
s3 = customersDataGridView.CurrentRow.Cells[2].Value.ToString();
s4 = customersDataGridView.CurrentRow.Cells[3].Value.ToString();
s5 = customersDataGridView.CurrentRow.Cells[4].Value.ToString();
message = «Марка авто= » + s1 + «\nДата визита= » + s2 + «\n Неисправность= » + s3 + «\n Тел. клиента= » + s4 + «\n vin номер» + s5;
// переменная result может принимать значения либо DialogResult.Yes, либо DialogResult.No
//19
result = MessageBox.Show(message, «Удалить следующую запись? «,
MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (result == DialogResult.Yes)//Строка удаляется
{// 20 В буферную таблицу записывается текущая таблица из customersDataGridView типа DataGrid
CurrencyManager CurMng = (CurrencyManager)customersDataGridView.BindingContext[customersDataGridView.DataSource];
if (CurMng.Count > 0) // если таблица не пуста
CurMng.RemoveAt(CurMng.Position);// удаление отмеченной позиции
}
// здесь result == DialogResult.No и удаление отвергается
// выходим из процедуры
}
}
}
Размещено на Allbest.ru

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *