Автошкола "Кадиллак"
Плохов В.В. Автошкола “Кадиллак”
Челябинск: ЮУрГУ, ЭиУ; 2007, 22с.
Это приложение разработано для того, чтобы автоматизировать все основные аспекты работы с данными предприятия “Автошкола”. Такие как: Занесение новых клиентов в базу данных, получение о клиентах информации из базы данных, быстрый расчет статистической информации об успешности обучения в автошколе различными категориями клиентов.
Использование этого приложения позволит в значительной мере сэкономить время сотрудникам, при работе с информацией, а также избежать ошибок за счет наличия средств контроля вводимой информации, которые позволят вовремя обнаружить ошибочную информацию и уведомить об этом пользователя.
Содержание
Содержание. 3
1. Введение. 4
2. Основная часть. 6
2.1 Постановка задачи. 6
2.2 Исходные данные. 7
2.3 Описание структуры приложения. 9
2.4 Описание форм. 10
2.4.1 Главная форма. 10
2.4.2 Форма “Справка”. 12
2.4.3 Форма “Группы”. 14
2.4.4 Форма “Формирование группы”. 16
2.4.5 Форма “Клиенты”. 18
2.4.6 Форма “Добавление клиента”. 19
2.4.7 Форма “Формирование бланка оплаты”. 22
2.4.8 Форма “Допуски”. 23
2.4.9 Форма “Информация о клиенте”. 25
2.4.10 Форма “Статистика сдачи”. 25
2.4.11 Форма “Статистика инструкторов”. 27
2.5 Отчёты.. 28
2.5.1 Информация о клиенте. 28
2.5.2 Результаты учебы.. 29
2.5.3 Статистика инструкторов. 30
3. Заключение. 31
4. Литература. 31
5. Приложения. 32
5.1 Главная форма. 32
5.2 Форма “Справка”. 34
5.3 Форма “Группы”. 35
5.4 Форма “Формирование группы”. 38
5.5 Форма “Клиенты”. 41
5.6 Форма “Добавление клиента”. 42
5.7 Форма “Формирование бланка оплаты”. 47
5.8 Форма “Допуски”. 50
5.9 Форма “Информация о клиенте”. 56
5.10 Форма “Статистика сдачи”. 59
5.11 Форма “Статистика инструкторов”. 65
1. Введение
Microsoft Excel имеет встроенный язык программирования - Visual Basic for Аpplications (VBA). Этот язык позволяет создавать приложения, выполняемые в среде Microsoft Office. Это могут быть разнообразные аналитические программы, финансовые системы, программы учета кадров, системы автоматического создания официальных писем/документов с помощью библиотеки готовых шаблонов и т.п. При этом интерфейс создаваемой программы может быть совершенно непохожим на интерфейс того приложения, в котором она написана.
VBA сочетает в себе практически неограниченные возможности с простотой изучения и использования. Теперь большинство функций можно описать, не прибегая к программированию.
Программа MS Excel, являясь лидером на рынке программ обработки электронных таблиц, определяет тенденции развития в этой области. Вплоть до версии 4.0 программа Excel представляла собой фактический стандарт с точки зрения функциональных возможностей и удобства работы.
Одним из важнейших функциональных расширений программы, предназначенным для профессионалов, является встроенная в Excel Среда программирования Visual Basic (VBA) для решения прикладных задач. Благодаря VBA фирме Microsoft удалось не только расширить возможности языка макрокоманд Excel 4.0, но и ввести новый уровень прикладного программирования, поскольку VBA позволяет создавать полноценные прикладные пакеты, которые по своим функциям выходят далеко за рамки обработки электронных таблиц.
Visual Basic for Applications представляет собой новаторское достижение в языках программирования, возможно наиболее значительное с тех пор, как состоялся выпуск первой интегрированной среды разработки. Это означает, не то что VBA — лучшее средство разработки, а лишь то, что VBA существует. Поскольку основой приложений Microsoft послужил один и тот же язык программирования, вероятно, многим придет в голову мысль воспользоваться им. Точно так же, как пользователям Windows для подготовки множества программ необходимо освоить один интерфейс, в VBA достаточно изучить одну среду программирования, чтобы составлять разнообразные приложения.
Встраивание VBA в какое-то приложение означает для него создание объектной модели, в результате VBA-программа может обращаться к объектам этого приложения и манипулировать ими.
Введение достаточно мощного языка программирования в Excel делает эту программную платформу весьма привлекательной для профессионалов, которые занимаются разработкой специализированных прикладных систем.
Разработка языка программирования VBA, встраиваемого в прикладные системы, является одним из стратегических направлений компании Microsoft. Этот язык уже интегрирован в такие программы, как Word for Windows, Power Point и ряд других. VBA позволяет создавать программные модули, меню, диалоговые окна и другие ресурсы в среде Windows. Благодаря этому языку появляется возможность значительно расширить набор функций в Excel, а также создавать функции, значения которых зависят от некоторых условий и событий.
2. Основная часть
2.1 Постановка задачи
Используя средства Microsoft Office Excel и средство разработки программных продуктов VBA создать приложение, автоматизирующее оперирование информацией предприятия типа “Автошкола”. А именно:
1) Добавление новых клиентов в базу данных автошколы.
2) Формирование группы.
3) Расформирование группы.
4) Внос оплаты клиентами.
5) Редактирование необходимой информации об учебе (Экзамены/Зачеты).
6) Просмотр полной отчетной информации о клиенте.
7) Формирование отчетов об успешности сдачи экзаменов различными категориями клиентов.
8) Формирование отчетов об успешности сдачи экзаменов учениками обучаемыми конкретными инструкторами (для анализа работы инструкторов).
9) Справка по программе.
2.2 Исходные данные
Исходная таблица данных хранится на листе “Данные” (по умолчанию скрыт). На нем содержится информация о преподавателях теории.
Рисунок 1 – “Преподаватели теории”
Также на нем содержится информация о преподавателях вождения.
Рисунок 2 - "Преподаватели вождения"
Информация о текущей группе (эта информация записывается средствами диалога формирования группы).
Рисунок 3 - "Текущая группа"
Информация об условиях обучения (оплате за курс обучения, необходимому количеству откатанных часов).
Рисунок 4 - "Условия обучения"
Главная база данных же, формируется на листе “База”, который также по умолчанию скрыт.
2.3 Описание структуры приложения
2.4 Описание форм
2.4.1 Главная форма
При открытии рабочей книги проекта, автоматически запускается главная форма приложения.
Рисунок 5 – Главная форма
В рамке “Текущая группа” – содержится информация о дате, когда было начато обучение группы. Дата, когда программа обучения будет пройдена, а также количество дней оставшихся до конца программы обучения. Если в поле “Осталось дней до конца обучения” – содержится отрицательное число – это значит, что программа обучения уже была завершена, однако группа еще не расформирована, по каким-либо причинам.
Однако все эти данные отображаются при условии, что группа сформирована, в противном же случае в рамке будет отображено “Не установлено”.
Рисунок 6 - Рамка "текущая группа" , при наличии текущей группы
Рисунок 7 – Рамка "текущая группа" , при отсутствии текущей группы
Кнопка “Справка” на главной форме – открывает окно, отображающее краткую справочную информацию по использованию приложения.
Кнопка “Группа” на главной форме – открывает окно, по управлению группой, где можно формировать и расформировывать группы.
Кнопка “Клиенты” на главной форме – открывает окно Клиенты, где производятся все основные операции с клиентами, такие как добавление нового клиента, внесение оплаты клиентами, управление допусками клиента (внесение информации о сдаче экзаменов и зачетов), получение полной информации по клиенту.
Кнопка “Статистика сдачи” на главной форме – открывает окно позволяющее формировать отчеты о сдаче экзаменов различными категориями клиентов обучаемых/обученных в автошколе.
Кнопка “Статистика инструкторов” на главной форме – ткрывает окно позволяющее формировать отчеты о сдаче экзаменов учениками, обучающимися у конкретных мастеров.
Кнопка “Выход” – сохраняет все внесенные изменения, и закрывает приложение.
2.4.2 Форма “Справка”
В Справке информация разбита по категориям, каждая из которых отображается в свою очередь в отдельной рамке. Справка содержит минимально необходимую информацию по работе с приложением. Клик на кнопке “Все ясно!” в справке – приводит к возвращению в главное меню программы.
Рисунок 8 – Справка
2.4.3 Форма “Группы”
Рисунок 9 – окно “Группа”
Здесь в двух вкладках содержатся списки клиентов. Во вкладке “Текущая группа” – содержится список клиентов, которые в данный момент проходят обучение. А во вкладке “Очередь” – содержится список клиентов, которые записаны в автошколу, однако еще не начали обучение. Если текущая группа не сформирована, то список на вкладке “Текущая группа” будет пуст.
Рисунок 10 – Список Рисунок 11 - Список "Очередь"
“Текущая группа”
Кнопка “Сформировать группу” – открывает окно формирования группы в том случае, если текущей группы не существует, в противном случае будет возвращено сообщение об ошибке.
Рисунок 12 – Сообщение об ошибке
Кнопка “Выпустить группу”, если план обучения не завершен, выдаст ошибку о невозможности расформирования группы.
Рисунок 13 –Ошибка “Программа обучения не пройдена”
Если программа обучения пройдена, то появится запрос на подтверждение о расформировании группы.
Рисунок 14 - Запрос "Расформирование группы"
Ответ “Нет” вернет в окно “Группа”, ответ “Да” также вернет в окно группа, однако текущая группа будет расформирована, а всем обучающимся присвоен статус “Окончил”.
Кнопка “Закрыть” – вернет в главное меню.
2.4.4 Форма “Формирование группы”
При активации окна формирования группы, автоматически устанавливаются значения полей “Начало обучения” и “Конец обучения”. “Начало обучения” устанавливается в соответствии с текущей системной датой, а конец обучения через 90-дневный срок от текущей даты. Выпадающий список “Учитель” содержит фамилии всех преподавателей теории.
Рисунок 15- Окно формирования группы
Для формирования группы необходимо перенести клиентов, которые будут включены в группу, из списка “Ожидающие клиенты” в список “Формируемая группа”. Перенос осуществляется посредством кнопок “==>>” и “<<==”, также стоит заметить, что при выборе значений из списка работает multiselect (множественный выбор). После завершения выбора необходимо нажать на кнопку “Сформировать”. Если список “Формируемая группа” будет пуст, то будет возвращена ошибка.
Рисунок 16 – Ошибка “Группа пуста”
Если во введенных датах будет содержаться ошибочная информация, то будет возвращена ошибка.
Рисунок 17 – Ошибка “Неверная дата”
Если вся введенная информация будет корректна, и список “Формируемая группа” не будет пуст, то при клике на кнопку “Сформировать” будет выдан запрос о подтверждении формирования группы.
Рисунок 18 - Подтверждение формирования группы
При ответе “Нет” вы будете возвращены в окно формирования группы, при ответе “Да” вы попадете в окно “Группа”, и текущая группа будет сформирована. Т.е. будут установлены сроки обучения и всем членам ныне текущей группы вместо статуса “Ожидает” будет присвоен статус “Обучаемый”.
Кнопка “Закрыть” – вернет вас в окно “Группа”.
2.4.5 Форма “Клиенты”
Рисунок 19 - Окно "Клиенты"
Кнопка “Добавить клиента” – открывает окно “Добавление клиента”, где посредством заполнения полей на форме, будет сформирована новая в базе данных о клиенте.
Кнопка “Внести оплату” – открывает окно “Формирование бланка оплата”, где можно сформировать бланк оплаты для конкретного клиента и непосредственно внести оплату за обучение.
Кнопка “Допуски” – открывает окно “Данные по учебе клиента”, где формируется вся информация, о сдаче экзаменов/зачетов клиентом.
Кнопка “Информация о клиенте” – открывает окно выбора клиента, по которому будет выведена информация.
Кнопка “Закрыть” – вернет вас в главное меню.
2.4.6 Форма “Добавление клиента”
Рисунок 20 - Окно "Добавление клиента"
Рамка “Личные данные” – предназначена для ввода такой информации, как “Фамилия”, “Имя”, “Отчество”, “Дата рождения”.
Рисунок 21 – Рамка “Личные данные”
Рамка “Паспортные данные” – предназначена для ввода такой информации, как “Кем выдан”, “Дата выдачи”, “Серия”, “Номер”.
Рисунок 22 - Рамка "Паспортные данные"
Рамка “Адрес” – предназначена для ввода такой информации, как “Улица”, “Дом”, “Квартира”, “Домашний телефон”, “Сотовый телефон”. Однако номера телефонов являются опциональными полями, то есть их необязательно заполнять, они помечены звездочкой “*”.
Рисунок 23 - Рамка "Адрес"
Рамка “Остальное” – содержит два выпадающих списка: “Автомобиль” и “Инструктор”. Сперва клиент выбирает марку автомобиля, на котором желает проходить обучения. И в зависимости от выбранной им марки формируется выпадающий список “Инструктор”, из тех мастеров, которые обучают вождению на выбранной пользователем модели автомобиля.
Рисунок 24 – Рамка “Остальное”
Кнопка “Внести в базу данных!” – осуществляет запись клиента в базу. Если вся информация введена в необходимом объеме и без ошибок, то будет выдано сообщение об успешном внесении клиента в базу данных. После нажатия на кнопку “ОК”, вы будете возвращены в окно “Клиенты”.
Рисунок 25 – Сообщение об успешном внесении клиента в базу данных
В том случае, если данные введены не в полном объеме или содержат ошибки, то будет выдано сообщение об ошибке.
Рисунок 26 - Сообщение ошибочных данных
2.4.7 Форма “Формирование бланка оплаты”
Рисунок 27 - Формирование бланка оплата
В поле “Дата оплаты” – устанавливается дата, когда произведена оплата. Выпадающий список “ФИО Плательщика” – содержит клиентов со статусами “Обучаемый” и “Ожидает”, он предназначен для выбора плательщика. Поле “Сумма платежа” – предназначено для ввода суммы, которая будет переведена на счет автошколы. Кнопка “Сформировать бланк” – переводит в вас к бланку оплаты, но только в том случае, если введенная сумма отлична от 0, и дата оплаты установлена корректно. В противном случае будет выдано сообщение об ошибке.
Рисунок 28 - сообщение ошибочных данных
В том случае, если вы удачно перешли к бланку оплаты, то окно “Формирование бланка оплаты” будет скрыто, и вы сможете распечатать бланк посредством кнопки “Печать”, либо вернуться к окну “Формирование бланка оплаты” посредством кнопки “Вернуться”.
После того, как плательщик передаст деньги кассиру и распишется об оплате денег, то необходимо занести сведения об оплате клиентом в базу данных. Для этого с нужными выбранными значениями окна “Формирование бланка оплаты” нужно нажать на кнопку “Подтвердить оплату”. Тогда, вам будет отображено сообщение об успешном занесении оплаты в базу данных.
Рисунок 29 – Сообщение внесения оплаты
Кнопка “Закрыть” – возвратит вас к окну “Клиенты”.
2.4.8 Форма “Допуски”
Рисунок 30 - Окно "Допуски"
Вверху содержится выпадающий список, который включает в себя всех клиентов, которые в данный момент проходят обучение. После выбора клиента отображается информация о том сколько он оплатил, сколько откатал часов, и какие экзамены/зачеты он сдал. Для получения допуска до внутренних экзаменов, клиент должен сдать все зачеты, а именно “ПДД”, “Первая помощь”, должен пройти медицинский осмотр, оплатить полную сумму обучения, и откатать положенный минимум академических часов на автомобиле. Если все эти условия будут выполнены, то рамка “Допуск до внутренних экзаменов” станет неактивной, и активизируется рамка “Допуск до экзаменов в ГАИ”. Для того чтобы получить допуск до экзаменов в ГАИ, клиент обязан успешно сдать внутренние экзамены, а именно “ПДД”, “Автодром”, “Город”. Только после успешной сдачи этих экзаменов клиент может быть допущен до окончательного этапа “Экзамены в ГАИ”. В этом случае, рамка “Допуск до экзаменов в ГАИ” становится неактивной, а рамка “Экзамены в ГАИ” активизируется. Сюда заносится информация о результатах экзаменов в ГАИ, которые в дальнейшем влияют на статистику общего уровня сдачи/не сдачи экзаменов в ГАИ от автошколы.
Рисунок 31 - Окно "Допуски", после некоторых изменений
Кнопка “Сохранить” – сохраняет все внесенные изменения о результатах зачетов/экзаменов.
Кнопка “Выйти” – возвращает в окно “Клиенты”.
2.4.9 Форма “Информация о клиенте”
Рисунок 32 - Окно "Информация о клиенте"
Эта форма является простым инструментом для формирования отчета по клиенту. Левый выпадающий список содержит тип