Смекни!
smekni.com

Розробка автоматизованого робочого місця управління замовленнями у малому бізнесі (ПП "Сігма") (стр. 8 из 13)

– SetInitials(sSurn, sName, sPatr) sInitName – установка початкового значення;

– SetFieldFocus(ctrl, shp, fra, oList) – установка фокуса на поле;

– SetCtrlFocus(ctrl, shp, fra) – установка фокуса на поле редагування;

– ListGotFocus(lvw, shp, fra, oList) – обробка фокуса на вкладці;

– ListItemClick(lvw, itm, oList) - обробка щиглика на переліку;

– ListKeyDown(lvw, KeyCode, oList) – обробка клавіатури на перліку;

– CtrlKeyDown(ctrl, lvw, KeyCode, oList, xlvw, ylvw) – обробка клавіатури на поле редагування;

– lvwLinkKeyDown(lvwLink, lvw, KeyCode, oList, oListLink, xlvw, ylvw) – обробка клавіатури на списку зв’язку.

Основні класи системи:

– clsDB – клас База Даних;

– clsDBTable – клас Таблиця Бази даних;

– clsList – клас Список;

– clsLinkList – клас Список Зв’язку.

Методи класа База даних:

– Init(sDBFile) – ініцализація (відкриття БД);

– Term – завершення (закриття БД);

– GetData(sQuery) rs – отримання данни за SQL-запитом;

– PutData(sQuery) – зміна даних в БД за SQL-запитом;

– FieldType(sTable, sField) nType – визначення типа поля БД.

Методи класа Таблиця Бази даних:

– Init(oDB, sTable, sFieldList) – ініцализація об’єкта Таблиця;

– GetRecord(nId) vField – отримання запису за ключем;

– GetRecordOn(sQuery) vRecord – отримання запису за запитом;

– UpdateRecord(nId, vField()) – зміна запису;

– InsertRecord(vField()) nId – додавання запису;

– DeleteRecord(nId) – видалення запису;

– GetList(sWhere="") vRecordField – заповнення списку таблицею;

– GetListOn(sQuery) vRecordField – заповнення списку за запитом.

Методи класа Список:

– Init(lvw,ctr(),chk,oDB,sTable,sFieldList,sWhere="") – заповнення списку;

– GetRecord – отримання поточного запису;

– PutRecord – занесення поточного запису у БД;

– UpdateRecord – оновлення поточного запису у БД;

– InsertRecord – додавання поточного запису у БД;

– DeleteRecord – видалення поточного запису;

– NewRecord – новий запис;

– EditRecord – перехід у режим редагування.

Методи класа Список З’вязку:

– Init(lvw, oDB, sLinkTable, sMainId, sLinkId, sSourceTable, sSourceField) – ініцализація об’єкта;

– GetList(nMainId) – отримання списка за ключем.

1.5.3 Схема обробки дій користувача

Всі вкладки форм програми мають однакове призначення – виборку і вивід даних з відповідних таблиць БД. Тому вони мають однакову структуру і практично однаковий набір елементів.

Розглянемо форму frmMain.frm – головну форму програми.

До глобальних перемінніх рівня модуля: відносяться тексти запитів БД - gSQLCmd, стан форми - gFormState.

Перемінна стану форми gFormState може приймати одне з трьох значень:

– stateView – перегляд;

– stateEdit – редагування;

– stateAdd – додавання запису.

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

– видалення запису;

– перехід в режим редагування;

– перехід в режим додавання.

При видаленні запису програма вимагає підтвердження видалення. Якщо користувач підтверджує видалення, виконується SQL – запит видалення вказаного запису в БД, запис також віддаляється із списку і курсор переходить на наступний запис.

При переході в режим редагування перемінна стану форми встановлюється в значення Редагування. При переході в режим додавання перемінна стану встановлюється в значення Додавання, а поля форми очищаються.

Після введення або зміни даних користувач може натиснути на одну з кнопок на панелі інструментів (OK або Відміна) і тим самим занести нові дані в базу даних або відмінити всі зміни на формі. У разі додавання або зміни виконується відповідний SQL - запит (INSERT або UPDATE) і зміни відображаються в списку. У будь-якому випадку курсор повертається на список і стан форми встановлюється в значення Перегляд.

Далі форма чекає подальших дій користувача – натиснення відповідної кнопки на панелі інструментів.

Оброблювані події форми frmMain.frm:

– Form_Load – завантаження форми. Завантажується список рахунків за фільтрами, ініціалізуються перемінні;

– InitData – ініціалізація перемінних форми. Викликається при завантаженні форми;

– FillItem – заповнення полів форми даними з БД. Викликається при завантаженні форми і при переміщенні курсора в списку;

– ClearItem – очищення полий форми для додавання нового запису. Викликається при переході в режим додавання запису;

– BeginAddEdit – перехід форми в режим додавання або редагування;

– DeleteItem – видалення запису;

– CompleteEdit – завершення редагування. Залежно від стану форми виконується метод UpdateItem або AddItem;

– CancelEdit – відміна редагування;

– AddItem – додавання нового запису. Виконується SQL – запит вставки запису (INSERT) із значеннями полий, введеними в полях форми. Додається рядок в списку рахунків, цей рядок стає поточним, форма переходить в режим перегляду;

– UpdateItem – зміна запису. Виконується SQL – запит оновлення запису (UPDATE) із значеннями полий, введеними в полях форми. Змінюється рядок в списку рахунків, цей рядок стає поточним, форма переходить в режим перегляду;

– EnableItem – перехід форми в режим додавання або редагування;

– doUpdate – перехід форми в режим перегляду;

– doInsert – додавання рядка даних;

– doDelete – видалення рядка даних;

– doSearchColumn – пошук у стовпчику;

– doSearchMore - пошук далі;

– doSortColumn – сортування за даними стовпчика;

– doSortQuery – сортування за запитом;

– datValidate – перевірка даних;

– datError – повідомлення про помилку;

– grdDblClick – обробка стовпчика таблиці;

– grdHeadClick – обробка заголовка таблиці;

Структура модулів інших дочірніх форм аналогічна структурі описаної вище форми frmAcnts.frm.

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


2. Технологічний розділ

2.1 Керівництво користувача

2.1.1 Введення

Програма управління замовленнями у малому бізнесі "Сметы" призначена для автоматизації ведення даних про замовлення на ремонтні роботи. Програма має простій і зручний інтерфейс, інтуїтивно зрозумілий користувачеві. Програма дозволяє значно скоротити терміни виконання операцій пошуку та вводу потрібних даних.

2.1.2 Головна форма

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

– головне меню;

– панель інструментів;

– список замовлень;

– форма вводу нових замовлень.

Рисунок 2.1 – Головна форма програми

2.1.2.1 Список замовлень

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

– "Заказ" – найменування замовника;

– "№" – порядковий номер замовлення;

– "Дата" – дата замовлення;

– "% инж.расх." – відсоток інженерних робіт;

– "Услуги" – кошторис за послуги;

– "Материалы" – кошторис за матеріали;

– "Примечания" – примітка до замовлення.

З цього списку можна потрапити у форму, у якій буде докладно описані всі надані послуги, а також придбані матеріали по даному замовленню. Для цього в головному меню "Данные" необхідно вибрати пункт "Сметы".

У цьому вікні можна побачити які ремонтні послуги входять у замовлення, а також використовувані для цього матеріали. Також у цьому вікні можна редагувати усі послуги та матеріали для поточного замовлення.

2.1.2.2 Форма вводу нових замовлень

Для введення нового замовлення необхідно скористатися формою, розташованої праворуч від списку замовлень. Ця форма приведена на рис. 2.2.

Рисунок 2.2 – Форма для вводу нового замовлення


Для введення нового замовлення необхідно на панелі інструментів натиснути кнопку "Создание новой строки списка". Потім в очищені поля форми вводу увести всі необхідні дані про замовлення.

2.1.2.2 Панель інструментів

Панель інструментів служить для швидкого доступу до основних функцій програми. Панель інструментів зображена на рис. 2.3.

Рисунок 2.3 – Панель інструментів

Ця панель складається з таких кнопок як:

– "Закрытие формы" - за допомогою цієї кнопки можна закрити програму;

– "Создание новой строки списка" - ця кнопка створює нову строку списка. Це може бути нове замовлення, послуга, матеріал, тощо;

– "Удаление текущей строки списка" - видаляє поточний рядок в таблиці (замовлення, послуга, матеріал, тощо);

– "Сохранение текущих данных" - зберігає введенні дані в базу даних;

– "Отмена изменений" - скасовує введені зміни.

2.1.3 Головне меню

Головне меню є системою навігації для роботи з даною програмою (див рис. 2.4).

Рисунок 2.4 – Головне меню програми

Меню "Данные" містить наступні пункти:

– "Сметы" – відкриває форму кошторисів даного замовлення;

– "Печать" – відкриває форму печатки кошторисів даного замовлення;

– "Справочники" – відкриває форму довідників;

– "Війти" – здійснює вихід із програмы.

Меню "?" - містить пункт меню інформації про програму.

2.1.4 Меню "Данные"

Меню "Данные" наведено на рис. 2.5.

Рисунок 2.5 – Меню "Данные"

2.1.4.1 Пункт меню "Сметы"

При виборі цього пункту на екрані з'явиться форма, зображена на рис 2.6.