Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовий_4_7_Доброштан(1).docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
4 Мб
Скачать
☆

Постановка задачі

Метою даної роботи є забезпечення інформаційної підтримки та відображення результатів роботи розробників лабораторії цифрових пристроїв в електронному вигляді.

Головною задачею системи є полегшення роботи звітності та моніторингу процесу роботи розробників, для менеджерів проекту та головного інженеру в процесі перевірки якості роботи . Особливістю реалізації функцій, які покладені на систему є необхідність зручного введення даних в таблиці за рахунок зручного інтерфейсу з кнопками.

Обов’язками користувача, яким може бути як менеджер окремого проекту, завідувач лабораторії або головний інженер є перегляд виконаних завдань розробника та їх результатів, оформлення відповідної документації, проведення статистичних досліджень по роботі розробників, по використанню системного програмного забезпечення або окремного навігаційного пристрою. В якості СУБД використовується MS SQL Server 2012, що дає змогу адміністратору робити архівну копію даних на випадок аварійної ситуації

Користувачами даної системи виступають, менеджер проекту, завідувач лабораторії та головний інженер.

Обов’язками користувача є заповнення необхідними даними відповідні таблиці, для подальшого формування їх у вигляді звіту.

Інформаційна система моніторингу виконаних завдань розробниками лабораторії цифрових пристроїв ТОВ «НАВІС-Україна» виконує такі функції:

  • збереження введених даних пов’язаних з персоналом, замовниками, розробленими проектами, навігаційними пристроями та використання системного програмного забезпечення;

  • визначення якості роботи за кожним з розробників;

  • здійснення пошуку, фільтрації, вибірки з БД;

  • формування звітів;

  • переведення в електронний вигляд всієї документації;

  • реалізація валідації, обробка виключень;

  • додавання звітності, можливості друку з інтерфейсу системи;

  • організація пошуку документація за номером відомчого розпорядження;

  • вибірка по розробникам програмного забезпечення зданих робіт;

  • реалізація зручного інтерфейсу користувача, для інтуїтивної роботи.

Методи вирішення задачі

Після виробничої практики, маючи всі необхідні дані, проводимо детальний аналіз роботи лабораторії цифрових пристроїв ТОВ «НАВІС-Україна». Спочатку необхідно побудувати логічно-фізичну модель даних за допомогою CASE-засобу AllFusion ERWin Data Modeler. Фізична модель наведена в додатку 1. Далі на основі створеної моделі генеруємо базу даних в MS SQL Server 2012 (Tools/Forward Engineer/Schema Generation), перед цим створивши порожню базу даних. Генерація структури БД на основі створеного SQL коду відбувається після натиснення кнопки Generate. Діалог зв’язку з БД і виконання SQL коду відбувається результаті натиснення кнопки Connect. Отримуємо згенеровану базу даних в середовищі MS SQL Server 2012. Вигляд схеми даних наведений в додатку 2.

Для під‘єднання БД до середовища Microsoft Visual Studio 2015 використовується компонент “Источник даних”, потім обираємо додати нове джерело далі вводимо назву сервера та обираємо нашу БД , після перевірки підключення можна починати роботу.

Для роботи з MS SQL Server 2012 створюємо набір даних з відповідними таблицям, це забезпечить DataSet, який має вигляд:

Рис 1: Схема Розробка_ПЗDataSet у вигляді XSD

Для організації управління проектом за допомогою меню, на головній формі розміщуємо елемент MenuStrip та додаємо необхідні вкладки:

Рис 2: Створенне меню проекта

Для можливості переходу між формами для кожної вкладки меню прописуємо наступний код:

private void відомчеРозпорядженняToolStripMenuItem_Click(object sender, EventArgs e)

{

Vid_RozpForm vid_RozpForm = new Vid_RozpForm();

vid_RozpForm.ShowDialog();

}

Аналогічний код застосовуємо для всіх пунктів меню.

Для того, щоб помістити поля на форми введення даних у меню Дані застосовуємо команду «Показать источники даных». Обираємо необхідну таблиці, та спосіб представлення, та перетягуємо її на форму.

Для додавання зв’язаних таблиць треба перетянути відповідну дочірню таблицю в меню «Источники даных» в списку полів батьківської таблиці.

Рис. 3. Додавання підпорядкованої таблиці «Акт виконаних робіт» до батьківської таблиці «Персонал»

Для зручності введення інформації в підпорядкованих таблицях заміняємо поля «код_персоналу», «код_пристрою» тощо, на спадаючі списки з відповідними найменуваннями (наприклад: «код_персоналу» -> «ПІБ»).

У властивості Clumns (Коллекция), для обраного поля змінюємо ColumType на DataGridViewTextBoxColumn, та налаштовуємо Дані:

Рис 4: Налаштування властивостей поля зі списком

Для зручності пошуку, створемо параметричний запит за допомогою «Постоитель запросов», по Назві пристрою:

Рис 5: Створення параметричного запиту

В результаті отримуємо TableAdepter такого вигляду:

Рис 6: TableAdepter параметричного запиту

Для зручності організуємо поле пошуку у вигляні випадаючого списку (СomboBox), та привяємо його до даних:.

Рис 7: Налаштування властивостей СomboBox, привязка до даних

Властивість Name: cbFind

Так як в процедурі пошуку ми беремо дані з списку за допомогою функції SelectedValue, яка приймає дані з ValueMember, це означає, що в полі Член значення, треба обрати значення, за яким ми шукаємо (у даному випадку, поле - назва_пристрою).

Код кнопки пошуку має такий вигляд:

private void btnFind_Click(object sender, EventArgs e)

{

try

{

this.paramZaprosTableTableAdapter.Fill(this.розробка_ПЗDataSet.ParamZaprosTable, cbFind.SelectedValue.ToString());

}

catch (System.Exception ex)

{

System.Windows.Forms.MessageBox.Show(ex.Message);

}

}

Рис 8: Форма реалізації параметричного пошуку

Аналогічним способом забезпечено пошук для таблиці Пристрій, результат має такий вигляд:

Рис 9: Пошук за назвою, в таблиці Навігаційних пристрій

Для можливості переглядати акти виконаних робіт по кожному з розробників, застосуємо фільтр.

Рис 10: Форма з реалізованим фільтром

Рис 11: Привязка до даних елементу ComboBox

Член значення може бути не лише ключовим полем, головне правильно прописати умову в функції фільтр: назва_таблиціBindingSource.Filter = "(назва_поля='" + обране_значення_з_елементу_управління+"')";

Код RadioButton для ввімкнення та вимкнення режиму фільтрації, має такий вигляд:

private void rbOn_CheckedChanged(object sender, EventArgs e)

{

this.акт_виконаних_робітBindingSource.Filter = "(код_персоналу='" + PIBFound.SelectedValue+"')";

}

private void rbOff_CheckedChanged(object sender, EventArgs e)

{

this.акт_виконаних_робітBindingSource.RemoveFilter();

}

Запит на вибірку Здані роботи, має такий вигляд:

Рис 12: Код запиту на вибірку

Рис 13: Приклад виконання запиту на вибірку