Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
пояснююча_ковальчук.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
5.47 Mб
Скачать

Розділ 3. Реалізаця програмного забезпечення

3.1 Проектування інтерфейсу програмного продукту

Для того щоб програма якісно функціонувала всі файли задіяні під час її роботи повинні знаходитись в одному каталозі.

Відповідно до розробленої структури (рис. 2.10) було створено головне вікно програми, яке дозволяє зручно виконувати подальшу роботу. Його розробка відбувалась у MicrosoftVisualBasic 6.0. На головному вікні програми знаходяться 4 кнопки. Кнопка «Створити новий розклад» виконує функцію, котра відкриває заготовлений файл Excel, лістинг процедури наведений нижче:

Private Sub Command1_Click()

Set oExcel = CreateObject("Excel.Application")

oExcel.Workbooks.Open "D:\ДИПЛОМ\програма\Розклад.xlsm" & AIC_SIP, , , , 111, 11

oExcel.Visible = True

UserForm1.Show

End Sub

Кнопка «Редагувати вхідні дані» виконує функцію, котра відкриває файл Access. В ньому можуть бути дані котрі користувач може змінити, або ж він може бути порожнім, якщо попередніх даних не було занесено, у цьому випадку користувач заповнює таблиці своєю інформацією, код функції наведений нижче:

Private Sub Command2_Click()

Dim myAccess As Access.Application

Set myAccess = New Access.Application

myAccess.OpenCurrentDatabase "D:\ДИПЛОМ\програма\b1.accdb", True

End Sub

Кнопка «Переглянути розклад» виконує функцію відкриття файлу готового розкладу в Excel, лістинг функції наведений нижче:

Private Sub Command3_Click()

Set oExcel = CreateObject("Excel.Application")

oExcel.Workbooks.Open "D:\ДИПЛОМ\програма\Розклад готовий.xlsx" & AIC_SIP, , , , 111, 11

oExcel.Visible = True

End Sub

Кнопка «Вихід», дозволяє користувачу вийти з програми, лістинг наведений нижче:

Private Sub Command4_Click()

Unload Me

End Sub

3.2 Керівництво програміста

Відповідно до поставленого завдання першим етапом є розробка та заповнення бази даних для збереження інформації. Для цього використано середовище програми Microsoft Office Access. Зокрема, створена така схема бази даних (рис. 3.1.).

Рис. 3.1 – Схема даних

Основні таблиці, що належать цій базі даних : «Групи», «Дисципліни», «Викладачі», «Спеціальності», «РП1», «РП3»,«РП4»,«РП5»,«РП6»,«РП8»,«РП9», «РП10»,«РП11»,«РП12»,«РП14»,«РП15»,«РП20»,«РП22».

Таблиця «Групи» містить дані про номери груп, кількість учнів в них, спеціальність на якій вони навчаються, курс на якому зараз перебувають, та прізвище майстра по виробничому навчанню (рис. 3.2).

Рис. 3.2 – Таблиця «Групи»

Таблиця «Дисципліни» містить інформацію про предмети що викладаються в ліцеї (рис. 3.3).

Рис. 3.3 – Таблиця «Дисципліни»

Таблиця «Викладачі» містить особисту і службову інформацію про викладацький склад (рис. 3.4).

Рис. 3.4 – Таблиця «Викладачі»

Таблиця «Спеціальності», допоміжна прив'язана до таблиці «Групи» містить назви спеціальностей та термін навчанняна кожній з них (рис. 3.5).

Рис. 3.5 – Таблиця «Спеціальності»

Таблиці «РП1» – «РП22» містять інформацію про робочі плани кожної групи, тут визначається скільки годин на тиждень повинна проводиться та чи інша дисципліна для кожної групи індивідуально, а також вказується номер кабінету де це має відбуватись. Приклад однієї з таких таблиць наведено на рисунку 3.6.

Рис. 3.6 – Таблиця «РП6»

Після створення та заповнення бази даних, можна переходити до створення форми з вибором дій (рис. 3.7).

Рис. 3.7 – Форма «Можливі дії»

Цю форму створено засобами VBA, її завантаження іде одразу ж запуском файлу Розклад.xlsm. На ній представлено 3 кнопки, які фактично і є головними у процесі створення розкладу.

Кнопка «Перенесення інформації з бази даних» виконує функцію перенесення інформації з бази даних, до файлу Розклад.xlsm для подальшої роботи з нею. Функція кнопки викликає одразу декілька макросів, які знаходяться у модулі 1 (Додаток А.1). Лістинг функції наведений нижче:

Private Sub CommandButton1_Click()

Call g1

Call g3

Call g4

Call g5

Call g6

Call g8

Call g9

Call g10

Call g11

Call g12

Call g14

Call g15

Call g20

Call g22

End Sub

Кнопка «Створення розкладу» виконує функцію виклику декількох макросів, які знаходяться у модулі 2 (Додаток А.2). Це основна кнопка генерування розкладу. Лістинг функції наведений нижче:

Private Sub CommandButton2_Click()

Call s1

Call A3

Call A4

Call A5

Call A6

Call A8

Call A9

Call A10

Call A11

Call A12

Call A14

Call A15

Call A20

Call A22

End Sub

Кнопка «Очищення існуючого розкладу» виконує функцію очищення полів у шаблоні від створеного розкладу, для розробки нового. Лістинг функції наведений нижче:

Private Sub CommandButton3_Click()

Range(Cells(18, 5), Cells(41, 7)).Select

Selection.ClearContents

Range(Cells(2, 9), Cells(25, 11)).Select

Selection.ClearContents

Range(Cells(18, 13), Cells(41, 15)).Select

Selection.ClearContents

Range(Cells(26, 17), Cells(41, 19)).Select

Selection.ClearContents

Range(Cells(2, 21), Cells(41, 23)).Select

Selection.ClearContents

Range(Cells(18, 25), Cells(41, 27)).Select

Selection.ClearContents

Range(Cells(26, 29), Cells(41, 31)).Select

Selection.ClearContents

Range(Cells(2, 33), Cells(17, 35)).Select

Selection.ClearContents

Range(Cells(34, 33), Cells(41, 35)).Select

Selection.ClearContents

Range(Cells(2, 37), Cells(41, 39)).Select

Selection.ClearContents

Range(Cells(2, 41), Cells(41, 43)).Select

Selection.ClearContents

Range(Cells(2, 45), Cells(41, 47)).Select

Selection.ClearContents

Range(Cells(2, 49), Cells(41, 51)).Select

Selection.ClearContents

Range(Cells(2, 53), Cells(25, 55)).Select

Selection.ClearContents

Range(Cells(26, 57), Cells(41, 59)).Select

Selection.ClearContents

End Sub