Программа 'Автомастерская'

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    1,2 Мб
  • Опубликовано:
    2015-03-31
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Программа 'Автомастерская'

Введение

В 2010-2011 году вклад автотранспорта в объем перевозок в России составил 77%, пассажиров 53%(без учета личного транспорта), такие показатели характерны для развитых стран, при этом продолжается рост автопарка количественно и качественно, который показывает уровень развития экономики страны и оказывает непосредственное влияние на развитие страны. По данным независимых экспертов в области автотранспорта за первый квартал 2010 года было поставлено на учет 2 млн. автомобилей, а до конца этого года планируется еще зарегистрироваться 2 млн. автомобилей, для России это очень большой показатель. Весь этот автопарк так или иначе нуждается в техническом обслуживании, в условиях дефицита качественных и доступных СТО. Чем и занимается «Peugeot-Сервис» [1].

В процессе эксплуатации автомобиля его рабочие свойства постепенно ухудшаются из-за изнашивания деталей, а также коррозии материала, из которого они изготовлены. В автомобиле появляются отказы и неисправности, которые устраняют при техническом обслуживании (ТО) и ремонте.

Исправным считают автомобиль, который соответствует всем требованиям нормативно-технической документации. Работоспособный автомобиль в отличие от исправного должен удовлетворять лишь тем требованиям, выполнение которых позволяет использовать его по назначению без угрозы безопасности движения. Повреждением называют переход автомобиля в неисправное, но работоспособное состояние; переход его в неработоспособное состояние называют отказом.

Ремонт представляет собой комплекс операций по восстановлению исправности или работоспособности изделий и восстановлению ресурсов изделий и их составных частей [2].

Необходимость и целесообразность ремонта автомобилей обусловлены, прежде всего, из-за качества их составных частей (сборочных единиц и деталей). Известно, что создать равнопрочный автомобиль, все детали которого изнашивались бы равномерно и имели бы одинаковый срок службы, невозможно. Поэтому в процессе эксплуатации автомобили проходят периодическое ТО и при необходимости текущий ремонт (ТР), который осуществляется путём замены отдельных деталей и агрегатов. Это позволяет поддерживать автомобили в технически исправном состоянии.

Текущий ремонт должен обеспечивать гарантированную работоспособность автомобиля на пробеге до очередного планового ремонта, причём этот пробег должен быть не менее пробега до ТО. В случае возникновения отказов выполняют неплановый (ТР), при котором меняют или восстанавливают детали и сборочные единицы в объёме, определяемом техническим состоянием автомобиля.

При пробеге автомобиля свыше 200 т.км (может варьироваться от способа эксплуатации автомобиля) необходимо проводить капитальный ремонт. Капитальный ремонт должен обеспечивать исправность и полный (либо близкий к полному) ресурс автомобиля или агрегата путём восстановления и замены любых сборочных единиц и деталей, включая базовые.

Целью данного проекта является проектирование станции технического обслуживания для сохранения надежности и исправности автомобилей, повышения срока их службы и выполнение необходимых для этого работ по ремонту и уходу, что в конечном итоге приведет к повышению безопасности движения.      

В качестве программной реализации используется язык программирования VB.6, VB. Net. Данный выбор обоснован надежностью, а также его легкостью к будущим модернизациям.

1. Спецификация требований к программному обеспечению

.1 Введение

Цель

Внедрение компьютерных информационных технологий в организацию позволяет осуществить основные цели:

получение прибыли

уменьшение сроков на выполнение работ

увеличение качества обслуживания

Главной целью при создании автоматизированной системы является повышение всех показателей на производстве, организации, фирме. Для повышения производительности труда используются средства, которые позволяют за меньший промежуток времени выполнить максимальное количество задач. Автоматизированная система включает в себя модули: клиентская база, учет выполненных работ, учет ЗЧ (запасных частей). Все это позволяет выполнять работу значительно быстрее, а так же повышает конкурентоспособность в данной области.

Область применения

Автоматизирование предприятия по сервисному обслуживанию позволяет вести учет и контроль над всеми работами, которые проводятся на фирме. Создание общей базы данных позволяет контролировать процесс обращения клиентов и вести учет проделанных работ и оказанных услуг. Своевременное выполнение всех видов работ позволяет повысить эффективность работы всего предприятия.

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

Определения, термины и сокращения

В таблице 1.1 даны определения некоторых терминов.

Таблица 1.1 - Определения, термины

Определение

Описание

ТО

Техническое обслуживание

Сервис

Предоставление услуг для поддержания работоспособности

Вид ТО

Необходимый перечень работ для выполнения

Клиент

Лицо, пользующееся услугами организации.

программа системный интеграция

Ссылки

Документация по тестированию программного обеспечения (STD) для информационной системы.

План Всеобщее качественного управление (TQM) - общеорганизационный метод непрерывного повышения качества всех организационных процессов.

План обеспечения качества ПО определяет средства, с помощью которых будут удовлетворены цели процесса обеспечения качества ПО.

Обзор

С целью применения современных технологий на стадии внешнего описания проекта применятся визуальное моделирование требований на платформе CASE технологий с помощью языка UML.- (унифицированный язык моделирования) - язык графического описания для объектного моделирования в области разработки программного обеспечения. UML является языком широкого профиля, это открытый стандарт, использующий графические обозначения для создания абстрактной модели системы, называемой UML-моделью. UML был создан для определения, визуализации, проектирования и документирования в основном программных систем. UML не является языком программирования, но в средствах выполнения UML-моделей как интерпретируемого кода возможна кодогенерация.

Использование UML не ограничивается моделированием программного обеспечения. Его также используют для моделирования бизнес-процессов, системного проектирования и отображения организационных структур.позволяет также разработчикам программного обеспечения достигнуть соглашения в графических обозначениях для представления общих понятий (таких как класс, компонент, обобщение (generalization), объединение (aggregation) и поведение), и больше сконцентрироваться на проектировании и архитектуре.

Структуру диаграмм UML можно представить на диаграмме классов UML: (см. рисунок 1.1).

Рисунок 1.1 - Структура диаграмм UML

Наиболее известными визуальными моделями, используемыми для проектирования компьютерных систем и их программных обеспечений, являются диаграммы языка UML и стандарта IDEF0, таблицы и диаграммы стандарта IDEF1X. Эти визуальные модели имеют математическую основу в виде теорий графов, множеств и матриц.

Рисунок 1.2 - Появление языка UML

Рисунок позволяет понять причины революционных перемен в области технологий программирования, вызванных появлением языка UML. На нем изображены две схемы. Первая из них (см. рисунок 1. 2 (а)) изображает ситуацию, существовавшую в области технологий программирования до создания языка UML, вторая (см. рисунок 1.2 (б)) - показывает изменение ситуации после появления UML. На обеих схемах слева показаны программисты и воображаемые ими модели компьютерных программ, а справа изображены коды программ и предметные области, в которых эти программы используются. На второй схеме между предметными областями и программными кодами появились диаграммы языка UML и их математическая основа - теории множеств и графов.

В чем заключаются негативные моменты ситуации, существовавшей до появления языка UML? Как видно из рисунка 1. 2 (а) объединение текста программы (ее исходного кода) с характеристиками объекта автоматизации осуществляется только в сознании программиста, а документальная связь между ними отсутствует.

После появления языка UML (см. рисунок 1.2 (б)). Диаграммы и спецификации языка UML связали исходный текст программы с характеристиками объекта автоматизации. Наличие теоретической основы позволяет упростить операции преобразования UML диаграмм, нарисованных на экранах дисплеев, в память компьютеров и уменьшить объем памяти, необходимой для хранения диаграмм.

Рисунок также показывает, что UML диаграммы могут преобразовываться в исходный код (прямое преобразование) и наоборот исходный код может преобразовываться в диаграммы (обратное преобразование). В некоторых случаях прямое преобразование может осуществляться автоматически с помощью программ конверторов.

Преимущество UML:

·              UML объектно-ориентированный, в результате чего методы описания результатов анализа и проектирования семантически близки к методам программирования на современных языках;

·              UML позволяет описать систему практически со всех возможных точек зрения и разные аспекты поведения системы;

·              диаграммы UML сравнительно просты для чтения после достаточно быстрого ознакомления с его синтаксисом;

·              UML расширяет и позволяет вводить собственные текстовые и графические стереотипы, что способствует его применению не только в сфере программной инженерии;

·              UML получил широкое распространение и динамично развивается [3].

1.2 Общее описание

Техническое обслуживание в нашей стране проводится по так называемой планово-предупредительной системе. Особенность этой системы заключается в том, что все автомобили проходят техническое обслуживание по плану-графику в обязательном порядке. Основная цель технического обслуживания - предупреждение отказов и неисправностей, предотвращение преждевременного износа деталей, своевременное устранение повреждений. Таким образом, техническое обслуживание является профилактическим мероприятием [4].

В автотранспортных предприятиях внедряются способы диагностики технического состояния автомобиля. Диагностика представляет собой систему проверки технического состояния автомобилей без разборки его узлов и агрегатов, путём использования специального оборудования, позволяющего дать объективную оценку пригодности автомобиля для дальнейшей эксплуатации. Диагностика может быть общей или поэлементной. При общей диагностики определяют техническое состояние агрегатов и узлов автомобиля, обеспечивающих безопасность движения.

Поэлементная диагностика позволяет определить техническое состояние агрегатов и узлов автомобиля, выявить причины возникновения тех или иных неисправностей и уточнить объём работ по техническому обслуживанию и ремонту автомобиля.

Организация диагностики технического состояния автомобиля зависит от мощности данного автотранспортного предприятия и обеспеченности его соответствующим оборудованием. Общее диагностирование автомобиля и основные регулировочные работы выполняются на отдельном специализированном участке, представляет собой линию с двумя постами [5].

Все работы по диагностированию и основным регулировкам выполняются до поступления автомобиля на линию ТО. После диагностирования у автомобилей поступающего на линию ТО, выполняют главным образом крепёжные и смазочные работы.

Основное назначение сервисного обслуживания - выполнения необходимых операций для поддержания автомобилей в безопасном, рабочем состоянии.

Назначением данного программного продукта является автоматизация таких процессов:

общая база клиентов;

выполнение планового сервисного обслуживания;

организация работ по внеплановому техническому осмотру;

создание отчетных документов;

распределения всех деталей (запасных частей) по категориям и моделям;

ведение сервисной книги;

возможность использовать личный счет (для оплаты услуг);

организация личного кабинета клиента;

Данная автоматизированная система позволяет более удобно организовывать работу по обслуживанию автотранспорта. Обеспечивает качественный сервис, делает его менее утомительным как для персонала, так и для клиента за счет сокращения времени на выполнение работ на СТО.

Перспективы продукта

С каждым годом количество автомобилей растет в разы, и вопрос сервисного обслуживания становится все более востребованным. Создание общей, взаимосвязанной работы между магазином автозапчастей и технической станцией дает наилучший результат.

Данная разработанная система позволяет организовать работу сервисной станции с учетом ее особенностей. Вся программа выполнена таким образом, что позволяет в будущем изменить ее функциональность по потребностям фирмы. База данных программного обеспечения так же разработана с возможностью дальнейшей модификации для конкретных нужд и индивидуализации для любого предприятия занимающегося работой с ремонтом и обслуживанием автотранспорта.

Концепции системных операций

Функции, реализуемые системой:

1)   аутентификация пользователя;

2)   создание и ведение прайс-листов

3)   ведение оперативной информации (операции на складах, заказах покупателей, списки выполненных работ, покупки запчастей);

4)   формирование отчётов (доставка товара, список работ на выполнения, заказ покупателя, история заказов) вывод отчетов на экран, возможно распечатать;

5)   предоставление информации о работе фирмы (информационная составляющая);

Пользовательские интерфейсы

Пользовательский интерфейс должен удовлетворять всем потребностям персонала, он должен включать в себя:

удобство в использовании (т.к. данной программой оператор будет пользоваться весь рабочий день);

высокая эргономика интерфейса (необходимые, часто используемые функции, должны быть в главном меню, меньшее кол-во подменю и сабменю);

оформление окон должно способствовать меньшей утомляемости (за счет спокойных цветов, плавности работы программных элементов, читабельности шрифта);

данные представлены в удобной форме (компактно, информативно, формой в виде таблиц);

организован удобный поиск (включает в себя поиск по названию, артикул, части слова, категории и т.д.);

присутствуют информационные вещи (имя пользователя, часы, календарь);

Процедура обращения клиента на фирму «Peugeot-Сервис» представлена на рисунке 1.3.

Рисунок 1.3 - Диаграмма переходов в состояния для информационной системы

Программный продукт должен включать в себя:

−     интерфейс аутентификации клиента и администратора;

−       раздел «Документы»;

−       раздел «Товары»;

−       раздел «Прайс-лист»;

−       раздел «Выполнения ТО»;

−       раздел «История»;

−       раздел «Работа с личным счетом»;

−       раздел «Клиентский интерфейс»;

Основными функциями системы должны являться:

−     продажа товара;

−       выполнение ТО;

−       ведение кабинета клиента;

Аппаратные интерфейсы

Для реализации программного продукта особых аппаратных средств не требуется. При дальнейшем усовершенствовании проекта, для удобства пользования личным кабинетом пользователя потребуется терминал (устройство с сенсорным экраном и определенными функциональными возможностями)

Программные интерфейсы

Для удобства пользователя в программе используются отчетные документы в виде таблиц. При прохождении ТО или покупки запасных частей реализована возможность вывода отчета на печать. Так же можно экспортировать документ в формат.xls и сохранить его на жестком диске HDD.

Коммуникационные интерфейсы

Коммуникационные возможности на данный момент не используются, т.к. для реализации всех задач достаточно использование одного компьютера. В будущем, возможно, будет организована локальная сеть.

Для получения актуальной информации используется GPRS-канал для выхода в интернет.

Ограничения по памяти

Для корректной работы приложения особых характеристик не требуется. Для нормальной работы необходимо 128 Mb оперативной памяти, а объем жесткого диска зависит от кол-ва сохраняемых документов и записей. Минимальный объем HDD 50 Mb свободного места.

Операции

В программе реализованы следующие возможности:

создание отчетных документов;

составление прайс-листов;

продажа товаров;

организация предварительных списков на выполнения ТР (технических работ);

- система приема товара от поставщиков или со склада;

Требования по адаптации

Для корректной работы программного продукта требуется операционная система Windows 2000/XP. Свободное дисковое пространство в размере не менее 50 Mb для хранения данных.

Функции продукта

Функциональные характеристики системы и администратора представлены на рисунке 1.4, здесь перечислены основные функции системы.

Рисунок 1.4 - Функции продукта

Основной функцией данного программного продукта является обеспечения работы всего предприятия, в который он внедряется. Администратор выполняет все действия связанные с работой с клиентами (cм. рисунок 1.2).

В функции администратора входят:

работа с клиентами (добавление нового клиента, удаление пользователя, редактирование данных);

заполнение Базы Данных (пополнение Базы Данных (запчастей, услуг) новыми, актуальными данными);

прием заявок (оформление поступившей заявки на выполнение);

ведение документации (составление отчетов на покупку запчастей, а так же на выполненную работу);

предоставление информации (информирование клиента всей необходимой информацией);

Система должна включать в себя следующие функции:

Хранить информацию:

о выполненных работах и технических осмотрах;

о заявках на техническую работу;

данные клиентов (личные: Ф.И.О., адрес, паспортные данные, телефон и т.д.);

данные об автомобиле (модель, цвет, характеристики, ГОС номер и т.д.);

Обеспечение безопасности (сохранности):

включает в себя все меры по обеспечению сохранности документов;

сохранность личных счетов (защита от взлома);

Запрос авторизации:

ввод пароля;

ввод Ника (имя в системе);

Предоставление информации:

предоставление информации клиенту (прайс-лист (запчасти, выполнение работ, прохождение ТО));

возможность просмотра необходимой информации через Интернет;

просмотр различной информации всех видов работ компании;

предоставление другой информации;

Работа магазина:

предоставление пользователю приобретать необходимый товар;

возможность получение запчастей на заказ;

Ведение документации

составление необходимых отчетов;

Сбор заявок:

регистрация в системе всех действий связанных с клиентами;

прием заявок на выполнение работ;

Работа с клиентами:

хранение информации о клиенте в базе данных;

хранение информации об автомобиле в базе данных;

хранение информации об истории обслуживания в базе данных;

хранение информации о приобретаемых товарах в базе данных;

составление отчетных документов на выполненную работу;

ведение сервисной книги;

возможность оплаты услуг ТО через лицевой счет клиента;

Выполнение технического осмотра:

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

выполнение плановых ТО;

выполнение дополнительных работ (обращение клиента);

предоставление различных услуг по уходу за автомобилем;

заполнение отчетных документов на выполненную работу;

составление отчетных документов на выполненные услуги;

заполнение отчетных документов на гарантийный срок;

диагностика состояния автомобиля;

Функциональные возможности, заложенные в систему, имеют широкий спектр возможностей, но при необходимости возможна доработка конкретных функций по требованию организации.

Пользовательские характеристики

Для работы с приложением достаточно среднего знания ПК. Все элементы программы сделаны в стиле большинства распространенных программ.

Администратор должен владеть общими знаниями в области администрирования, работы с базами данных. Углубленного знания не требуется так как все операции имеют свой интерфейс. Для добавления новых данных требуется лишь заполнить соответствующие поля и программа автоматически выполнит заполнение и сохранение в базу.

Для более серьезных работ с программой или ее модернизации требуется один программист.

Ограничения

Помимо минимальных требований к персональному компьютеру

(Windows 2000/XP, 128 Mb, HDD 50 Mb свободного места) необходимы права доступа. В программу заложены настройки для администратора, который имеет максимальное количество прав (чтение, запись). Пользователь пройдя авторизацию имеет меньшее количество прав.

Администратор имеет право изменять настройки прав пользователя. Все настройки проводятся непосредственно из кабинета администратора и имеют свои ограничения для каждого клиента по отдельности.

Предположения и зависимости

Требуются стандартные средства Microsoft office (Excel, Access). Желательно использовать данные продукты не ниже 2003 версии.

Распределение требований

Требования, описанные в разделах 1.1 и 1.2 этого документа будут называться «C-требования», в разделе 1.3 - «D-требования». Основной аудиторией С-требований будет сообщество заказчиков, вторичной - разработчиков. Для D-требований ситуация обратная. Эти два уровня требований должны быть согласованными. Несогласованности должны быть отмечены отдельно как дефекты. В случае, когда требование сформулировано в С-требованиях и D-требованиях, приложение будет разрабатываться согласно D-требованиям, поскольку они более подробны. Основные требования должны быть реализованы в данном дипломном проекте по созданию автоматизированной системы управления работой Станции технического обслуживания. Желательные требования должны быть по возможности осуществлены в этой версии, но не обязательны для разработчиков. Желательно, чтобы часть из них присутствовала в будущей версии. Необязательные требования будут добавлены по желаниюразработчиков.

1.3 Детальные требования

Требования к внешнему интерфейсу

Приложение «Peugeot-сервис» должно включать в себя такие элементы:

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

организация предварительного набора работ для технического обслуживания;

ведение отчетных документов (вывод на экран или печать);

Функции

Функциональные возможности системы:

Модуль «Авторизация»:

создание новой учетной записи;

ввод Ника и Пароля;

редактирование учетной записи;

установка прав доступа;

Модуль «Прохождение ТО»:

прохождение планового технического осмотра;

составление списка необходимых для выполнения работ;

в зависимости от вида ТО представлены особенные возможности;

запись данных в сервисную книгу;

возможность выбора способа оплаты;

Модуль «Сервисная станция»:

составление списка необходимых для выполнения работ;

визуальное представление данных в виде списка с выводом стоимости;

возможность выбора способа оплаты;

просмотр готового перечня работ на выполнение;

вывод на печать;

Модуль «Информация о ТО»:

вывод информации о прошедших технических осмотрах;

предоставление отчета в удобной форме;

Модуль «Прав пользователя»:

установка прав доступа;

блокировка учетной записи;

ограничение учетной записи;

указание причины в ограничении доступа;

Модуль «Клиенты»:

создание нового пользователя;

редактирование данных существующего пользователя;

удаление учетной записи пользователя;

Модуль «Заказ покупателя»:

вывод информации о заказах клиента;

Модуль «Автомагазин»:

покупка запчастей;

выбор запчастей по критериям поиска;

вывод информации в виде таблиц;

Требования к производительности

Программа должна работать стабильно (не должно быть сбоев в работе, выброса из программы). Нормальной считается работа программы с загрузкой не более 10 секунд и подгрузкой данных в процессе работы не более 5 секунд. Команды по добавлению, удалению и редактированию должный выполняться быстро (не заметно для пользователя).

Логические требования базы данных

База данных программы не должна иметь дублирование данных. Таблицы должны иметь ключевые поля для связи, которые не могут совпадать (должны быть уникальными). Данные в таблицах должны быть определенного (указанного ранее) типа. Для нормализации базы нужно ограничиваться примерно 20 столбцами, что касается записей их может быть N количество.

Минусом в использовании Базы данных Access, возможность записи в строку не более 255 символов, что в некоторых ситуациях ставит ограничения на действия пользователя (в данном случае данная проблема решена не стандартным решением (см. приложение A)).

Ограничения проектирования

Проектирование программы «Peugeot-Сервис» должно быть выполнено с использованием UML и объектно-ориентированного подхода. Реализация должна быть выполнена на языке Visual Basic 6.0.

Соответствие стандартам

Программный продукт полностью соответствует государственным и международным стандартам приведённых в главе нормативных ссылок.

Атрибуты программной системы

Надежность

Надежность - комплексное свойство технического объекта; состоит в его способности выполнять заданные функции, сохраняя свои основные характеристики (при определенных условиях эксплуатации) в установленных пределах. Надежность охватывает безотказность, долговечность, ремонтопригодность и сохраняемость. Показатели надежности - вероятность безотказной работы, наработка на отказ, технический ресурс, срок службы и др.

Для надежности системы были разработаны различные средства контроля над работой программы. Во избежание критических ошибок по вине пользователя, в программу заложены поверки на корректность заполнения данных (все поля сверяются по шаблону и типу данных), что позволяет повысить надежность.

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

Обеспечение надежной работы осуществляется за счет тестирования программы на всех стадиях ее создания. При выявлении ошибок и недоработок программа исправляется (дорабатывается) и вновь тестируется, до тех пор пока не будет выявлено максимальное количество неполадок. Программный продукт должен обеспечивать:

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

Целостность. Целостность БД достигается вследствие введения ограничений целостности, в частности, к ним относятся ограничения, связанные с нормализацией БД. Необходимо контролировать входные и выходные данные.

Восстанавливаемость. Данное свойство предполагает возможность восстановления БД после сбоя системы или отдельных видов порчи системы. Это обеспечивается за счет контроля над работой системы и если были нарушены какие-либо действия по корректной работе, то данные не записываются в БД.

Так же надежность можно повысить за счет ограничения прав, так в программе для клиента заложено ограничения на запись.

Доступность

Работа с программой доступна на ПК с установленным офисом и операционной системой Windows. Доступность ко всем функциям программы осуществляется для администратора, пользователь ограничен чтением данных. Возможна одновременная работа приложения с другими программами.

Защищенность

В программе использован алгоритм шифрования MD5, который позволяет защитить данные на очень высоком уровне. При помощи данного алгоритма зашифрованы данные (пароль пользователя). Принципом работы данного алгоритма является перевод заданного пароля в набор символов (по сложному алгоритму).

MD5 (Message - Digest algorithm) - алгоритм хеширования. Алгоритм md5 шифрует любые данные в формате 128-bit hash (контрольную сумму), которую достаточно сложно подделать. Алгоритм используется для проверки подлинности данных, когда происходит их передача в зашифрованном виде.

Данный инструмент позволяет быстро зашифровать(кодировать) абсолютно любой введенный текст при помощи md5 шифрования. С помощью сервиса можно кодировать(шифровать) пароли, сообщения, любые тексты. MD5 невозможно расшифровать, так как обратное кодирование (расшифровка) в данном алгоритме не предусмотрена, что обеспечивает максимальную безопасность зашифрованных данных.

Безопасность БД предполагает защиту данных от преднамеренного и непреднамеренного доступа. Применяется запрещение несанкционированного доступа, защита от копирования и криптографическая защита. Также необходимы и чисто административные меры, например ограничение доступа к носителям информации.

Поддержка

В программе предусмотрены подсказки и всплывающие сообщения на не корректные действия клиента. Для работы с программой нужно ознакомиться с руководством пользователя. Для решения каких-либо вопросов, а также выполнения различных действий требуются права администратора (для получения информации нужно обратиться к администратору).

Переносимость

Данное приложение не является кроссплатформенным. При работе с программой в операционной системе Windows XP, существует возможность переноса приложения с ПК на ПК, но лишь со всеми прилагаемыми с ней файлами. Для корректной работы программы необходимо располагать приложение в корне сетевого диска ©.

 

1.3          Сопровождающая информация


Сопровождающая информация предоставлена в «Руководстве пользователя».

Для корректной работы программы необходимо сохранение всех файлов, расположенных в корне программы. При работе с такими функциями как добавление нового клиента, составление заказа, оформление покупки, необходимо проводить соответствующие операции от начала и до конца (заполнять все поля, сохранять БД и т.д.).

Для добавления новых функциональных возможностей требуется соответствующее программное обеспечение. Для создания прайс-листа достаточно иметь офис 2003, а для печати документов необходимо настроить принтер. Для вывода корректной (новой) информации необходимо подключиться к интернету.

2. Исследовательская работа

2.1 Техническое состояние автомобиля в процессе эксплуатации

В процессе эксплуатации автомобиля в результате воздействия на него целого ряда факторов (воздействие нагрузок, вибраций, влаги, воздушных потоков, абразивных частиц при попадании на автомобиль пыли и грязи, температурных воздействий и т.п.) происходит необратимое ухудшение его технического состояния, связанное с изнашиванием и повреждением его деталей, а также изменением ряда их свойств (упругости, пластичности и др.).

Изменение технического состояния автомобиля обусловлено работой его узлов и механизмов, воздействием внешних условий и хранения автомобиля, а также случайными факторами. К случайным факторам относятся скрытые дефекты деталей автомобиля, перегрузки конструкции и т.п.

Основными постоянно действующими причинами изменения технического состояния автомобиля при его эксплуатации являлся изнашивание, пластические деформации, усталостные разрушения, коррозия, а также физико-химические изменения материала деталей (старение).

Изнашивание - это процесс разрушения и отделения материала с поверхностей деталей и (или) накопление остаточных деформаций при их трении, проявляющийся в постепенном изменении размеров и (или) формы взаимодействующих деталей.

Износ - это результат процесса изнашивания деталей, выражающийся в изменении их размера, формы, объема и массы.

Различают сухое и жидкостное трение. При сухом трении трущиеся поверхности деталей взаимодействуют непосредственно друг с другом (например, трение тормозных колодок о тормозные барабаны или диски или трение ведомого диска сцепления о маховик). Данный вид трения сопровождается повышенным износом трущихся поверхностей деталей. При жидкостном (или гидродинамическом) трении между трущимися поверхностями деталей создается масляный слой, превышающий микронеровности их поверхностей и не допускающий их непосредственного контакта (например, подшипники коленчатого вала в период установившегося режима работы), что резко сокращает износ деталей. Практически при работе большинства механизмов автомобиля вышеуказанные основные виды трения постоянно чередуются и переходят друг в друга, образуя промежуточные виды.

Основными видами изнашивания являются абразивное, окислительное, усталостное, эрозионное, а также изнашивание при заедании, коррозии.

Коррозия возникает на поверхностях деталей в результате химического или электрохимического взаимодействия материала детали с агрессивной окружающей средой, приводящего к окислению (ржавлению) металла и как следствие к уменьшению прочности и ухудшению внешнего вида деталей. Наиболее сильное коррозирующее воздействие на детали автомобиля оказывают соли, используемые на дорогах в зимнее время, а также отработавшие газы. Сильно способствует коррозии сохранение влаги на металлических поверхностях, что особенно характерно для скрытых полостей и ниш.

Старение - это изменение физико-химических свойств материалов деталей и эксплуатационных материалов в процессе эксплуатации и при хранении автомобиля или его частей под действием внешней среды (нагрев или охлаждение, влажность, солнечная радиация). Так, в результате старения резинотехнические изделия теряют эластичность и растрескиваются, у топлива, масел и эксплуатационных жидкостей наблюдаются окислительные процессы, изменяющие их химический состав и приводящие к ухудшению их эксплуатационных свойств.

На изменение технического состояния автомобиля существенное влияние оказывают условия эксплуатации: дорожные условия (техническая категория дороги, вид и качество дорожного покрытия, уклоны, подъемы спуски, радиусы закруглений дорога), условия движения (интенсивное городское движение, движение по загородным дорогам), климатические условия (температура окружающего воздуха, влажность, ветровые нагрузки, солнечная радиация), сезонные условия (пыль летом, грязь и влага осенью и весной), агрессивность окружающей среды (морской воздух, соль на дороге в зимнее время, усиливающие коррозию), а также транспортные условия (загрузка автомобиля).

Основными мероприятиями, уменьшающими темпы износа деталей при эксплуатации автомобиля являются: своевременные контроль и замена защитных чехлов, а также замена или очистка фильтров (воздушных, масляных, топливных), препятствующих попаданию на трущиеся поверхности деталей абразивных частиц; своевременное и качественное выполнение крепежных, регулировочных (регулировка клапанов и натяжения цепи двигателя, углов установки колес, подшипников ступиц колес и т.п.) и смазочных (замена и доливка масла в двигателе, коробке передач, заднем мосту, замена и добавка масла в ступицы колес и т.п.) работ; своевременное восстановление защитного покрытия днища кузова, а также установка подкрылков, защищающих арки колес [6].

Для уменьшения коррозии деталей автомобиля и в первую очередь кузова необходимо поддерживать их чистоту, осуществлять своевременный уход за лакокрасочным покрытием и его восстановление, производить противокоррозионную обработку скрытых полостей кузова и других подверженных коррозии деталей.

Для предотвращения усталостных разрушений и пластических деформаций следует строго соблюдать правила эксплуатации автомобиля, избегая его работы на предельных режимах и с перегрузками. Автомобиль в процессе эксплуатации может находиться в одном из следующих состояний: исправном, неисправном, работоспособном, неработоспособном (непредельном) и предельном.

Исправным называют такое состояние автомобиля, при котором он соответствует всем требованиям нормативно-технической документации. Если автомобиль не соответствует хотя бы одному требованию нормативно-технической документации, то он считается неисправным.

Работоспособным состоянием называют такое состояние автомобиля, при котором он соответствует лишь тем требованиям, которые характеризуют его способность выполнять заданные (транспортные) функции, т.е. автомобиль работоспособен, если он может перевозить пассажиров и грузы без угрозы безопасности движения. Работоспособный автомобиль может быть неисправным, например иметь пониженное давление масла в смазочной системе двигателя, ухудшенный внешний вид и т.п. При несоответствии автомобиля хотя бы одному из требований, характеризующих его способность выполнять транспортную работу, он считается неработоспособным.

Переход автомобиля в неисправное, но работоспособное состояние называется повреждением (нарушение исправного состояния), а в неработоспособное состояние - отказом (нарушение работоспособного состояния).

Предельным состоянием автомобиля называют такое состояние, при котором дальнейшее его применение по назначению недопустимо, экономически нецелесообразно либо восстановление его исправности или работоспособности невозможно или нецелесообразно. Таким образом, автомобиль переходит в предельное состояние, когда появляются неустранимые нарушения требований безопасности, недопустимо возрастают затраты на его эксплуатацию либо возникает неустранимый выход технических характеристик за допустимые пределы, а также недопустимое снижение эффективности эксплуатации.

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

Надежность - это свойство объекта, в том числе автомобиля или его составной части, сохранять во времени в установленных пределах значение всех параметров, характеризующих способность выполнять требуемые функции в заданных режимах и условиях применения, технического обслуживания, ремонтов, хранения и транспортирования. Надежность как свойство характеризует и позволяет количественно оценивать, во-первых, текущее техническое состояние автомобиля и его составных частей, а во-вторых, насколько быстро происходит изменение их технического состояния при работе в определенных условиях эксплуатации.

Надежность является комплексным свойством автомобиля и его составных частей и включает в себя свойства безотказности, долговечности, ремонтопригодности и сохраняемости.

Безотказность - это свойство автомобиля или его составной части сохранять работоспособность в течение определенного времени или пробега без вынужденных перерывов для устранения отказов. К основным показателям безотказности относятся следующие.

Вероятность безотказной работы - вероятность того, что в пределах заданной наработки не возникает отказ. Наработка - это продолжительность работы автомобиля или его составной части, выражаемая обычно в километрах пробега или в часах работы.

Ремонтопригодность (эксплуатационная технологичность) - это свойство автомобиля или и его составной части, заключающееся в приспособленности его к предупреждению и обнаружению причин возникновения отказов, повреждений и поддержанию и восстановлению работоспособного состояния путем проведения технического обслуживания и ремонтов. К основным показателям ремонтопригодности и эксплуатационной технологичности относятся средняя продолжительность и средняя трудоемкость выполнения технического обслуживания или ремонта определенного вида, которые используются при нормировании работ и сравнении различных автомобилей между собой, а также вероятность выполнения операций технического обслуживания или ремонта определенного вида для оценки возможности их выполнения в заданное время. Для характеристики ремонтопригодности и эксплуатационной технологичности используется также ряд частных показателей, определяющих влияние конструктивных особенностей автомобиля на трудоемкость и продолжительность его обслуживания и ремонта. К ним относятся, например, количество мест (точек) обслуживания на автомобиле и их доступность, число «марок применяемых эксплуатационных материалов, номенклатура необходимого оборудования и инструментов и др.

2.2 Назначение, виды и методы технического обслуживания, ремонта и диагностирования автомобилей

В нашей стране принята планово-предупредительная система технического обслуживания и ремонта автомобилей, регламентированная «Положением о техническом обслуживании и ремонте подвижного состава автомобильного транспорта», которая представляет собой совокупность средств, нормативно-технической документации и исполнителей, необходимых для обеспечения работоспособного состояния подвижного состава. Данной системой предусматривается обеспечение работоспособного состояния подвижного состава автомобильного транспорта путем проведения планово-предупредительных работ по его техническому обслуживанию и ремонту. Планово-предупредительный характер системы технического обслуживания и ремонта определяется плановым и принудительным (через установленные пробеги или промежутки времени работы подвижного состава) выполнением контрольно-диагностических операций с последующим выполнением по потребности необходимых работ.

Техническим обслуживанием является комплекс операций по: поддержанию подвижного состава в работоспособном состоянии и надлежащем виде; обеспечению надежности, экономичности работы, безопасности движения, защите окружающей среды; уменьшению интенсивности ухудшения параметров технического состояния, отказов и неисправностей, а также выявлению их с целью своевременного устранения. Техническое обслуживание является профилактическим мероприятием, проводимым принудительно в плановом порядке.

Техническое обслуживание (ТО) автомобилей в соответствии с действующей системой подразделяется на следующие виды: ежедневное техническое обслуживание (ЕО); первое техническое обслуживание (ТО-1); второе техническое обслуживание (ТО-2); сезонное (СО); а также обслуживание по талонам сервисной книжки автомобиля.

Ежедневное техническое обслуживание включает уборку и мойку автомобиля, контроль технического состояния систем и механизмов, от которых зависит безопасность движения (рулевого управления, тормозных систем, приборов освещения и сигнализации), заправку топливом, контроль уровня масла и охлаждающей жидкости в двигателе, а также уровня тормозной жидкости в бачках рабочей тормозной системы и гидропривода сцепления.

Первое техническое обслуживание дополнительно к работам ЕО включает контрольно-диагностические, крепежные, смазочные и регулировочные работы с целью предупреждения случайных отказов до очередного технического обслуживания, экономии топлива и других эксплуатационных материалов, а также уменьшения загрязнения окружающей среды.

Второе техническое обслуживание дополнительно к работам ТО-1 включает контрольно-диагностические и регулировочные работы, связанные с частичной разборкой составных частей автомобиля, их снятием и проверкой на специальном оборудовании.

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

Ремонтом является комплекс операций по восстановлению исправного или работоспособного состояния, ресурса и обеспечения безопасности работы подвижного состава и его составных частей. Ремонт выполняется как по потребности после появления соответствующего неисправного состояния, так и принудительно по плану, через определенный пробег или время работы автомобиля. Второй вид ремонта является планово-предупредительным.

Ремонт подразделяют на текущий и капитальный.

Текущий ремонт предназначен для обеспечения работоспособного состояния автомобилей с восстановлением или заменой отдельных его агрегатов, узлов и деталей (кроме базовых), достигших предельно допустимого состояния. Базовой называется деталь, с которой начинают сбоку изделия, присоединяя к ней другие детали и сборочные единицы. Соответственно замена базовой детали обычно требует полной разборки изделия. Базовой деталью автомобиля является кузов, а агрегата - корпусная деталь, например блок цилиндров двигателя, картер коробки передач, картер заднего моста.

Капитальный ремонт предназначен для восстановления исправности и близкого к полному (не менее 80%) ресурса автомобиля или агрегата путем замены и (или) восстановления любых сборных единиц и деталей, включая базовые. Капитальный ремонт может производиться необезличенным и обезличенным методами.

Диагностирование - это определение технического состояния автомобилей, их агрегатов и узлов без разборки. Диагностирование является техническим элементом технического обслуживания и ремонта автомобилей.

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

Цель диагностирования при ремонте заключается в выявлении неисправностей, причин их возникновения и установлении наиболее эффективного способа устранения: на месте, со снятием агрегата узла или детали, с полной или частичной разборкой и заключительным контролем качества выполнения работ.

Комплексное диагностирование обычно выполняют с периодичностью ТО-1 на завершающей его стадии. Оно заключается в измерении основных рабочих параметров автомобиля, определяющих безопасность и эффективность его эксплуатации, например расход топлива, тормозной путь, уровень шума в механизмах и т.д. Если измеренные параметры находятся в допустимых пределах, диагностирование завершают, а если нет-то выполняют поэлементное диагностирование. Поэлементное диагностирование выполняют обычно перед ТО-2 с целью детального обследования технического состояния механизма и выявления неисправностей и их причин. Диагностирование выполняется непосредственно в ходе ТО и ремонта с целью уточнения потребности в выполнении отдельных операций.

2.3 Организация технического обслуживания и ремонта легковых автомобилей

Техническое обслуживание и ремонт легковых автомобилей производятся на станциях технического обслуживания (СТОА), фирменных авто-центрах и мастерских, принадлежащих различным организациям. В крупных автотранспортных предприятиях имеются специализированные участки по техническому обслуживанию и ремонту автомобилей. Значительная часть работ по техническому обслуживанию и ремонту личных автомобилей выполняется небольшими частными и кооперативными автомастерскими, а также владельцами автомобилей самостоятельно.

Работы по ТО и ремонту автомобилей на СТОА выполняются на рабочих постах.

Рабочий пост - это участок производственной площади, оснащенный технологическим оборудованием для размещения автомобиля и предназначенный для выполнения одной или нескольких однородных работ. Рабочий пост может включать одно или несколько рабочих мест.

Классификация рабочих постов производится по следующим признакам:

по техническим возможностям - широкоуниверсальные (с номенклатурой выполняемых работ свыше 200 наименований), универсальные (100-200 наименований работ), специализированные (20-50 наименований работ), специальные (менее 20 наименований работ);

по способу установки автомобиля - тупиковые и проездные;

по расположению в технологической линии - параллельные и последовательные (поточные линии).

Рабочие посты могут быть напольные, на осмотровых канавах, могут быть оборудованы подъемниками или специализированным оборудованием для выполнения какого-либо вида работ.

Посты напольные имеют ограниченное применение и используются в основном для выполнения подготовительных операций на участке окраски, электро-карбюраторных и других видов работ, не требующих вывешивания автомобиля.

Посты на осмотровых канавах обеспечивают доступ к автомобилю снизу и позволяют вести работы одновременно на двух уровнях. Такие посты могут оборудоваться канавными подъемниками. Данные посты являются универсальными и позволяют выполнять работы одновременно на двух уровнях с вывешиванием автомобиля.

Посты, оборудованные стационарными подъемниками, могут быть как универсальные, так и специализированные на какой либо виде работ, для чего на них может быть установлено соответствующее специализированное оборудование.

При ТО и ремонте легковых автомобилей обычно используются двухстоечные или четырехстоечные стационарные подъемники с электромеханическим приводом, а также подъемники с гидравлическим приводом.

Обслуживание и ремонт приборов системы питания, электротехнические, аккумуляторные, шиномонтажные и другие работы могут выполняться на специализированных постах производственных участках после снятия соответствующих узлов и приборов с автомобиля.

Мойка автомобилей производится на специализированных постах и участках в специально выделенных и оборудованных для этого помещениях с использованием струйно-щеточных установок.

Окрасочные работы также производятся на специализированных участках, оборудованных окрасочно-сушильными камерами.

Смазочные работы могут производится как на универсальных рабочих постах по техническому обслуживанию автомобилей с использованием переносных и передвижных маслораздаточных установок и колонок с ручным или пневматическим приводом, а также на специализированных смазочно-заправочных постах, предназначенных для централизованной механизированной заправки агрегатов автомобиля маслами, охлаждающей жидкостью, смазки пластичными смазками, а также подкачки шин с использованием стационарных маслораздаточных колонок и смазочно-заправочных установок.

В небольших мастерских работы по ТО и ТР автомобилей обычно выполняются на универсальных постах.

На крупных СТОА при большом количестве обслуживаемых автомобилей работы целесообразно выполнять на специализированных или специальных постах или поточных линиях. Целесообразность применения рабочих постов различного типа или поточных линий определяется объемом производства, характером работ и особенностями применяемого оборудования.

3. Проектирование архитектуры задачи

 

.1 Введение


Важнейшей задачей проектирования архитектуры ИС является обеспечение работы с самыми разнообразными типами и источниками информации. В соответствии с реальной практикой источниками и потребителями информации служат не только подразделения данного предприятия, но и предприятия других отраслей (возможные поставщики и потребители и др.). Принцип глобализации бизнеса диктует: источники, и потребители информации будут находиться в любой географической точке, где это окажется нужно.

Отсюда следуют стратегические для архитектуры БД и ИС в целом решения. Объединение требований к динамике и разнообразию типов информационных потоков, обрабатываемых в ИС, с учетом роста их объемов, и требований к разнообразию методов обработки данных.

Цель

Целью проектирования архитектуры системы данного дипломного проекта является, решение задач связанной с разделением модели на составляющие части. Также основной задачей является декомпозиция классов с целью получения самостоятельных рабочих модулей, которые должны выполнять функции описанные в предыдущих разделах.

Описание проекта

Необходимо автоматизировать систему по работе сервисной станции, которая производит технический осмотр автомобилей, выполняет диагностику отдельных узлов и агрегатов, проделывает работы любой сложности. Сервисная станция позволяет проводить осмотр и ремонт автомобилей в кратчайшие сроки и с максимально качественным выполнением работ. Основными задачами при проектировании системы являлись:

автоматизация всех частей СТО;

создание общей базы клиентов;

ведение документации и отчет о проделанных работах и услугах;

создание связанной работы между сервисной станции и автомагазином;

предоставление пользователю личного кабинета всевозможные функции;

Создание архитектуры - это проектирование на самом высоком уровне. Оставшуюся часть процесса проектирования называется детальным проектированием.

Ясное описание архитектуры очень важно для всех приложений и обязательно в том случае, когда к разработке привлекается большое количество людей. Причиной этого служит необходимость разбиения всего приложения на части (модули) с их последующей сборкой. Выбор архитектуры обеспечивает требуемую модульность. Клиент-серверные архитектуры усложнились, стали более разнообразными. Некоторые из них являются трехуровневыми, в отличие от классических двухуровневых (клиент и сервер). Третий уровень находится между клиентом и сервером и отвечает за перенаправление данных и их преобразование. Обычно распределение по уровням таково: пользовательский интерфейс разрабатывается для клиентского уровня; управление процедурами - для среднего уровня; сами базы данных - для третьего. Средний уровень может быть общей шиной данных, примером которой является стандарт CORBA (Common Object Request Broker - Общая архитектура посредника запросов к объектам). Возможен альтернативный вариант, когда средний уровень функционирует на основе бинарного стандарта, например СОМ. Наконец, World Wide Web можно рассматривать как целое поколение клиент-серверных архитектур, в котором архитектуру один сервер - десятки клиентов заменила архитектура один сервер - миллионы клиентов. Результат проектирования пользовательского интерфейса изображен на рисунке 3.1.

Рисунок 3.1 - Пользовательский интерфейс разрабатываемый для клиентского уровня

3.1         Определения, сокращения и термины


Данные - это представление фактов и идей в формализованном виде, пригодном для передачи и обработки в некотором информационном процессе

Программа - формализованное описание процесса

Автоматизация - применение технических средств, экономико-математических методов и систем управления, освобождающих человека частично или полностью от непосредственного участия в процессах получения, преобразования, передачи и использования энергии, материалов или информации.

Алгоритм - точный набор инструкций, описывающих порядок действий исполнителя для достижения результата решения задачи за конечное время.

3.2         Описание декомпозиции

Понятием декомпозиция является процесс разделения сложного объекта, системы, экономического показателя, задачи на составные части, элементы. В общем смысле декомпозицию можно охарактеризовать как состояние объекта, системы разделяться на части.

На этапе декомпозиции, обеспечивающем общее представление о решаемой проблеме, осуществляются:

определение и декомпозиция общей цели исследования;

выделение проблемы из среды, определение её ближнего и дальнего окружения;

описание воздействующих факторов.

Основной проблемой при этом является соблюдение двух противоречивых принципов:

полноты - проблема должна быть рассмотрена максимально всесторонне и подробно;

простоты - всё дерево должно быть максимально компактным «вширь» и «вглубь».

Компромисс достигается с помощью четырёх основополагающих понятий:

существенности - в модель включаются только компоненты, существенные по отношению к целям анализа;

элементарности - доведение декомпозиции до простого, понятного, реализуемого результата;

постепенной детализации модели;

интегративности - возможность введения новых элементов в основания и продолжение декомпозиции по ним на разных ветвях дерева.

В современных методиках типичной является декомпозиция модели на глубину 5-6 уровней. На такую глубину декомпозируется обычно одна из подсистем. Функции, которые требуют такого уровня детализации, часто очень важны, и их детальное описание даёт ключ к основам работы всей системы.

В общей теории систем доказано, что большинство систем могут быть декомпозированы на базовые представления подсистем. К ним относят: последовательное (каскадное) соединение элементов, параллельное соединение элементов, соединение с помощью обратной связи.

Модульная декомпозиция

Декомпозиция модулей показана на диаграмме классов на рисунке 3.2.

Рисунок 3.2 - Описание классов

 

Описание модуля «Авторизация»

Данный модуль определяет права пользователя. Для администратора данный набор прав является максимально полным, а для клиента ограниченным (чтение), либо частично (ограничения производит оператор). Позволяет определить подлинность пользователя при авторизации в системе. Процесс авторизации изображен на рисунке 3.3.

Рисунок 3.3 - Алгоритм авторизации пользователя

 

Описание модуля «Личный кабинет»

Содержит набор процедур и функций для реализации алгоритмов для работы с личным кабинетом пользователя. В функциональную составляющую данного модуля входит:

предоставление различной информации;

доступ к «Сервисной книги»;

приобретение товаров (автозапчастей);

доступ к информации об автомобиле;

К информации относятся такие данные как новости (актуальность обеспечивается за счет интернета), гарантия, аксессуары, оригинальные ЗЧ (запасные части), а так же сервис Peugeot, который включает в себя цикл обслуживания, цикл ТО, стоимость.

Описание модуля «Заказ»

Набор процедур и функций для составления заказа пользователя с выводом информации на экран или печать. Данные представлены в удобной форме в виде таблиц. Реализовано составление заказа с предварительной оценкой времени выполнения, стоимости каждой из работ, а так же итоговой стоимости.

При заказе запчастей в магазине, пользователю предоставлены удобные функции: поиск нужной детали по категории, артикул, названию и т.д. Важным является то, что не обязательно вводить данные о необходимой детали полностью, достаточно ввести часть данных (слова, номер, первые буквы категории товара) (см. приложение Б).

Описание модуля «Лицевой счет»

Состоит из набора функций по работе с личным счетом клиента, который позволяет хранить денежные средства на личном счете. При помощи данного счета клиент может оплачивать все работы на СТО, а так же приобретать запчасти в магазине. Реализована возможность пополнения счета, а так же снятие средств (включает в себя процент за проведения операции).

Описание модуля «Клиенты»

В данный модуль входят следующие функции:

создание новой учетной записи;

удаление уже имеющейся учетной записи;

редактирование данных о клиенте (фамилия, имя, отчество, ник, пароль (в зашифрованном виде), дата рождения, город, адрес, телефон, паспортные данные, информация об автомобиле);

Для удобства заполнения полей были реализованы некоторые функции, которые ускоряют данный процесс и облегчают его (выбор даты, выбор цвета автомобиля из готового списка и т.д.) (см. приложение A).

Описание модуля «Магазин»

Содержит набор процедур и функций для реализации алгоритмов работы с формой «Магазин». Позволяет приобретать необходимый товар, который пользователь находит из прайс-листа (при помощи удобного поиска). Магазин имеет собственный склад, где хранятся запчасти, которые поставляются поставщиком от различных фирм производителей.

Описание модуля «СТО (прохождение ТО)»

Содержит набор процедур и функций по автоматизации работы сервисной станции. Состоит из следующих функций:

определение вида ТО для прохождения;

составление списка необходимых работ;

выбор набора дополнительных услуг;

выбор способа оплаты;

вывод данных в таблицу;

предоставление пользователю итоговой информации о проделанной работе (запись данных в сервисную книгу) (см. приложение В).

Описание модуля «СТО (выполнение ТР)»

Содержит набор процедур и функций по автоматизации работы сервисной станции. Состоит из следующих функций:

составление списка необходимых работ для выполнения;

выбор набора дополнительных услуг из списка;

возможность указания другой работы (не из перечня);

выбор способа оплаты;

вывод данных в таблицу;

предоставление пользователю итоговой информации о проделанной работе по средствам бланка «Перечень работ на выполнение»;

доступ к информации о проделанных ранее работах (см. приложение В).

Описание модуля «СТО (история)»

Содержит набор процедур и функций по автоматизации работы сервисной станции. Состоит из следующих функций:

выбор необходимого ТО;

вывод данных в таблицу;

предоставление пользователю итоговой информации о проделанной работе по данному (выбранному) ТО (см. приложение В).

Декомпозиция на параллельные процессы

Для улучшения характеристик программного продукта используются различные приемы. Одной из важных характеристик любой программы является быстродействие. Данный параметр можно улучшить за счет модернизации кода, упрощение отдельных модулей (но без потери качества и функциональных возможностей). Для улучшения быстродействия используют распараллеливание процессов, то есть за одно время выполняется несколько задач. При выполнении дипломной работы распараллеливание процессов происходит за счет прерывания одного процесса и продолжения выполнения другой задачи до тех пор, пока не будут завершены оба процесса. На рисунке 3.4 показан пример одновременного входа в систему и загрузки БД.

Рисунок 3.4 - Пример распараллеливания процессов

Декомпозиция процессов

Процессы, происходящие в приложении «Peugeot-Shop», изображены на диаграмме последовательности (рисунок 3.5). Диаграмма последовательности действий на рисунке 3.5 отображает процесс покупки товары и выполнения заказа.

Рисунок 3.5 - Диаграмма последовательности действий покупки товара и выполнения заказа

Декомпозиция данных

База данных - организованная в соответствии с определёнными правилами и поддерживаемая в памяти компьютера совокупность данных, характеризующая актуальное состояние некоторой предметной области и используемая для удовлетворения информационных потребностей пользователей.

Наиболее часто используются следующие отличительные признаки:

) БД хранится и обрабатывается в вычислительной системе.
Таким образом, любые некомпьютерные хранилища информации (архивы, библиотеки, картотеки и т.п.) базами данных не являются.

) Данные в БД логически структурированы (систематизированы) с целью обеспечения возможности их эффективного поиска и обработки в вычислительной системе.

Структурированность подразумевает явное выделение составных частей (элементов), связей между ними, а также типизацию элементов и связей, при которой с типом элемента (связи) соотносится определённая семантика и допустимые операции.

) БД включает метаданные, описывающие логическую структуру БД в формальном виде (в соответствии с некоторой метамоделью).

Схема включает в себя описания содержания, структуры и ограничений целостности, используемые для создания и поддержки базы данных. База данных включает в себя набор постоянных данных, определенных с помощью схемы. Система управления данными использует определения данных в схеме для обеспечения доступа и управления доступом к данным в базе данных».

Из перечисленных признаков только первый является строгим, а другие допускает различные трактовки и различные степени оценки [7].

Для хранения информации и расчётов программы будет использоваться база данных Access.

Описание блоков данных

В данной дипломном проекте будут использоваться таблицы баз данных которые представлены в таблице 3.1.

Таблица 3.1 - Описание структуры базы данных

Название

Поля таблицы

Заказ

ID, ID_покупатель, ID_деталь, Количество, Дата, Цена, Итог, Статус

Заказчик

ID_покупатель, Имя, Фамилия, Отчество, Ник, Пароль, Дата_рождения, Город, Адрес, Номер_телефона, Серия_номер_паспорта, Дата_выдачи, Марка, Модель, Двигатель, Год, Цвет, ГОС_номер, Предоплата

Сервис_ТО

ID_ТО, ID_Покупатель, ТО1_Дата - ТО9_Дата, ТО1_Пробег - ТО9_Пробег, ТО1_Цена - ТО9_Цена, ТО1_Работа - ТО9_Работа, Статус, Причина, Работа1, Работа2, Работа3, Учет

Склад

ID_деталь, Марка, Модель, Категория, Артикул, Фирма, Название, Аналог, Кол-во, Цена, Страна


Разработка физической структуры БД

В физической модели содержится информация обо всех объектах БД. Физическая модель зависит от конкретной реализации СУБД. Если в логической модели не имеет значения, какой конкретно тип данных имеет атрибут, то в физической модели важно описать всю информацию о конкретных физических объектах - таблицах, колонках, индексах, процедурах и т.д. Большое значение имеет правильное назначение типов данных физическим объектам. Схема базы данных представлена на рисунке 3.6.

База данных состоит из 9 таблиц. Средствами СУБД MS Access в базе данных обеспечивается целостность данных, каскадное обновление связанных полей и каскадное удаление связанных записей.

Рисунок 3.6 - Схема Базы Данных

 


Средства защиты программного изделия от несанкционированного доступа

Для предотвращения несанкционированного доступа к системе и данным предусмотрена специальная таблица зарегистрированных пользователей. Администратор регистрирует пользователей (Ник и пароль), а так же присваивает уровни доступа.

Автоматизированная система «Peugeot-сервис» имеет два вида пользователя: Администратор и Пользователь. При входе в систему каждый пользователь обязан ввести имя и пароль. После неверного ввода имени или пароля система выходит ошибку авторизации. Под именем Администратор можно делать любые изменения в программе: добавлять и удалять данные в базу данных клиентов, товаров и всех документов, проводить любые изменения и редактирования системы. Под именем Пользователь возможен только просмотр всех баз данных и обычных приложений.

Структурная схема автоматизированной системы

На рисунке 3.7 показано наглядное представление взаимодействия БД с программой.

Рисунок 3.7 - Структурная схема автоматизированной системы

3.4 Описание зависимостей

 

Межмодульные зависимости

Модули приложения имеют зависимости от главного модуля основного потока. Каждый модуль является законченным рабочим объектом и не использует методы и свойства друг друга. Таким образом, система может быть расширена путём добавления новых модулей к основной программе. В данной системе используются модули «Авторизация», «Личный кабинет», «Заказ», «Отчет», «Лицевой счет», «Клиенты», «Магазин», «СТО». Диаграмма межмодульных зависимостей показано на рисунке 3.8.

Рисунок 3.8 - Межмодульная зависимость

Межпроцессные зависимости

Межпроцессные зависимости влияют на работу всей программы. В программе контроль над данным видом зависимости производит система. Основной процесс и все его потоки создаются и исполняются программной виртуальной средой.NET Framework. Зависимости для работы процессов не имеются. CLR среда сама определяет способ взаимодействия процессов и потоков и использует для этого сервисы операционной системы.

Зависимости внутри данных

Зависимости между данными в проекте играют важную роль. При изменении параметра ID_деталь, в модуле покупка происходит замена ID на новый, что обеспечивает корректность данных. Ключевые поля должны быть индивидуальными, так как с их помощью происходит обращения к таблице.

Повтор ключевого поля может привести к выводу ошибочного результата, что поведет за собой сбой в работе программы.

В работе представлен следующий вид зависимости внутри данных (таблица 3.2)

Таблица 3.2 - Взаимодействие ключей таблиц базы данных

Название таблиц

Связь с первичными ключами

«Клиент», «Автомобиль»

Клиент.ID_автомобиля = Автомобиль.ID

«Заказ», «Клиент»

Заказ.ID_клиент = Клиент.ID

«Покупки», «Клиенты»

Покупки.ID_клиент = Клиент.ID

«Клиент», «Сервис»

Сервис.ID_клиент = Клиент.ID


3.5 Описание интерфейса

 

Модульный интерфейс

Интерфейс модуля «Сервис» представлен на (рисунке 3.9). Интерфейс должен удовлетворять потребности пользователя и иметь следующие качества: удобство, функциональность, компактность, эргономичность и т.д.


Рисунок 3.9 - Интерфейс модуля ТО

3.4          Детальное проектирование прецедентов

Детальное проектирование основных требований к системе для CASE-технологии использующей модели прецедентов представлены в таблицах 3.3 - 3.5.

Таблица 3.3 - Детальное проектирование «Редактирование и оформление заказа на клиента»

Прецедент

Редактирование и оформление заказа на клиента

ID

1

Вывести информацию о заказе

Краткое описание

Вывести информацию о заказе, если он уже был оформлен, в открывшееся окно

Действующее лицо

Блок управления

Предусловие

Администратор нажимает кнопку «Выполнить»

Основной поток

Вывод информации о сделанном(существующем) заказе

Постусловие

нет

Альтернативный поток

нет

ID

2

Ввести информацию о клиенте и платеже

Краткое описание

Ввести информацию о клиенте, если заказ еще не был оформлен и платеже, если заказ уже существует

Действующее лицо

Администратор

Предусловие

Менеджер нажимает кнопку «Сделать заказ»

Основной поток

Ввод информации о заказе

Постусловие

Информация о заказе введена

Альтернативный поток

нет


Таблица 3.4 - Описание прецедентов диаграммы «Заказ на выполнение ТО»

ID

1

Вывести информацию о ТО

Краткое описание

Запрос информации о необходимом ТО

Действующее лицо

Блок управления

Предусловие

Администратор получил данные о (пробеге, необходимом ТО, дате)

Основной поток

Вывод информации о ТО

Постусловие

Информация о ТО отображена

Альтернативный поток

нет

ID

2

Ввести дополнительные условия (услуги)

Краткое описание

Вести дополнительные работы, если требуется

Действующее лицо

Администратор

Предусловие

Информация отображена

Основной поток

Ввод данных

Постусловие

нет

Альтернативный поток

нет

ID

3

Нарушение прохождения ТО

Краткое описание

Принять решения о возможности прохождения ТО

Действующее лицо

Администратор

Предусловие

Информация о нарушении (пробег, сроки, другое) отображена

Основной поток

Разрешить/запретить прохождение ТО

Постусловие

Нарушение зафиксировано

Альтернативный поток

нет



Таблица 3.5 - Описание прецедентов диаграммы «Покупка товара в автомагазине»

ID

1

Вывести информацию о товаре

Краткое описание

Запрос информации о необходимом товаре (запчасти)

Действующее лицо

Система (БД)

Предусловие

Администратор получил данные о заказе

Основной поток

Вывод информации о товаре

Постусловие

Информация о детали отображена

Альтернативный поток

нет

ID

2

Ввести дополнительные данные

Краткое описание

Вводятся данные о количестве, возможно выбор аналога товара

Действующее лицо

Администратор

Предусловие

Информация отображена

Основной поток

Ввод данных

Постусловие

нет

Альтернативный поток

нет

ID

3

Оформление документов на покупку товара

Краткое описание

Подготовка (заполнения) форм на продажу товара, заполнение гарантийного талона

Действующее лицо

Администратор

Предусловие

Заказ подтвержден

Основной поток

Оформление документов

Постусловие

нет



4. Детальное проектирование

.1 Введение

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

Цель

Целью данного документа является детальное рассмотрение каждого объекта: данных, модулей, процессов информационной интеллектуальной система сервисного обслуживания автомобилей.

Описание проекта

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

Определения, сокращения и термины

Все необходимые сведения об определениях, сокращениях и терминах представлены в разделе 1.1.3.

4.2 Описание декомпозиции

Модульная декомпозиция

Описание модуля «Клиенты»

Реализация работы с клиентами представлена в таблице 4.1, которая позволяет наглядно увидеть процесс работы с клиентами (добавление, удаление и редактирование данных и т.д.).

Таблица 4.1 - Описание модуля «Клиенты»

Описание

Условие

Реализация

Создание клиента

Заполнение всех полей

IDTOService = SQLCreateNewIDFromTable («Сервис_ТО», «ID_ТО») _ Call SQLExecOnly («INSERT INTO Сервис_ТО VALUES (» & IDTOService &»,» & IDClient &»,»…» '', '', '', 'Активен', '', '', '', '', '0-1')»)

Удаление клиента

Нет

Adodc1. Recordset. Delete

Редактирование записи (Ник)


If sLastNick <> Text10. Text Then sNewNick = ProgramADO.SQLExecAndGetValueOnFieldStr («SELECT * FROM Заказчик WHERE Ник='» & Text10. Text & «'», «Ник»)


Описание модуля «Заказ»

Реализация работы с заказами представлена в таблице 4. 2, которая позволяет наглядно увидеть процесс работы с клиентами (добавление, удаление и т.д.).

Таблица 4.2 - Заказы (Order)

Поле

Тип

Описание

ID of Auto

Целое число

Идентификационный номер автомобиля

ID of Client

Целое число

Идентификационный номер клиента

Date of Order

Дата

Дата поступления заказа


Описание блока данных

Описание данного блока представлено в виде запросов, которые реализуют действия по работе функциональной части СТО (см. таблицу 4.3).

Таблица 4.3 - Заказы (Order)

Описание

Условие

Реализация

Выбор пройденных работ

Запись в базе

AR10 = ac. Execute («SELECT Работа1, Работа2, Работа3, Учет FROM Сервис_ТО WHERE ID_покупатель =» & IDClient)

Информация о автомобиле клиента

Существование учетной записи

Set AR2 = ac. Execute («SELECT Модель FROM Заказчик WHERE ID_покупатель =» & IDClient) _ Set AR3 = ac. Execute («SELECT Двигатель FROM Заказчик WHERE ID_покупатель =» & IDClient)

Выборка данных из базы

нет

AR6 = ac. Execute («SELECT ТО1_ Пробег, ТО2,…, Статус FROM Сервис_ТО WHERE ID_Покупатель =» & IDClient)

Запрос статуса пользователя

Существование учетной записи

Set AR4 = ac. Execute («SELECT Статус, Причина FROM Сервис_ТО WHERE ID_Покупатель =» & IDClient)


4.3    Описание зависимостей

Зависимость внутри данных

Таблица 4.4 - Взаимосвязь данных

Описание

Связь

Реализация

Пример взаимодействия введенных данных пользователя и системы

Ввод данных - система

If Not 17000 <= Text1. Text >= 25000 Then _ If Text1. Text < 17000 Then MsgBox «Прохождение ТО еще не требуется», vbInformation mistake = True

Взаимодействие данных (способность записи в БД)

Система - БД

maxDlina = maxDlina + 13 If maxDlina + Len (Text24. Text) + Len (Text22. Text) + ICorrect >= 250 Then MsgBox».», vbInformation Exit Sub

Процесс записи в БД и контроль на величину переменной procent

Система - БД

procent = ((Val (Text20. Text) * 12) / 100) Text19. Text = Val (Text19. Text) + (Val (Text20. Text) - procent) _ Call ProgramADO.SQLExecOnly («UPDATE Заказчик SET» & «Предоплата= '» & Text19. Text & «' WHERE ID_Покупатель=» & DataCombo1. BoundText) Label49. Caption = Text19. Text

Контроль взаимод. с записью в БД

Система - БД

OstoneLsTOWork = Mid (oneLsTOWork, 50 - i2, Len(oneLsTOWork)) oneLsTOWork = Mid (oneLsTOWork, 1, 50 - i2)


4.4        
Детальное проектирование

Класс «Заказ»

Детальное проектирование классов БД представлено в таблицах 4.5 - 4.7.

Таблица 4.5 - Описание класса «Заказ»

Атрибуты

Описание

ID детали

Идентификационный номер детали в прайс-листе

ID клиента

Идентификационный номер клиента автосалона


Таблица 4.6 - Описание класса «Клиент»

Атрибуты

Описание

ID клиента

Идентификационный номер клиента автосалона

Ф.И.О.

Фамилия, имя, отчество клиента

Адрес

Адрес клиента

Телефон

Телефон клиента


Таблица 4.7 - Описание класса «ТО»

Атрибуты и операции

Описание

ID ТО

Идентификационный код

Название

Название (Класс ТО)

Цена

Цена ТО для выбранного автомобиля (авто. Клиента)

Тип

Тип технического осмотра

Вид

Определяет вид: основной, промежуточный

Расчет Цены

Расчет цены зависит от многих факторов: вид технического осмотра, состояние автомобиля, выбор дополнительных работ для выполнения и т.д.


Модуль «Form1.cs»

Модуль «Form1.cs», или «Источник данных», представляет собой форму для настройки подключения к БД и управления состоянием подключения (см. таблицу 4.8).

Таблица 4.8 - Описание процедур модуля «Источник данных»

Процедура

Описание

button28_Click

Подключение к БД

button29_Click

Открытие окна настройки подключения к БД

button30_Click

Отключение от БД

Модуль представляет собой интерфейс для выбора дополнительных работ для выполнения. Описание процедур и функций модуля «Работы» представлено в таблице 4.9. Последовательность выполнения процедур и функций при работе модуля «Работы» так же представлена на рисунке 4.1.

Таблица 4.9 - Описание процедур модуля «Автомобили»

Процедура

Описание

dataGridView4_Cell ContentClick

Передает выбо дополнительных работ из существующего списка SelectModel

dataGridView5_Cell ContentClick

Передает выбранный тип детали (аналоги) SortGrid

dataGridView2_CellClick

Фиксирует выбранную серию и модель автомобиля

dataGridView2_Cell MouseDoubleClick

Показывает информацию о выбранной детали (произведенной работе)

dataGridView6_Colu mnHeaderMouseClick

Выводит варианты стоимости (в зависимости от выбранной фирмы производителе)

Button27_Click

Добавление работ в БД и переход в состояние ожидания последующих действий

Рисунок 4.1 - Диаграмма компонентов модуля «Работы»

На рисунке 4.2 показано схематично взаимодействие компонентов в таблице базы данных.

Рисунок 4.2 - Диаграмма компонентов модуля «Таблицы БД»

5. Сборка, интеграция, реализация, инструменты и среды программирования. Модульное тестирование

.1 Описание среды разработки

Visual Basic - средство разработки программного обеспечения, разрабатываемое корпорацией Microsoft и включающее язык программирования и среду разработки. Язык Visual Basic унаследовал дух, стиль и отчасти синтаксис своего предка - языка Бейсик, у которого есть немало диалектов. В то же время Visual Basic сочетает в себе процедуры и элементы объектно-ориентированных и компонентно-ориентированных языков программирования. Среда разработки VB включает инструменты для визуального конструирования пользовательского интерфейса.Basic считается хорошим средством быстрой разработки прототипов программы, для разработки приложений баз данных и вообще для компонентного способа создания программ, работающих под управлением операционных систем семейства Microsoft Windows.

Первое признание серьёзными разработчиками Visual Basic получил после выхода версии 3 - VB3. Окончательное признание как полноценного средства программирования для Windows - при выходе версии 5 - VB5. Версия VB6, входящая в состав Microsoft Visual Studio 6.0, стала по-настоящему зрелым и функционально богатым продуктом. После этого разработчики из Microsoft существенно изменили направление развития данной технологии.Basic .NET не позволяет программировать по-старому, ибо по сути является совершенно другим языком, таким же, как и любой другой язык программирования для платформы .NET. Индивидуальность языка, так же как и его преимущества (простота, скорость создания программ, лёгкость использования готовых компонент) при использовании в среде.NET не имеют такого значения, как раньше - всё сосредоточено на возможностях самой системы.NET, на её библиотеке классов. Поэтому сегодня (сентябрь 2010) нужно говорить о классическом Visual Basic, его диалектах Visual Basic for Applications (VBA) и Visual Basic Scripting Edition (VBScript) и о языке для платформы.NET - Visual Basic.NET.Framework - программная платформа, выпущенная компанией Microsoft в 2002 году. Фактически представляет собой операционную систему внутри операционной системы. Основой платформы является виртуальная машина Common Language Runtime (CLR), способная выполнять как обычные настольные программы, так и веб-приложения. Отличительной особенностью.NET Framework является способность выполнять программы, написанные на разных языках программирования [9].

Считается, что платформа.NET Framework явилась ответом компании Microsoft на набравшую к тому времени большую популярность платформу Java компании Sun Microsystems (ныне принадлежит Oracle), также основанную на виртуальной машине.

Хотя.NET является патентованной технологией корпорации Microsoft и официально рассчитана на работу под операционными системами семейства Microsoft Windows, но существуют независимые проекты (прежде всего это Mono и Portable.NET), позволяющие запускать программы.NET на многих других операционных системах.

5.2 Описание СУБД

Access является настольной СУБД (система управления базами данных) реляционного типа. Достоинством Access является то, что она имеет очень простой графический интерфейс, который позволяет не только создавать собственную базу данных, но и разрабатывать приложения, используя встроенные средства.

В отличие от других настольных СУБД, Access хранит все данные в одном файле, хотя и распределяет их по разным таблицам, как и положено реляционной СУБД. К этим данным относится не только информация в таблицах, но и другие объекты базы данных, которые будут описаны ниже.

Для выполнения почти всех основных операций Access предлагает большое количество Мастеров (Wizards), которые делают основную работу за пользователя при работе с данными и разработке приложений, помогают избежать рутинных действий и облегчают работу неискушенному в программировании пользователю.

Особенности MS Access, отличающиеся от представления об «идеальной» реляционной СУБД.

Создание многопользовательской БД Access и получение одновременного доступа нескольких пользователей к общей базе данных возможно в локальной одноранговой сети или в сети с файловым сервером. Сеть обеспечивает аппаратную и программную поддержку обмена данными между компьютерами. Access следит за разграничением доступа разных пользователей к БД и обеспечивает защиту данных. При одновременной работе. Так как Access не является клиент серверной СУБД, возможности его по обеспечению многопользовательской работы несколько ограничены. Обычно для доступа к данным по сети с нескольких рабочих станций, файл БД Access (с расширением *.mdb) выкладывается на файловый сервер. При этом обработка данных ведется в основном на клиенте - там, где запущено приложение, в силу принципов организации файловых СУБД. Этот фактор ограничивает использование Access для обеспечения работы множества пользователей (более 15-20) и при большом количестве данных в таблицах, так как многократно возрастает нагрузка не сеть.

В плане поддержки целостности данных Access отвечает только моделям БД небольшой и средней сложности. В нем отсутствуют такие средства как триггеры и хранимые процедуры, что заставляет разработчиков возлагать поддержание бизнес логики БД на клиентскую программу.

В отношении защиты информации и разграничения доступа Access не имеет надежных стандартных средств. В стандартные способы защиты входит защита с использованием пароля БД и защита с использованием пароля пользователя.Access предоставляет в распоряжение непрограммирующему пользователю разнообразные диалоговые средства, которые позволяют ему создавать приложения не прибегая к разработке запросов на языке SQL или к программированию макросов или модулей на языке VBA.обладает широкими возможностями по импорту / экспорту данных в различные форматы, от таблиц Excel и текстовых файлов, до практически любой серверной СУБД через механизм ODBC.

Еще одно немаловажное преимущество MS Access заключается в развитых встроенных средствах разработки приложений. Большинство приложений, распространяемых среди пользователей, содержит тот или иной объем кода VBA (Visual Basic for Applications). Поскольку VBA является единственным средством для выполнения многих стандартных задач в Access (работа с переменными, построение команд SQL во время работы программы, обработка ошибок, использование Windows API и т.д.), для создания более-менее сложных приложений необходимо его знание и знание объектной модели MS Access.

Одним из средств программирования в Access является язык макрокоманд. Программы, созданные на этом языке, называются макросами и позволяют легко связывать отдельные действия, реализуемые с помощью форм, запросов, отчетов. Макросы управляются событиями, которые вызываются действиями пользователями при диалоговой работе с данными через формы или системными событиями.

Основные компоненты MS Access:

·              построитель таблиц;

·              построитель экранных форм;

·              построитель SQL-запросов (язык SQL в MS Access не соответствует стандарту ANSI);

·              построитель отчётов, выводимых на печать.

Они могут вызывать скрипты на языке VBA, поэтому MS Access позволяет разрабатывать приложения и БД практически «с нуля» или написать оболочку для внешней БД.Access является файл-серверной СУБД и потому применима лишь к маленьким приложениям. Отсутствует ряд механизмов, необходимых в многопользовательских БД, таких, например, как триггеры.

Существенно расширяет возможности MS Access по написанию приложений механизм связи с различными внешними СУБД: «связанные таблицы» (связь с таблицей СУБД) и «запросы к серверу» (запрос на диалекте SQL, который «понимает» СУБД). Также MS Access позволяет строить полноценные клиент-серверные приложения на СУБД MS SQL Server. При этом имеется возможность совместить с присущей MS Access простотой инструменты для управления БД и средства разработки.

5.3 Сборка проекта

Сборка приложения «Peugeot - сервис» (рисунок 5.1) проходит в 4 этапа:

         Сборка интерфейсов главного модуля «Form1.cs» и второстепенных модулей «FormOrder.cs» и «FormCarInfo.cs»;

         Сборка функций для связи с БД и связи с второстепенными модулями;

         Сборка функций для работы с данными;

         Сборка интерфейсов модулей отображения данных «TreeLogicalOutput.cs» и графа «Graf-TreeLog.cs» и функций для их построения.

Рисунок 5.1 - Сборка приложения «Peugeot-сервис»

5.4 Тестирование «черного ящика», «белого ящика» и «серого ящика»

В этом разделе будет дано определение тестирования «черного», «белого» и «серого ящика». В остальной части главы будет описано, как планировать, проектировать и выполнять такие тесты.

Когда мы интересуемся исключительно тем, как программа или ее часть предоставляет соответствующие выходные данные, мы тестируем ее на каждое требование, используя подходящие входные данные. Это называется тестированием «черного ящика», поскольку мы не обращаем внимания на то, что находится внутри «ящика» (программы): «ящик» может быть «черным». Тесты «черного ящика» могут быть эффективны, если мы можем убедиться, что они исчерпывают все комбинации входных данных. Это докажет заказчику, что все требования удовлетворены. Однако никакое тестирование не охватывает всех возможностей.

Тестирование «черного ящика» похоже на тестирование моста путем проезда по нему нескольких комбинаций различных транспортных средств. Это неэффективно, поскольку нам нужно проверить и составные части моста, и то, как они объединены в систему. Последнее называется идеей «тестирования белого ящика». Тестирование «черного ящика» и «белого ящика» проиллюстрировано на рисунок 5.2.

Рисунок 5.2 - Типы тестов

Целью тестирования «белого ящика» является тестирование наиболее ненадежных путей программы. Для выполнения тестирования «белого ящика» мы сначала разбиваем проект программы на отдельные элементы и ищем пути и другие разбиения для управления и данных. Затем мы проектируем тесты, прослеживающие все или некоторые из этих путей, и проверяем все составные части. Более наглядным названием этих действий было бы «тестирование стеклянного ящика».

Тестирование «серого ящика» рассматривает внутреннюю работу программы или модуля, но только до некоторой степени. Сюда могут быть также отнесены и некоторые аспекты тестирования «черного ящика».

5.5 Тестирование приложения Peugeot-сервис

При проведении тестирования были получены следующие результаты, которые приведены в таблице 5.1.

Таблица 5.1 - Результаты тестирования

Описание теста

Модуль

Результат

Запрет на ввод информации (частично), проверка на совпадение (Ник, пароль), запрет на самостоятельное редактирование полей предназначенных для выборки данных из базы (прайс-листы работ, то)

Form1.frm

Тест пройден

Проверка на некорректные действия пользователя во время составления (оформления) заказа

Form2.frm

Тест пройден

Запрет добавления записи с незаполненными основными полями

Form6.frm Adm_TO

Тест пройден

Запрет на запись в базу данных, если нарушены какие-либо критерии

Form6.frm Adm_TO

Тест пройден

Проверка на некорректные действия пользователя

Form6.frm Adm_TO

Тест пройден

Проверка на корректную работу интерфейса (вывод меню)

Form10.frm ClientServise

Тест пройден

Проверка на заполнения всех данных (сервисная книга, информация о клиенте)

Form10.frm ClientServise

Ошибок 0


6. Технико-эксплуатационные показатели проектирования

6.1    Описание руководства пользователя

Данное приложение поможет пользователю разобраться с основными возможностями программы. Руководство пользователя направлено на ознакомление с приложением поверхностно, т.е. учит пользователя правильно обращаться с программой. Здесь так же приведены данные по работе с приложением для администратора, но для уверенной работы с программой администратор проходит дополнительное обучение, благодаря которому он сможет решать большинство проблем возникающих в ходе работы с приложением.

6.2    Запуск приложения

Для работы с программой достаточно иметь на ПК стандартные средства Microsoft office. Для начала работы необходимо запустить программу путем двойного клика мыши по файлу СТО.exe, который расположен на сетевом диске C:\ (для корректной работы это необходимо) в папке «Диплом». Все файлы, расположенные по адресу C:\Диплом являются обязательными и при удалении или порчи частично (целиком), работоспособность приложения не гарантируется.

6.3    Вход в систему (авторизация)

Вход в систему для Пользователя

После запуска файла СТО.exe открывается стартовое окно программы «Авторизация в Системе», которое состоит из двух вкладок: «Вход для клиента» и «Вход для Администратора». Необходимо выбрать вкладку «Вход для клиента» (рисунок 6.1) и в соответствующие поля ввести Ник и пароль (если таких данных нет, то необходимо обратиться к администратору за помощью). Данные Ник, и пароль присваиваются пользователю в момент регистрации в системе. После корректного ввода данных нажмите на джойстике центральную клавишу «Enter». Так же на данной вкладке присутствуют такие возможности:

«Info» позволяет получить главную информацию;

клавиши вверх и вниз производят навигацию;

клавиши вправо и влево регулируют скорость бегущей строки (Info);

«Setting» меняет настройки окна;

«Back» удаляет один последний символ из активного окна;

«Del (nik)» очистит поле Ник;

«Del (pass)» очистит поле Пароль;

Для выхода из программы необходимо нажать на клавишу «OFF».

Вход в систему для Администратора

Необходимо ввести Ник и Пароль (известен только администратору) в соответствующие поля, выбрать объект для входа («Автосервис» или «Автомагазин»), нажать на кнопку «Start».

6.4    Работа в «Личном кабинете» пользователя

Интерфейс данного окна состоит из нескольких кнопок, а так же меню, которое открывается при наведении мыши.

Основными функциями личного кабинета являются просмотр различной информации:

просмотр «Сервисной книги». Данную информацию можно просмотреть путем нажатия на кнопку «Сервисная книга» которая расположена в главном окне, либо воспользоваться меню Мой Peugeot/ Сервисная книга. Сервисная книга показывает все проделанные работы с автомобилем владельца.

для просмотра актуальной информации в программу внедрен браузер, который показывает новости, информацию непосредственно с официального сайта компании Peugeot. Для просмотра данной информации требуется подключение к сети интернет.

для просмотра Другой полезной информации можно воспользоваться имеющимися вкладками в меню.

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

6.5    Работа с клиентами «Peugeot-сервис»

Администратор выполняет все работы связанные с клиентами. В данном окне можно добавить нового пользователя, удалить уже существующего или редактировать данные клиента.

Для защиты пароля необходимо нажать кнопку «Защитить», которая отвечает за перевод обычного набора данных в виде шифрования MD5, после произведения каких-либо действий нужно нажать клавишу «Сохранить».

6.6    Модуль «Покупка товара»

Для приобретения товара можно воспользоваться удобным поиском, который позволяет найти необходимую деталь по: названию, артикул, категории и т.д. Данный вид сервиса позволяет производить поиск товара по фрагменту слова (кода), который присутствует в составе детали. После нахождения необходимой детали нужно написать приобретаемое кол-во деталей (штук), и нажать кнопку «Сделать заказ».

6.7   
Описание работы сервисной станции
Peugeot

Главной задачей сервисной станции является произведение ремонта по плану. Данный вид технического обслуживания расположен на вкладке «Пройти ТО», которая расположена в центре главного окна сервиса. Здесь администратор вводит данные о пробеге автомобиля, дате, выбирает дополнительные работы, выбирает способ оплаты, после чего система автоматически проверяет соблюдение всех норм и правил и выводит соответствующие предупреждения.

Для выполнения других работ (не связанных с плановыми ТО), в программе предусмотрена вкладка «Сервисная станция». Администратор выписывает набор работ для выполнения, выбирает способ оплаты, после чего нажимает кнопку «Выполнить». Далее по нажатию кнопки «отправить на печать», распечатывает лист работ.

Для просмотра истории присутствует вкладка «Информация о ТО», в ней описаны все ТО с возможностью просмотра выполненных работ на каждом техническом осмотре в отдельности.

В программе реализован способ ограничения доступа к личному кабинету. Администратор может частично или полностью ограничить доступ к кабинету пользователя.

Для просмотра информации о клиенте необходимо нажать на кнопку «Инфо. о клиенте», и в открывшемся окне выбрать интересующую информацию для просмотра.

В программе реализована функция «Личный счет». Он позволяет хранить денежные средства (оплата услуг) на счете в банке. Пополнение и снятие производиться из кабинета администратора. За операции по пополнению или снятию денежных средств взимается комиссия, размер которой зависит от суммы задолженности.

Список использованных источников

1. Карташов В.П., Мальцев В.М. «Организация технического обслуживания и

ремонта автомобилей» М.: «Транспорт» 1999 г., 215 ст.

. Туревский И.С. «Экономика и управление автотранспортным предприятием», учебное пособие, М. - 2005 г. 186 ст.

3. Кватрани Т. Rational Rose 2000 и UML. Визуальное моделирование: Пер. с англ. ДМК Пресс, 2001.176 ст.

. Технология выполнения регламентных работ первого и второго технического обслуживания автомобиля, Минавтотранс, М. - Транспорт, 1996 г. 220 ст.

. Туревский И.С. «Дипломное проектирование автотранспортных предприятий», М. - ИД «Форум», 2008 г. - 240 ст.

. Клебанов Б.В. «Проектирование производственных участков авторемонтных предприятий», М. - «Транспорт», 1975 г. 134 ст.

.Н.Н. Гринченко, Е.В. Гусев, Н.П. Макаров. Проектирование баз данных. СУБД Microsoft Access. Учебное пособие. 2004 год. 240 ст.

. www. Peugeot.ru

. Миклашевская Л.Н. Технология создания ПО. Курс лекций. - Кр.: Кубанский государственный технологический университет, 1994. - 59 ст.

. Миклашевская Л.Н., Цуприков А.А. Оценка экономической эффективности программного изделия. Методические указания по дипломному проектированию для студентов специальности 22.04. - Кр.:КубГТУ, 1999. - 30 ст.

Приложение А

Текст модуля «Работа с клиентами»

Private SaveNik As StringsLastNick As StringSub Calendar1_Click()Calendar1. DataChanged = True Then Calendar1. Visible = FalseSubSub Combo1_GotFocus()strMod As String. Clear. AddItem (TOData(0).sModelName)i = 1 To 58= TOData(i).sModelNameCombo1. List (Combo1. ListCount - 1) <> strMod Then Combo1. AddItem (TOData(i).sModelName)SubSub Combo2_GotFocus()engine As String. ClearCombo1. Text = «» Then MsgBox («Выберите модель»)i = 0 To 58TOData(i).sModelName = Combo1. Text Then. AddItem (TOData(i).sEngineType)If. Top = Picture1. Top + Picture1. Height: Picture1. Top = Picture1. Top - Picture1. HeightSubSub Combo3_GotFocus(). Clear. AddItem («Peugeot»)SubSub Command1_Click()IDClient As Long. Recordset. MoveLast= Val (Adodc1. Recordset(0).value) + 1. Recordset. AddNew. Recordset(0).value = IDClient. Recordset. MoveLast ' для обновления БД S №1

Dim IDTOService As Integer. CreateStringConnect= SQLCreateNewIDFromTable («Сервис_ТО», «ID_ТО»)SQLExecOnly («INSERT INTO Сервис_ТО VALUES (» & IDTOService &»,» & IDClient &», '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 'Активен', '', '', '', '', '0-1')»)SubSub Command12_Click(). Enabled = TrueSubSub Command2_Click(). Visible = FalseSubSub Command3_Click()MsgBox («Удалить?» & Text2. Text & «- автомобиль» & Combo3. Text & «» & Combo1. Text, vbQuestion + vbOKCancel, «Вы точно хотите удалить клиента?») = vbOK Then. Recordset. DeleteIfSubSub Command4_Click(). Text = MD5. DigestStrToHexStr (Text9. Text)

'Adodc1. RefreshSubSub Command5_Click(). Text = «»SubSub Command6_Click(). Text = Calendar1.value. Visible = False. Visible = FalseSubSub Command8_Click()= «ClientInfMoneyOpen». Enabled = True. Enabled = FalseSubSub Form_Load(). Timer1. Enabled = TrueSubSub Image1_Click (Index As Integer)Index <> 19 Then Picture3. Visible = FalseCase Index0: Text16. Text = «Голубой»1: Text16. Text = «Серый»2: Text16. Text = «Красный»3: Text16. Text = «Серый»4: Text16. Text = «Красный аден»5: Text16. Text = «Серый алюминий»6: Text16. Text = «Черный металик»7: Text16. Text = «Майя»8: Text16. Text = «Альпийский снег»9: Text16. Text = «белый»10: Text16. Text = «Изумруд»11: Text16. Text = «Бежевый»12: Text16. Text = «Зеленый»13: Text16. Text = «Темно-синий»14: Text16. Text = «Серебристый»15: Text16. Text = «Желтый»16: Text16. Text = «Фиолетовый»17: Text16. Text = «Ирис»18: Text16. Text = «Золотой»SelectSubSub Command10_Click()Text3. Text <> «» Then. Visible = False. Text = Text3. Text. Text = «»IfSubSub Command11_Click(). Visible = FalseSubSub Label3_Click()= «ClientInfMoneyClose». Enabled = TrueSubSub Command9_Click()= «ClientInfMoneyClose». Enabled = TrueSubSub Text10_GotFocus()= Text10. TextSubSub Text10_Validate (Cancel As Boolean)sNewNick As StringsLastNick <> Text10. Text Then= ProgramADO.SQLExecAndGetValueOnFieldStr («SELECT * FROM Заказчик WHERE Ник='» & Text10. Text & «'», «Ник»)sNewNick <> «» Then«Такой Ник уже используется», vbInformation. Text = sLastNickIfIfSubSub Text11_Click(). Top = Text11. Top. Left = Text11. Left + Text11. Width + 5. Visible = True. Left = Calendar1. Left + 12. Top = Calendar1. Top + Calendar1. Height + 4. Visible = TrueText11. Text = «» Then Calendar1.value = Date Else Calendar1.value = Text11. TextSubSub Text16_GotFocus(). Left = 664: Picture3. Top = 144: Picture3. Visible = TrueSubSub Text18_Click(). Top = Text18. Top. Left = Text18. Left + Text18. Width + 5. Visible = True. Left = Calendar1. Left + 12. Top = Calendar1. Top + Calendar1. Height + 4. Visible = TrueText11. Text = «» Then Calendar1.value = Date Else Calendar1.value = Text11. TextSubSub TimerAnimation1_Timer()Case AnimationValue«ClientInfMoneyOpen». ClientInfMoneyOpen«ClientInfMoneyClose». ClientInfMoneyCloseSelectSubSub VScroll1_Scroll(). Top = VScroll1.valueSub

Приложение Б

Текст модуля «Заказ»

Option ExplicitSub Adodc5_WillMove (ByVal adReason As ADODB. EventReasonEnum, adStatus As ADODB. EventStatusEnum, ByVal pRecordset As ADODB. Recordset)SubSub Combo1_Click(). Text = «»GetCarDataFromModel (Combo1. Text)SubSub Combo2_Click(). ConnectionString = «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False». CommandType = adCmdText. RecordSource = «SELECT * FROM Склад WHERE (Склад. Марка LIKE '» & Combo1. Text & «') AND (Склад. Модель LIKE '» & Combo2. Text & «')». RefreshDataCombo3. RowSource = Adodc2. Text = «». ListField = «Название». BoundColumn = «ID_деталь». RefreshSubSub Combo3_Click(). ConnectionString = «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False»

'Adodc1. RecordSource = «SELECT * FROM Заказчик WHERE (Заказчик. Фамилия LIKE '» & DataCombo1. Text & «')». RefreshSubSub Command2_Click()Text4. Text = «» Then MsgBox («Введите количество деталей») Else SdelkaSubSdelka()IDNew As LongAR As New ADODB. Recordsetac As New ADODB. Connection. Recordset. MoveLast= Val (Adodc3. Recordset(0).value) + 1. Recordset. AddNew. Recordset(0).value = IDNew. Recordset. Fields(1).value = Val (DataCombo1. BoundText). Recordset. Fields(2).value = Val (DataCombo3. BoundText). Recordset. Fields(3).value = Val (Text4. Text). Recordset. Fields(7).value = «Готово». Recordset. Fields(4).value = Calendar1.value. Open «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False»AR = ac. Execute («SELECT Склад. Цена FROM Склад WHERE ID_деталь =» & Val (DataCombo3. BoundText)). Recordset. Fields(5).value = AR. Fields(0).value. Recordset. Fields(6).value = Val (Text4. Text) * AR. Fields(0).value=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False»FunctionSub Command3_Click(). Visible = FalseSubGetCarDataFromMarka()AR As New ADODB. Recordsetac As New ADODB. Connectioni As Long, LastText As String. Open «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False»AR = ac. Execute («SELECT Марка FROM Склад ORDER BY Марка»). MoveFirst= AR. Fields(0).value. Clear. AddItem LastText

While AR.EOF = FalseAR. Fields(0).value <> LastText Then. AddItem AR. Fields(0).value= AR. Fields(0).valueIf. MoveNextFunctionGetCarDataFromModel (ByVal sMarka As String)AR As New ADODB. Recordsetac As New ADODB. Connectioni As Long, LastText As String. Open «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False»AR = ac. Execute («SELECT Склад. Модель, Склад. Марка FROM Склад WHERE Склад. Марка LIKE '» & sMarka & «' ORDER BY Модель»). MoveFirst= AR. Fields(0).value. Clear. AddItem LastTextWhile AR.EOF = FalseAR. Fields(0).value <> LastText Then. AddItem AR. Fields(0).value= AR. Fields(0).valueIf. MoveNextFunctionSub Command4_Click(). Visible = TrueSubSub Command5_Click(). Visible = FalseSubSub Command6_Click(). ClearText1. Text <> «» ThenText2. Text <> «» ThenText3. Text <> «» ThenText5. Text <> «» Then(«Введите нужные параметры поиска!»)IfSubSub Command8_Click(). Visible = FalseSubSub DataCombo1_Click (Area As Integer)AR As New ADODB. Recordsetac As New ADODB. Connectioni As LongArea <> 0 And DataCombo1. BoundText <> «» Then. Open «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False»AR = ac. Execute («SELECT * FROM Заказчик WHERE ID_покупатель =» & DataCombo1. BoundText)i = 0 To 6IsNull (AR. Fields(i).value) Then(i).Caption = «»(i).Caption = AR. Fields(i).valueIfIf. Enabled = True. Caption = DataCombo1. BoundTextSubSub DataCombo3_Click (Area As Integer)AR As New ADODB. Recordsetac As New ADODB. Connectioni As LongArea <> 0 And DataCombo3. BoundText <> «» Then. Open «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False»AR = ac. Execute («SELECT * FROM Склад WHERE ID_деталь =» & DataCombo3. BoundText)i = 0 To 8IsNull (AR. Fields(i).value) Then(i).Caption = «»(i).Caption = AR. Fields(i).value(7).Caption = IIf (Val(AR. Fields(0).value) = Val (AR. Fields(7).value), «Нет аналога», «Аналог: №» & Val (AR. Fields(4).value))IfIf. Caption = DataCombo3. BoundTextSubSub Form_Load()GetCarDataFromMarka. Text = «» _Text2. Text = «» _Text3. Text = «» _Text4. Text = «»SubPoiskIsAnalog()i As Long, IdAnalog As LongAR As New ADODB. RecordsetAR2 As New ADODB. RecordsetAR3 As New ADODB. Recordsetac As New ADODB. Connection. Open «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False»AR2 = ac. Execute («SELECT Аналог FROM Склад WHERE Артикул =» & Text3. Text). ConnectionString = «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False». RecordSource = «SELECT * FROM Склад WHERE (Склад. Артикул =» & Val (Text3. Text) &»)»AR2.BOF <> True Or AR2.EOF <> True ThenAR3 = ac. Execute («SELECT Артикул FROM Склад WHERE ID_Деталь =» & AR2. Fields. Item(0).value)«Аналогов не найдено»FunctionIf. Refresh

i = 0 To 8IsNull (Adodc2. Recordset. Fields(i).value) Then(i).Caption = «»(i).Caption = Adodc2. Recordset. Fields(i).valueIf= Val (Adodc2. Recordset. Fields(7).value). Clear. Open «SELECT * FROM Склад WHERE Склад. Аналог =» & IdAnalog, ac, adOpenStatic, adLockOptimistic(AR3.EOF = True And AR3.BOF = True) Then MsgBox «Аналогов не найдено», vbInformation: Exit Function. MoveFirstWhile AR3.EOF = False. AddItem AR3. Fields. Item(0).value. MoveNextFunctionPoiskIsKategor(). ConnectionString = «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False». RecordSource = «SELECT * FROM Склад WHERE (Склад. Категория LIKE '%» & Text1. Text & «%')». Refresh. Columns(7).Visible = False. Visible = TrueFunctionPoiskIsName(). ConnectionString = «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False». RecordSource = «SELECT * FROM Склад WHERE (Склад. Название LIKE '%» & Text2. Text & «%')». Refresh. Columns(7).Visible = False. Visible = TrueFunctionPoiskIsArticul(). ConnectionString = «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False». RecordSource = «SELECT * FROM Склад WHERE (Склад. Артикул LIKE '%» & Val (Text5. Text) & «%')». Refresh. Columns(7).Visible = False. Visible = TrueFunctionSub List1_Click()i As LongList1. ListIndex >= 0 Then. ConnectionString = «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False». RecordSource = «SELECT * FROM Склад WHERE (Склад. Артикул =» & Split (List1. Text,»:») (0) &»)». Refresh

i = 0 To 8IsNull (Adodc2. Recordset. Fields(i).value) Then(i).Caption = «»(i).Caption = Adodc2. Recordset. Fields(i).valueIfIfSub

Приложение В

Текст модуля «ТО»Sub Check1_Click()Check1.value = 1 Thendlina As LongmaxDlina As Longi = 0 To List2. ListCount - 1= Len (List2. List(i))= maxDlina + dlinamaxDlina + Len (Check1. Caption) >= 245 Then«Количество дополнительных работ превышает допустимую норму по предоставляемым услугам. Последующие дополни тельные работы возможно будет выполнить обратившись к Нам в другое время. Подробности у администратора.», vbInformationSubIf= UBound (AddonData(WorkForCar).arrServices()). AddItem (Check1. Caption). AddItem («0»). AddItem («0»). AddItem (AddonData(WorkForCar).arrServices(i).iMoney). Text = Val (Text10. Text) + AddonData(WorkForCar).arrServices(i).iMoney. Text = Val (Text15. Text) + AddonData(WorkForCar).arrServices(i).iMoneyIfCheck1.value = 0 Theni = 0 To List2. ListCount - 1List2. List(i) = «Замена ГРМ» Then. RemoveItem (i): List5. RemoveItem (i): List6. RemoveItem (i). Text = Val (Text10. Text) - List9. List(i). Text = Val (Text15. Text) - List9. List(i). RemoveItem (i)IfIfSubSub Check3_Click()i = 0 To List11. ListCountCheck3. Caption = List11. List(i) ThenCheck3.value = 0 ThenJ = 0 To List11. ListCount - 1List11. List(i) = «Замена ГРМ» Then. Text = Val (Text23. Text) - List4. List(i). RemoveItem (i): List4. RemoveItem (i)IfIfIfDataCombo1. Text = «» Then«Выберите клиента», vbInformation.value = 0SubIfCheck3.value = 1 Then. Enabled = True: Option2. Enabled = True: Option3. Enabled = True: Label71. Enabled = True: Command25. Enabled = True: Text25. Enabled = True. Enabled = False: Option2. Enabled = False: Option3. Enabled = False: Label71. Enabled = False: Command25. Enabled = False: Text25. Enabled = False.value = 0: Option2.value = 0: Option3.value = 0: Text25. Text = «»IfSubSub DataCombo1_Click (Area As Integer)Area <> 0 Then= Val (DataCombo1. BoundText). Clear: List5. Clear: List11. Clear: List4. Clear: List6. Clear: List9. Clear: Text10. Text = «»: Frame5. Visible = False: Command5. Enabled = True: Command3. Enabled = TrueSSTab1. Tab = 2 Then Picture8. Visible = True Else Picture8. Visible = FalseDataCombo1. Text <> «» Then Command8.value = True 'нажатие кнопки для автозаполненияIfSubSub DataCombo2_Click (Area As Integer)Marka As LongArea <> 0 Theni = 0 To 10= TOData(i).sModelNameIfSubSub Command23_Click()DataCombo1 = «» Then Exit SubList11. ListCount = 0 Then«Нет работ для выполнения», vbInformationSubIfOption6.value = True Then TestOnLevelMoneymistake = True Then Exit Subotv As Integer. Visible = False. Clear: List12. Clear: List3. Clear= MsgBox («Подтвердить выполнение выбраных работ?», vbYesNo + vbQuestion)otv = 7 Then Exit SubAddstroka As StringControlWork As StringControlWorkCash As Stringac As New ADODB. ConnectionDlin1 As Long: Dim Dlin2 As Long: Dim Dlin3 As LongAR10 As New ADODB. Recordset. Open «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False»AR10 = ac. Execute («SELECT Работа1, Работа2, Работа3, Учет FROM Сервис_ТО WHERE ID_покупатель =» & IDClient)AR10. Fields. Item(0) <> «» And AR10. Fields. Item(0) <> «Null» Then= Len (AR10. Fields. Item(0))= 0IfAR10. Fields. Item(1) <> «» And AR10. Fields. Item(1) <> «Null» Then= Len (AR10. Fields. Item(1))= 0IfAR10. Fields. Item(2) <> «» And AR10. Fields. Item(2) <> «Null» Then= Len (AR10. Fields. Item(2))= 0IfJ = 0 To 2J = 0 Theni = 0 To List11. ListCount - 1= Addstroka & List11. List(i) &»;»J = 0 Then Addstroka = Mid (Addstroka, 1, (Len(Addstroka) - 1))J = 1 Then= Addstroka & «|» & Calendar2.value & «|»J = 2 Theni = 0 To List11. ListCount - 1= Addstroka & List4. List(i) &»;»J = 2 Then= Mid (Addstroka, 1, (Len(Addstroka) - 1))= Addstroka & «|»IfIf= AR10. Fields. Item(3)= Mid (ControlWork, 1, 1)ControlWorkCash = «0» Then= Mid (ControlWork, 3, 1)ControlWorkCash = «1» Then= «0-2»ProgramADO.SQLExecOnly («UPDATE Сервис_ТО SET» & «Учет= '» & ControlWork & «' WHERE ID_Покупатель=» & DataCombo1. BoundText)ProgramADO.SQLExecOnly («UPDATE Сервис_ТО SET» & «Работа1= '» & Addstroka & «' WHERE ID_Покупатель=» & DataCombo1. BoundText)IfControlWorkCash = «2» Then= «0-3»ProgramADO.SQLExecOnly («UPDATE Сервис_ТО SET» & «Учет= '» & ControlWork & «' WHERE ID_Покупатель=» & DataCombo1. BoundText)ProgramADO.SQLExecOnly («UPDATE Сервис_ТО SET» & «Работа2= '» & Addstroka & «' WHERE ID_Покупатель=» & DataCombo1. BoundText)IfControlWorkCash = «3» Then= «1-1»ProgramADO.SQLExecOnly («UPDATE Сервис_ТО SET» & «Учет= '» & ControlWork & «' WHERE ID_Покупатель=» & DataCombo1. BoundText)ProgramADO.SQLExecOnly («UPDATE Сервис_ТО SET» & «Работа3= '» & Addstroka & «' WHERE ID_Покупатель=» & DataCombo1. BoundText)IfControlWorkCash = «1» Then= Mid (ControlWork, 3, 1)ControlWorkCash = «1» Then= «1-2»ProgramADO.SQLExecOnly («UPDATE Сервис_ТО SET» & «Учет= '» & ControlWork & «' WHERE ID_Покупатель=» & DataCombo1. BoundText)ProgramADO.SQLExecOnly («UPDATE Сервис_ТО SET» & «Работа1= '» & Addstroka & «' WHERE ID_Покупатель=» & DataCombo1. BoundText)IfControlWorkCash = «2» Then= «1-3»ProgramADO.SQLExecOnly («UPDATE Сервис_ТО SET» & «Учет= '» & ControlWork & «' WHERE ID_Покупатель=» & DataCombo1. BoundText)ProgramADO.SQLExecOnly («UPDATE Сервис_ТО SET» & «Работа2= '» & Addstroka & «' WHERE ID_Покупатель=» & DataCombo1. BoundText)IfControlWorkCash = «3» Then= «1-1»ProgramADO.SQLExecOnly («UPDATE Сервис_ТО SET» & «Учет= '» & ControlWork & «' WHERE ID_Покупатель=» & DataCombo1. BoundText)ProgramADO.SQLExecOnly («UPDATE Сервис_ТО SET» & «Работа3= '» & Addstroka & «' WHERE ID_Покупатель=» & DataCombo1. BoundText)IfIf. Visible = True: Label78. Caption = Round((1000000 * Rnd)). Visible = True: Label79. Caption = Calendar2.value. Visible = True: Label80. Caption = Round((1000 + 31 * Rnd)). Visible = True: Label83. Caption = Text23. Texti = 1 To List11. ListCount(i).Caption = List11. List (i - 1)(i).Caption = List4. List (i - 1)(i).Visible = True(i).Visible = True. Text = «»: Calendar2.value = Date: Frame7. Enabled = False: Text24. Text = «»: Text22. Text = «»: List11. Clear: List4. Clear: Text23. Text = «»: Check3.value = 0: Option7.value = True. Enabled = False. Enabled = True. Enabled = TrueSubSub Command25_Click()Label39. Visible = True Then Exit SubTipZamGRM As IntegerCost As Longotv As IntegerOption1.value = False And Option2.value = False And Option3.value = False Then«Выберите тип замены ГРМ», vbInformationSubIfOption1.value = True Then= 1Option2.value = True Then= 2Option3.value = True Then= 3If= UBound (AddonData(WorkForCar).arrServices())= AddonData(WorkForCar).arrServices(i).iMoneyCase TipZamGRM1= Round (Val(Cost))2= Round (Val(Cost) + (Val (Cost / 2)))3= Round (Val(Cost) + Val(Cost))Select. Text = Round(Cost)= MsgBox («Подтвердить выбранный тип замены ГРМ?», vbYesNo + vbQuestion)otv = 7 Then Exit Subdlina As Longdlina2 As LongmaxDlina As LongICorrect As Integeri = 0 To List11. ListCount - 1= ICorrect + 2= Len (List11. List(i))= Len (List4. List(i))= maxDlina + dlina + dlina2= maxDlina + 13maxDlina + Len (Text25. Text) + Len (Check3. Caption) + ICorrect >= 250 Then

MsgBox «Количество дополнительных работ превышает допустимую норму по предоставляемым услугам. Последующие дополнительные работы возможно будет выполнить обратившись к Нам в другое время. Подробности у администратора.», vbInformationSubIfi = 0 To List11. ListCountCheck3. Caption = List11. List(i) Then«Данная работа уже запланирована!!!», vbInformation

Exit SubIf. AddItem (Check3. Caption). AddItem (Cost). Text = Val (Text23. Text) + Val(Cost)SubSub Command24_Click()DataCombo1. Text = «» Then«Клиент не выбран», vbInformationSubIf. Top = 3600. Left = 3000. Visible = Trueac As New ADODB. Connectionwork1Mas(2): Dim work2Mas(2): Dim work3Mas(2)Work1 As String: Dim Work2 As String: Dim Work3 As StringAR11 As New ADODB. Recordset 'Содержит 3 поля Работа (1,2,3), Учет-для Сам ТО

ac. Open «Provider=Microsoft. Jet.OLEDB.4.0; Data Source=C:\Диплом\db1.mdb; Mode=ReadWrite|Share Deny None; Persist Security Info=False»AR11 = ac. Execute («SELECT Работа1, Работа2, Работа3, Учет FROM Сервис_ТО WHERE ID_покупатель =» & IDClient)AR11. Fields. Item(0) <> «» And AR11. Fields. Item(0) <> «Null» Then Work1 = AR11. Fields. Item(0) Else Work1 = «»AR11. Fields. Item(1) <> «» And AR11. Fields. Item(1) <> «Null» Then Work2 = AR11. Fields. Item(1) Else Work2 = «»AR11. Fields. Item(2) <> «» And AR11. Fields. Item(2) <> «Null» Then Work3 = AR11. Fields. Item(2) Else Work3 = «»Case AR11. Fields. Item(3)«0-1»

MsgBox «Данный клиент не обращался для выполнения работ», vbInformation

Exit Sub«0-2»Mas(0) = Split (Work1, «|»). AddItem (work1Mas(0) (1))Mas(1) = Split (work1Mas(0) (0),»;»)Mas(2) = Split (work1Mas(0) (2),»;»)i = 0 To UBound (work1Mas(1)). AddItem (work1Mas(1) (i)). AddItem (work1Mas(2) (i))«0-3»Mas(0) = Split (Work1, «|»)Mas(0) = Split (Work2, «|»)Mas(1) = Split (work2Mas(0) (0),»;»)Mas(2) = Split (work2Mas(0) (2),»;»)i = 0 To UBound (work2Mas(1)). AddItem (work2Mas(1) (i)). AddItem (work2Mas(2) (i))i = 0 Then List10. AddItem (work2Mas(0) (1)) Else List10. AddItem («»). AddItem (work1Mas(0) (1))Mas(1) = Split (work1Mas(0) (0),»;»)Mas(2) = Split (work1Mas(0) (2),»;»)i = 0 To UBound (work1Mas(1)). AddItem (work1Mas(1) (i)). AddItem (work1Mas(2) (i))«1-1»Mas(0) = Split (Work1, «|»)Mas(0) = Split (Work2, «|»)Mas(0) = Split (Work3, «|»)Mas(1) = Split (work3Mas(0) (0),»;»)Mas(2) = Split (work3Mas(0) (2),»;»)i = 0 To UBound (work3Mas(1)). AddItem (work3Mas(1) (i)). AddItem (work3Mas(2) (i))i = 0 Then List10. AddItem (work3Mas(0) (1)) Else List10. AddItem («»)Mas(1) = Split (work2Mas(0) (0),»;»)Mas(2) = Split (work2Mas(0) (2),»;»)i = 0 To UBound (work2Mas(1)). AddItem (work2Mas(1) (i)). AddItem (work2Mas(2) (i))i = 0 Then List10. AddItem (work2Mas(0) (1)) Else List10. AddItem («»). AddItem (work1Mas(0) (1))Mas(1) = Split (work1Mas(0) (0),»;»)Mas(2) = Split (work1Mas(0) (2),»;»)i = 0 To UBound (work1Mas(1)). AddItem (work1Mas(1) (i)). AddItem (work1Mas(2) (i))«1-2»Mas(0) = Split (Work1, «|»)Mas(0) = Split (Work2, «|»)Mas(0) = Split (Work3, «|»)Mas(1) = Split (work1Mas(0) (0),»;»)Mas(2) = Split (work1Mas(0) (2),»;»)i = 0 To UBound (work1Mas(1)). AddItem (work1Mas(1) (i)). AddItem (work1Mas(2) (i))i = 0 Then List10. AddItem (work1Mas(0) (1)) Else List10. AddItem («»)Mas(1) = Split (work3Mas(0) (0),»;»)Mas(2) = Split (work3Mas(0) (2),»;»)i = 0 To UBound (work3Mas(1)). AddItem (work3Mas(1) (i)). AddItem (work3Mas(2) (i))i = 0 Then List10. AddItem (work3Mas(0) (1)) Else List10. AddItem («»)Mas(1) = Split (work2Mas(0) (0),»;»)Mas(2) = Split (work2Mas(0) (2),»;»)i = 0 To UBound (work2Mas(1)). AddItem (work2Mas(1) (i)). AddItem (work2Mas(2) (i))i = 0 Then List10. AddItem (work2Mas(0) (1)) Else List10. AddItemMas(1) = Split (work3Mas(0) (0),»;»)Mas(2) = Split (work3Mas(0) (2),»;»)i = 0 To UBound (work3Mas(1)). AddItem (work3Mas(1) (i)). AddItem (work3Mas(2) (i))i = 0 Then List10. AddItem (work3Mas(0) (1)) Else List10. AddItem («»)SelectSubSub Command21_Click(). Enabled = False. Label78. Visible = False: AdmTO. Label79. Visible = False: AdmTO. Label80. Visible = False: AdmTO. Label83. Visible = False. Label78. Visible = False: PrintWorkSamTO. Label79. Visible = False: PrintWorkSamTO. Label80. Visible = False: PrintWorkSamTO. Label83. Visible = Falsei = 1 To 10. Label81 (i).Visible = False: AdmTO. Label82 (i).Visible = False. Label81 (i).Visible = False: PrintWorkSamTO. Label82 (i).Visible = False. Enabled = False. Enabled = TrueSub

Похожие работы на - Программа 'Автомастерская'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!