Задание:
Автоматизировать рабочее место менеджера по продажам автомобилей марки BMW.
- Средство для автоматизации работы менеджера по продаже легковых автомобилей.
- Организовать ведение базы даных, содержащей информацию об автомобилях (марка, страга, год выпуска, технические характеристики, особенности исполнения, техническое состояние, цена) и клиентах.
- Осуществить автоматизированный подбор вариантов покупки автомобилей (требования к модели, техническим характеристикам и техническому состоянию, допустимая цена).
- Обеспечить возможность просмотра и поиска необходимо пользователю информации.
- Предоставить возможность сортировки данных по различным критериям.
- Создать отчеты по интересующей пользователя информации, в том числе и статитической с возможностью выбора аналитики и оцениваемых параметров.
- Организовать возможность экспорта в файлы Microsoft Office интересующей пользователя информации.
- Создать справочную систему приложения.
- Обеспечить организацию интерфейса приложения средствами создания меню, кнопочных форм, панелей инструментов.
Программа выполнена в приятных голубых тонах, с уникальным икон паком!
Содержимое проекта:
Содержимое папки Data (bin/Debug/Data):
- DB - папка с исходным SQL кодом, для создания базы данных и её заполнения
- Help - папка с файлом справки о проекте, а также проектом Help and Manual для изменения файла справки
- Ico - папка со всеми иконками проекта
- Img - папка со всеми изображениями проекта
Для проекта было разработано три класса: cMSQSQLConnection.vb, cPrintExcel.vb, cProcedures.vb.
Класс cMSQSQLConnection.vb:
- Соединение с базой данной
- Закрытие соединения
- Запросы к базе данных
- Выгрузка данных в таблицу
- Агрегатные запросы
- Выгрузка столбца с данными в выпадающий список
Класс cPrintExcel.vb:
- Печать таблицы в Excel
Класс cProcedures.vb:
- Удаление записи из таблицы
- Добавление фотографии
- Удаление фотографии
Пример кода:
'Правка/Изменить Private Sub ИзменитьToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ИзменитьToolStripMenuItem.Click 'Ставим флаг добавления в False, редактируем запись bAdd = False 'Переменная хранящая индекс текущей строки Dim x As Integer = 0 'Открыть главную панель PanelBMW.Visible = True 'Меняем название лейбла LabelAddEdit.Text = "Изменяем запись" 'Меняем название редактируемой таблицы LabelNameOfTable.Text = cbTablesName.Text 'SPECIFICATIONS If (cbTablesName.SelectedIndex = 0) Then 'Возвращаем вкладку на место TabPagePanelSpec.Parent = TabControlPanels 'Меняем имя TabPagePanelSpec.Text = "Данные" Try 'Определяем индекс выбранной строки x = DataGridViewBMW.CurrentRow.Index Catch exc As Exception MsgBox("Редактировать нечего!", vbOK + vbExclamation, "Сообщение") Exit Sub End Try 'Переносим данные на форму cbSpecifications_EngineType.Text = Convert.ToString(DataGridViewBMW(1, x).Value) NumericUDSpecifications_EngineCapacity.Value = Convert.ToInt32(DataGridViewBMW(2, x).Value) NumericUDSpecifications_HorsePower.Value = Convert.ToInt32(DataGridViewBMW(3, x).Value) NumericUDSpecifications_FuelConsumption.Value = Convert.ToInt32(DataGridViewBMW(4, x).Value) tbSpecifications_PerformanceFeatures.Text = Convert.ToString(DataGridViewBMW(5, x).Value) 'Открываем побочную панель PanelSpecifications.Visible = True 'MANAGER ElseIf (cbTablesName.SelectedIndex = 1) Then 'Возвращаем вкладку на место TabPagePanelManager.Parent = TabControlPanels 'Меняем имя TabPagePanelManager.Text = "Данные" Try 'Определяем индекс выбранной строки x = DataGridViewBMW.CurrentRow.Index Catch exc As Exception MsgBox("Редактировать нечего!", vbOK + vbExclamation, "Сообщение") Exit Sub End Try 'Переносим данные на форму tbManagerFIO.Text = Convert.ToString(DataGridViewBMW(1, x).Value) tbManager_Phone.Text = Convert.ToString(DataGridViewBMW(2, x).Value) 'Открываем побочную панель PanelManager.Visible = True 'CLIENT ElseIf (cbTablesName.SelectedIndex = 2) Then 'Возвращаем вкладку на место TabPagePanelClient.Parent = TabControlPanels 'Меняем имя TabPagePanelClient.Text = "Данные" Try 'Определяем индекс выбранной строки x = DataGridViewBMW.CurrentRow.Index Catch exc As Exception MsgBox("Редактировать нечего!", vbOK + vbExclamation, "Сообщение") Exit Sub End Try 'Переносим данные на форму tbClient_FIO.Text = Convert.ToString(DataGridViewBMW(1, x).Value) tbClient_Phone.Text = Convert.ToString(DataGridViewBMW(2, x).Value) DateTPClient_DateOfIssue.Value = Convert.ToDateTime(DataGridViewBMW(3, x).Value) DateTPClient_DateBirth.Value = Convert.ToDateTime(DataGridViewBMW(4, x).Value) tbClient_IssuedBy.Text = Convert.ToString(DataGridViewBMW(5, x).Value) tbClient_Batch.Text = Convert.ToString(DataGridViewBMW(6, x).Value) NumericUDClient_Number.Value = Convert.ToInt32(DataGridViewBMW(7, x).Value) 'Открываем побочную панель PanelClient.Visible = True 'AUTO ElseIf (cbTablesName.SelectedIndex = 3) Then 'Возвращаем вкладку на место TabPagePanelAuto.Parent = TabControlPanels 'Меняем имя TabPagePanelAuto.Text = "Данные" Try 'Определяем индекс выбранной строки x = DataGridViewBMW.CurrentRow.Index Catch exc As Exception MsgBox("Редактировать нечего!", vbOK + vbExclamation, "Сообщение") Exit Sub End Try 'Переносим данные на форму tbAuto_Country.Text = Convert.ToString(DataGridViewBMW(1, x).Value) cbAuto_FK_Specification.Text = Convert.ToString(DataGridViewBMW(2, x).Value) NumericUDAuto_Count.Value = Convert.ToInt32(DataGridViewBMW(3, x).Value) DateTPAuto_YearOfIssue.Value = Convert.ToDateTime(DataGridViewBMW(4, x).Value) NumericUDAuto_Price.Value = Convert.ToInt32(DataGridViewBMW(5, x).Value) tbAuto_CarMark.Text = Convert.ToString(DataGridViewBMW(6, x).Value) tbAuto_CarModel.Text = Convert.ToString(DataGridViewBMW(7, x).Value) tbAuto_TechnicalCondition.Text = Convert.ToString(DataGridViewBMW(8, x).Value) 'Открываем побочную панель PanelAuto.Visible = True 'ORDER_CAR ElseIf (cbTablesName.SelectedIndex = 4) Then 'Возвращаем вкладку на место TabPagePanelOrderCar.Parent = TabControlPanels 'Меняем имя TabPagePanelOrderCar.Text = "Данные" Try 'Определяем индекс выбранной строки x = DataGridViewBMW.CurrentRow.Index Catch exc As Exception MsgBox("Редактировать нечего!", vbOK + vbExclamation, "Сообщение") Exit Sub End Try 'Переносим данные на форму cbOrderCar_FK_Manager.Text = Convert.ToString(DataGridViewBMW(1, x).Value) cbOrderCar_FK_Client.Text = Convert.ToString(DataGridViewBMW(2, x).Value) cbOrderCar_FK_Auto.Text = Convert.ToString(DataGridViewBMW(3, x).Value) DateTPOrderCar_Date.Value = Convert.ToDateTime(DataGridViewBMW(4, x).Value) NumericUDOrderCar_Summ.Value = Convert.ToInt32(DataGridViewBMW(5, x).Value) 'Открываем побочную панель PanelOrderCar.Visible = True End If End Sub
Перед первым запуском проекта требуется внимательно изучить файл инструкции Настройки.docx.
Содержание архива
-
Исходный код на VBA.NET для Visual Studio
-
Исходный код на SQL для MS SQL Server
- Файл инструкции по установке и настройке
Zicise