Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Общие положения (дерево функций и сценарий диалога)

Содержание:

Введение

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

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

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

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

- активное участие человека-специалиста — в системе автоматизации обработки информации и принятия управленческих решений;

- интерпретация информационной деятельности как одного из видов бизнеса;

- наличие научно обоснованной программно-технической, технологической платформы, реализуемой на конкретном экономическом объекте;

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

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

- постановка и решение конкретных практических задач в области управления с учетом заданных критериев эффективности.

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

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

Цель курсовой работы – проектирование реализации операций бизнес-процесса «Управление запасами». В качестве объекта исследования принимаем управление запасами на примере информационной системы учета автозапчастей на предприятии сервисного обслуживания.

Для достижения цели необходимо решить ряд задач:

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

1 глава. Аналитическая часть.

1.1. Выбор комплекса задач автоматизации.

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

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

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

Минимизация логистических затрат на предприятии

Автоматизация учета заказов

Интеграция процессов на предприятии

Внедрение средств

автоматизации автосервиса

Повышение точности планирования и согласованности процессов

Стандартизация бизнес-процессов СТО

Повышение операционной прозрачности

Повышение эффективности работы за счет потока документов в системе (сокращение времени

обработки операций, оперативное принятие решений)

Внедрение автоматического контроля наличия комплектующих

Повышение эффективности работы за счет автоматизации операций ввода/вывода данных

Автоматизация получения отчетов

Повышение скорости и качества обслуживания конечного потребителя

Рис. 1. Дерево целей предприятия

Основными подцелями создания автоматизированной системы являются:

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

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

Существующие в настоящее время решения построения ИС следующие:

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

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

Недостатки покупки готовой ИС:

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

Преимущества покупки готовой ИС:

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

На рынке программных средств существуют типовые проектные решения для автоматизации работы ремонтного предприятия. Одним из таких решений является программный продукт «1С:Предприятие 8. ТОИР Управление ремонтами и обслуживанием оборудования» разработанный российской компанией ЗАО «1С». Это решение может использоваться как на отдельных предприятиях, так и в производственных холдингах для обеспечения унификации производственного и регламентированного учета ремонтов.

Существенным недостатком продукта от компании «1С» является его стоимость. Цена одной конфигурации 172 000 рублей, клиентская лицензия на одно рабочее место стоит 9 900 рублей.

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

Необходимо отметить, что в программном продукте «1С:Предприятие 8. ТОИР Управление ремонтами и обслуживанием оборудования» существует лишний функционал, который не будет использоваться, но за который придется доплачивать, а так же отсутствует ряд управленческих отчетов, используемых на предприятии. Таким образом, появляется необходимость дорабатывать типовой продукт от компании «1С», что опять же приведет к дополнительным расходам.

Тестирование программного продукта «1С:Предприятие 8. ТОИР Управление ремонтами и обслуживанием оборудования» показало, что приложение создает огромную нагрузку на вычислительные мощности сервера (Intel Dual-Core Xeon 5030 2.67 GHz, память 2G DDR2 667 MHz), что может привести к простою системы или ее полному зависанию.

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

Было принято решение о создании собственной автоматизированной системы обработки заказов на ремонт технических средств. Рассмотрим преимущества и недостатки разработки ИС своими силами.

Преимущества:

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

Недостатки разработки ИС своими силами:

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

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

1.2. Характеристика существующих бизнес – процессов.

Описание бизнес-процессов организации на текущий момент

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

После выполнения заказа мастер оповещает об этом бригадира. Бригадир принимает работу и, если нет замечаний, отмечает на бланке на выполнение завершение заказа, информирует менеджера о выполнении заказа и сдаёт бланк. Менеджер отмечает в бланке заказа выполнение, в книге "Отчёты заработной платы" прописывает сумму от выполненного заказа мастеру, отдаёт бланк выполненного заказа секретарю. Когда клиент приходит за своим заказом, секретарь по чеку заказчика ищет бланк выполненного заказа. Если такой имеется, то клиента направляют к бригадиру с бланком заказа. Бригадир сдаёт работу клиенту. Если клиент не имеет претензий, он забирает свой автомобиль и ставит на бланке заказа в графе замечания "нет замечаний". После этого бригадир возвращает бланк секретарю, секретарь складывает в архив. Если же клиент не удовлетворён работой, то заказ ставится на учёт "Доработка" и возвращается мастеру. После выполнения доработки заказ проходит тот же путь, что и после первого выполнения.

Рис. 2. Автономные подсистемы обслуживания

Для лучшего понимания все эти процессы можно отобразить схемой (Рис. 3):

Рис. 3. Краткая схема бизнес-процессов на СТО

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

1.3. Характеристика документооборота, возникающего при решении задачи.

Характеристика документооборота, возникающего при решении задачи управления запасами СТО, имеет следующий вид:

Укрупненная схема информационных потоков

Заявка

Заказчик

Снабжение

Склад товаров

Менеджер

Поставщики

Счет к оплате

Платежи Заявка на склад

Товары

Заявка на поставку

Товары

Заявка

Платежи Товар на

товар

Рис. 4. Схема информационных потоков предприятия

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

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

Оформленная заявка поступает в отдел снабжения, где все заявки сортируются в зависимости от товара, от сроков поставки и т.д. и определяется примерная дата поступления товара на склад.

Менеджер, имея эти данные, уточняет сроки доставки товара с клиентом.

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

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

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

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

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

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

Детальная схема по конкретному человеку

Рис. 5. Схема информационных потоков по отделу Выписка

Рассмотрим информационные потоки отдела Выписка (рис. 5).

При поступлении товаров от поставщиков заводится приходная накладная.

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

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

В случае пересортицы товаров или излишков оформляются внутренние документы – списание или оприходование.

На основании имеющихся данных можно сформировать ряд отчетов.

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

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

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

Основные бизнес-процессы организации не изменяются, то есть функциональные модели «To-Вe» и «As-Is» отображают одни и те же бизнес-процессы, автоматизируемые проектируемой системой обработки заказов на ремонт технических средств.

Функциональная модель процессов обработки заказов на ремонт автосервисе «как должно быть» разработанная по методологии IDEF0 средствами AllFusion Process Modeler r7 представлена на Рис. 6. Необходимо отметить, что «механизмом» в блоке составления отчетов добавится автоматизированная система обработки заказов на ремонт технических средств.

Рис. 6. Схема бизнес процессов автосервиса

Рис. 7. Детализация бизнес процесса автосервиса

В качестве основного был выбран бизнес-процесс «Организация учета процедур оформления услуг», а также «Учет и складирование товаров». Результатом исследования является графическое отображение распределения функций между сотрудниками. В процессе исследования не выявлено дублирования функций, так же не выявлено скрытых ресурсов организации. По итогам анализа данного бизнес-процесса были построены модели по методологии IDEF0.

Диаграммы потоков данных (Data flow diagram, DFD) используются для описания документооборота и обработки информации. Подобно IDEF0, DFD представляет моделируемую систему как сеть связанных между собой работ. Их можно использовать как дополнение к модели IDEF0 для более наглядного отображения текущих операций документооборота в корпоративных системах обработки информации. Главная цель DFD - показать, как каждая работа преобразует свои входные данные в выходные, а также выявить отношения между этими работами.

Любая DFD-диаграмма может содержать работы, внешние сущности, стрелки (потоки данных) и хранилища данных.

Рис. 8. Диаграмма потоков данных «Клиентская база предприятия»

Рис. 9. Детализация диаграммы потоков данных

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

для автоматизации задач, связанных с учетом товара на складе и разрабатывается база данных «Автосервис».

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

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

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

1.4. Обоснование проектных решений по информационному обеспечению.

В качестве сетевой операционной системы на сервере планируется использование Windows Server 2016.

Локальная вычислительная сеть позволяет предприятию автосервиса решать следующий перечень основных задач:

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

Каждое рабочее место оборудовано следующим образом:

Логическая структура используемой сети автосервиса представлена на Рис. 10.

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

Рис. 10. Логическая структура компьютерной сети автосервиса

1.5. Обоснование проектных решений по программному обеспечению.

Borland C++ Builder является средой быстрой разработки приложений. В основе систем быстрой разработки (RAD-систем, Rapid Application Development — среда быстрой paзpa6oтки приложений) лежит технология визуального проектирования и событийного программирования, суть которой заключается в том, что среда разработки берет на себя большую часть работы по генерации кода программы, остав­ляя программисту работу по конструированию диалоговых окон и написа­нию функций обработки событий. Производительность программиста при использовании RAD систем существенно увеличивается [1].

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

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

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

Скорость визуальной разработки

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

Конструирование по способу "drag-and-drop " позволяет создавать приложение простым перетаскиванием захваченных мышью визуальных компонентов из Палитры на форму приложения. Инспектор объектов предоставляет возможность оперировать со свойствами и событиями компонентов, автоматически создавая заготовки функций обработки событий, которые наполняются кодом и редактируются в процессе разработки [13].

Свойства, методы и события - это именно те элементы языка, которые обеспечивают быструю разработку приложений в рамках объектно-ориентированного программирования. «Свойства» позволяют легко устанавливать разнообразные характеристики объектов. «Методы» производят определенные, иногда довольно сложные, операции над объектом. «События» связывают воздействия пользователя на объекты с кодами реакции на эти воздействия. События могут возникать при таких специфических изменениях состояния объектов как обновление данных в интерфейсных элементах доступа к базам данных. Работая совместно, свойства, методы и события образуют среду RAD (Rapid Application Development) быстрого и интуитивного программирования надежных приложений для Windows.

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

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

Исходные тексты Библиотеки Визуальных Компонентов облегчают разработку новых компонентов на базе готовых примеров.

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

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

В состав интерфейса С++ Builder входят:

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

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

C++Builder реализует визуальную методику построения приложений посредством выбора из Палитры компонентов нужных управляющих элементов. С каждым компонентом (например, кнопкой) связаны свойства, которые меняют ее вид и поведение. Любой компонент может вызывать серию событий, которые определяют его реакцию на различные воздействия [16].

2 глава. Проектная часть.

2.1. Информационная модель и её описание.

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

Составление классификаторов выполняется в два этапа: первый этап – классификация информации, второй – кодирование. После присвоения кодов создается классификатор – систематизированный свод однородных наименований и их кодовых обозначений.

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

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

К кодам предъявляется ряд требований: они должны охватывать все номенклатуры, подлежащие кодированию, быть едиными для разных задач внутри одного экономического объекта; отличаться стабильностью, иметь резерв свободных номером (но не излишний, так как это может привести к увеличению значности кода); длина кодового обозначения должна проектироваться минимальной. Значность кодов данной номенклатуры является одинаковой для всех позиций. Назначение кодов заключается в подведении итогов по всем группировочным признакам и их печати в сводных таблицах. Они находят широкое применение при выполнении таких процедур обработки, как поиск, хранение, выборка информации: значительно сокращают время ее передачи по каналам связи. В настоящее время на предприятие «Автосервис» не используются классификаторы и справочники. Проанализировав входящие и исходящие документы, было принято решение произвести разработку следующий основных справочников:

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

– справочник поставщиков, клиентов.

2.2. Характеристика нормативно-справочной, входной и оперативной информации.

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

Обоснование состава задач АРМ.

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

К основным функциям склада можно отнести следующие:

1. Преобразование производственного ассортимента в потребительский в соответствии со спросом – создание необходимого ассортимента для выполнения заказов клиентов.

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

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

  • подготовка товаров для продажи (фасовка продукции, заполнение контейнеров, распаковка и т.д.);
  • проверка функционирования приборов и оборудования, монтаж;

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

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

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

База данных должна предоставлять пользователю возможность:

  • Вводить новый товар, указывая следующие параметры:
  • Наименование;
  • Количество;
  • Цену;
  • Дату поступления.

2.3. Характеристика результатной информации.

Требования к функциональным характеристикам:

1. Ведение базы данных автозапчастей (производители, номенклатура).

2. Ведение справочника совместимости с авто других марок (взаимозаменяемость).

3. Формирование списка поставщиков запчастей.

4. Определение надежности поставщиков (на сколько быстро выполняется заказ конкретным поставщиком).

5. Отслеживание динамики цен на запчасти.

6. Контроль сроков выполнения заказов (сроки доставки заказанных запчастей)

7. Формирование электронных форм отчетности по выполненным заказам (с помощью экспорта результатов построения отчетов в внешний файл формата Excel).

8. Ведение базы данных зарегистрированных (постоянных) клиентов.

Главное меню

Автозапчасти

Справочники

Поставщики

Клиенты

Марки автомобилей

Категории запчастей

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

Интернет-каталог

Ремонты и ТО

Рис. 11. Планирование основных пунктов меню приложения

2.4. Общие положения (дерево функций и сценарий диалога).

Общий вид диаграммы действий бизнес-процесса "Запасы – Склад автосервиса" представлен на Рис. 12.

Диаграмма действий бизнес-процесса "Запасы - Склад (приходование)"

Рис. 12. Декомпозиция функциональной модели

Рассмотрим дерево выполняемых функций системы учета деятельности оператора информационной системы автосервиса (Рис. 13). Основные варианты использования:

- добавление новых записей;

- удаление записей;

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

- выполнение авторизации при входе в программу.

На Рис. 14 приведена диаграмма состояний работы системы в последовательном режиме выполнения стандартных операций.

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

Рис. 13. Диаграмма вариантов использования

Рис. 14. Диаграмма состояний работы системы в целом

2.5. Характеристика базы данных.

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

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

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

Разработанная концептуальная модель.

Рис. 15. Концептуальная модель предметной области

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

Исходная ER-диаграмма предметной области представлена на Рис. 16.

Рис. 16. ER-диаграмма предметной области

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

Таблица 1 – Структура формы «Автозапчасти (Avtoz)»

№ п/п

Имя поля

Тип данных

Описание

1

Kod

Счетчик

Код товара

2

Naimenov

Текстовый (80)

Наименование автозапчасти

3

Proizvod

Текстовый (80)

Производитель

4

Garant

Текстовый (30)

Сведения о гарантии

5

Prim

Текстовый (150)

Примечания

Таблица 2 – Структура формы «Заказы (Zakaz)»

№ п/п

Имя поля

Тип данных

Описание

1

Kod

Счетчик

Код записи

2

Nomer

Текстовый (80)

Номер заказа

3

Data_form

Дата/время

Дата формирования

4

Data_wait

Дата/время

Дата ожидания

5

Data_dost

Дата/время

Дата доставки

6

Kod_post

Числовой

Код поставщика

7

Kod_klient

Числовой

Код клиента

8

Kod_avtoz

Числовой

Код автозапчасти

9

Prim

Текстовый

Примечания

10

Cena

Действительный

Цена заказа

Таблица 3 – Структура формы «Поставщики предприятия (Postavch)»

№ п/п

Имя поля

Тип данных

Описание

1

Kod

Счетчик

Код поставщика

2

Naimenov

Текстовый

Название предприятия

3

Adres

Текстовый

Адрес регистрации

4

Kontakt

Текстовый

Контактная информация

Таблица 4 – Структура формы «Клиент (Klient)»

№ п/п

Имя поля

Тип данных

Описание

1

Kod

Счетчик

Код клиента

2

Naimenov

Текстовый

Наименование клиента

3

Adres

Текстовый

Адрес

4

Telphone

Текстовый

Контактная информация

Таблица 5 – Структура формы «Сервисные данные (Servis)»

№ п/п

Имя поля

Тип данных

Описание

1

Kod

Счетчик

Код записи

2

Kod_avto

Числовой

Код авто

3

TO1

Числовой

Норма ТО1

4

TO2

Числовой

Норма ТО2

5

Probeg

Числовой

Данные о пробеге авто

6

KodKlient

Числовой

Код клиента

7

Polomki

Текстовый

Описание поломок

8

Date1

Дата/время

Дата сервисного обслуживания

Таблица 6 – Структура формы «Типы транспортных средств (Auto)»

№ п/п

Имя поля

Тип данных

Описание

1

Kod

Счетчик

Код записи

2

Proizvod

Текстовый

Производитель авто

3

Model

Текстовый

Название марки автомобиля

4

Specific

Текстовый

Спецификация автомобиля

Таблица 7 – Структура формы «Сервисное обслуживание (Servis)»

№ п/п

Имя поля

Тип данных

Описание

1

Kod

Счетчик

Код записи

2

Auto

Текстовый

Марка авто

3

TO1

Числовой

Данные по техобслуживанию (1)

4

TO2

Числовой

Данные по техобслуживанию (2)

Probeg

Числовой

Зафиксированный пробег авто

KodKlient

Числовой

Код клиента

Polomki

Текстовый

Описание поломок

Date1

Дата

Дата прохождения ТО1

Date2

Дата

Дата прохождения ТО2

Внешний вид созданных связей между ключевыми полями таблиц в среде MS SQL Server имеет следующий вид:

Рис. 17. Датологическая модель созданной базы данных

2.6. Структурная схема пакета (дерево вызова программных модулей).

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

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

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

Так же график содержит информацию о ценах на расходные материалы и стоимость нормо-часов.

Рис. 18. Контекстная диаграмма функциональной модели

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

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

Рис. 19. Декомпозиция контекстной диаграммы функциональной модели

Рис. 20. Диаграмма потоков данных

2.7 Описание программных модулей.

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

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

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

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

- Project1.bpr – главный файл проекта;

- Project1.cpp – исходный текст файла проекта;

- Project1.exe – выполняемый код файла проекта;

- Project1.obj – объектный файл проекта;

- Project1.res – файл содержащий используемые ресурсы проекта;

- Unit1.cpp – главный текст программного модуля;

- Unit1.dfm – файл с описанием формы главного модуля;

- Unit2.dfm – файл с описанием формы справочника поставщиков;

- Unit3.dfm – файл с описанием формы справочника клиентов;

- Unit4.dfm – файл с описанием формы режима ведения совместимости автозапчастей;

- Unit5.dfm – файл с описанием формы каталога автозапчастей;

- Unit6.dfm – файл формы определения надежности выбранного поставщика;

- Unit7.dfm – файл выполнения режима отслеживания динамики цен на запчасти;

- Unit8.dfm – файл выполнения экспорта данных в формат Excel-документа.

- Unit1..8.h – заголовочные файлы форм проекта;

- Unit1..8.obj – объектные файлы программных модулей.

Рис. 21. Структура проекта созданной программы

2.8. Контрольный пример реализации проекта и его описание.

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

В БД хранятся сведения о владельцах автомобилей: ФИО, адрес, марка автомобиля, № госрегистрации; характеристики автомобилей: год выпуска, изготовитель, перечень устраненных неисправностей; ФИО работника станции и время устранения каж­дой неисправности. Возможно введение в БД сведения о новых владельцах и новых неисправностей.

Рис. 22. Главное окно приложения поддержки деятельности кладовщика

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

Рис. 23. Структура справочника категорий автозапчастей

Рис. 24. Структура справочника моделей автомобилей

Рис. 25. Структура справочника клиентов(в режиме поиска данных)

Рис. 26. Структура справочника совместимости автозапчастей

Рис. 27. Режим выполнения анализа эксплуатации автомобилей

Рис. 28. Справочник данных о сервисном обслуживании клиентов

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

Рис. 29. Доступ к интернет-каталогу запчастей

Рис. 30. Отображение каталога поставщиков предприятия

Редактирование данных каталога выполняется после перехода нажатия на кнопку «Справочник каталогов», в котором существует возможность редактировать названия, Интернет-ссылки и рейтинги каталогов:

Рис. 31. Отображение каталога поставщиков предприятия

Заключение

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

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

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

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

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

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

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

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

Список литературы

  1. Borland Builder C++. Освой самостоятельно. – СПб.: Питер, 2005. – 702 с.
  2. Агеев М.И., Алик В.П., Марков И.Ю. Библиотека алгоритмов: справочное пособие. Вып. 3. – М: Сов. Радио, 1978. – 128 с.
  3. Архангельский А.Я. C++Builder. Работа с документами Excel. – М.: Бином-Пресс, 2009. – 480 с.
  4. Беднарский, В.В. Техобслуживание и ремонт автомобилей. – Ростов-н/Д.: Феникс, 2008. – 448 с.
  5. Вальпа О. Borland C++ Builder. Экспресс-курс (+CD). – М.: БХВ-Петербург, 2006. – 224 с.
  6. Карпов Б., Баранова Т. С++. Специальный справочник. – 2-е изд. – СПб.: Питер, 2005. – 381 с.
  7. Кетков Ю., Кетков А. Практика программирования: Visual Basic, C++ Builder, Delphi. Самоучитель. – СПб.: БХВ-Петербург, 2002. – 464 с.
  8. Кормен Т, Лейзер Ч. Алгоритмы. Построение и анализ. – М.: Наука, 2000. – 896 с.
  9. Красиков И.В., Красикова И.Е. Алгоритмы. Просто как дважды два. – М.: Эксмо, 2006. – 256 с.
  10. Культин Н.Б. С/С++ в задачах и примерах. – СПб.: БХВ-Петербург, 2006. – 288 с.
  11. Культин Н.Б. Самоучитель С++ Builder. – СПб.: БХВ-Петербург, 2005. – 320 с.
  12. Окулов С.М. Программирование в алгоритмах. – М.: БИНОМ. Лаборатория знаний, 2002. – 341 с.
  13. Пахомов Б. C/C++ и Borland C++ Builder для начинающих. – М.: БХВ-Петербург, 2005. – 630 с.
  14. Пахомов Б. Interbase и С++Builder на примерах (+CD-ROM). – М.: БХВ-Петербург, 2006. – 288 с.
  15. Федоренко Ю.П. Алгоритмы и программы на C++ Builder (+ CD-ROM). – М.: ДМК Пресс, 2010. – 544 с.
  16. Холзнер С. Visual C++ 6. Учебный курс. – СПб.: Питер, 2006. – 570 с.

Приложения

Листинг программного кода проекта:

//---------------------------------------------------------------------------

#include <vcl.h>

#pragma hdrstop

#include "Unit8.h"

//#include "Excel_2K_SRVR.h"

#include "utilcls.h"

#include "sysvari.h"

#include "ComObj.hpp"

#include "Unit1.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm8 *Form8;

//---------------------------------------------------------------------------

__fastcall TForm8::TForm8(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TForm8::BitBtn1Click(TObject *Sender)

{

Variant app = CreateOleObject("Excel.Application");

Variant wbs = app.OlePropertyGet("Workbooks");

//Variant wb = wbs.OleFunction("Open", "E:\\Файлы \\test.xls");

Variant wb = wbs.OleFunction("Open", "test.xls");

Variant wss = wb.OlePropertyGet("Worksheets");

Variant ws = wss.OlePropertyGet("Item", 1);

//выгрузка данных

ADOQuery1->First();

int r,c;

r=1;

c=0;

while(!ADOQuery1->Eof)

{

Variant cell = ws.OlePropertyGet("Cells", r + 1, c + 1);

cell.OlePropertySet("Value",WideString(ADOQuery1->FieldByName("Nomer")->AsString));

cell = ws.OlePropertyGet("Cells", r + 1, c + 2);

cell.OlePropertySet("Value", WideString(ADOQuery1->FieldByName("Data_form")->AsString));

cell = ws.OlePropertyGet("Cells", r + 1, c + 3);

cell.OlePropertySet("Value", WideString(ADOQuery1->FieldByName("Data_wait")->AsString));

cell = ws.OlePropertyGet("Cells", r + 1, c + 4);

cell.OlePropertySet("Value", WideString(ADOQuery1->FieldByName("Data_dost")->AsString));

cell = ws.OlePropertyGet("Cells", r + 1, c + 5);

cell.OlePropertySet("Value", WideString(ADOQuery1->FieldByName("postavch.naimenov")->AsString));

cell = ws.OlePropertyGet("Cells", r + 1, c + 6);

cell.OlePropertySet("Value", WideString(ADOQuery1->FieldByName("klient.naimenov")->AsString));

cell = ws.OlePropertyGet("Cells", r + 1, c + 7);

cell.OlePropertySet("Value", WideString(ADOQuery1->FieldByName("avtoz.naimenov")->AsString));

cell = ws.OlePropertyGet("Cells", r + 1, c + 8);

cell.OlePropertySet("Value", WideString(ADOQuery1->FieldByName("cena")->AsString));

r++;

ADOQuery1->Next();

}

wb.OleProcedure("Save");

app.OleProcedure("Quit");

ShowMessage("Запись в Excel выполнено успешно!");

}

//---------------------------------------------------------------------------

void __fastcall TForm8::FormCreate(TObject *Sender)

{

DBGrid1->Columns->Items[0]->Width=30;

DBGrid1->Columns->Items[1]->Width=40;

DBGrid1->Columns->Items[2]->Width=65;

DBGrid1->Columns->Items[3]->Width=65;

DBGrid1->Columns->Items[4]->Width=65;

DBGrid1->Columns->Items[5]->Width=200;

DBGrid1->Columns->Items[6]->Width=150;

DBGrid1->Columns->Items[7]->Width=200;

DBGrid1->Columns->Items[8]->Width=100;

}

//---------------------------------------------------------------------------

void __fastcall TForm8::Button1Click(TObject *Sender)

{

ADOQuery1->Close();

ADOQuery1->Open();

ADOQuery1->ExecSQL();

DBGrid1->Columns->Items[0]->Width=30;

DBGrid1->Columns->Items[1]->Width=40;

DBGrid1->Columns->Items[2]->Width=65;

DBGrid1->Columns->Items[3]->Width=65;

DBGrid1->Columns->Items[4]->Width=65;

DBGrid1->Columns->Items[5]->Width=200;

DBGrid1->Columns->Items[6]->Width=150;

DBGrid1->Columns->Items[7]->Width=200;

DBGrid1->Columns->Items[8]->Width=100;

}

//---------------------------------------------------------------------------

void __fastcall TForm8::FormShow(TObject *Sender)

{

DBGrid1->DataSource->DataSet->Fields->Fields[0]->Visible=false;

}

//---------------------------------------------------------------------------

void __fastcall TForm10::Button1Click(TObject *Sender)

{

AnsiString str,FIO;

Memo1->Clear();

Form9->ADOTable1->First();

for(int i=1;i<=Form9->ADOTable1->RecordCount;i++)

{

//поиск клиента

FIO="";

Form1->ADOTable3->First();

for(int j=1;j<=Form1->ADOTable3->RecordCount;j++)

{

if(Form1->ADOTable3->FieldByName("Kod")->AsInteger==Form9->ADOTable1->FieldByName("KodKlient")->AsInteger)

FIO=Form1->ADOTable3->FieldByName("Naimenov")->AsString;

Form1->ADOTable3->Next();

}

if(((CheckBox1->Checked)&&(Form9->ADOTable1->FieldByName("Auto")->AsString==ComboBox1->Text))||

((CheckBox2->Checked)&&(FIO==ComboBox2->Text))||

((CheckBox3->Checked)&&(Form9->ADOTable1->FieldByName("Date1")->AsString.Pos(DateTimePicker1->Date.DateString())>0))||

((!CheckBox1->Checked)&&(!CheckBox2->Checked)&&(!CheckBox3->Checked))

)

//главное условие отбора

{

Memo1->Lines->Add("--------------------------------------------------------");

Memo1->Lines->Add("ФИО клиента: "+FIO);

Memo1->Lines->Add("Последнее обращение клиента: "+Form9->ADOTable1->FieldByName("Date1")->AsString);

if((Form9->ADOTable1->FieldByName("Probeg")->AsFloat-Form9->ADOTable1->FieldByName("lT1")->AsFloat)>Form9->ADOTable1->FieldByName("TO1")->AsFloat)

{

//нужно на ТО1

Memo1->Lines->Add("Превышение пробега ТО1!! Необходим сервис! // "+FloatToStr(Form9->ADOTable1->FieldByName("lT1")->AsFloat-Form9->ADOTable1->FieldByName("Probeg")->AsFloat));

}

else

{

//до ТО1 осталось

Memo1->Lines->Add("До прохождения ТО1 осталось: "+FloatToStr(Form9->ADOTable1->FieldByName("TO1")->AsFloat-(Form9->ADOTable1->FieldByName("Probeg")->AsFloat-Form9->ADOTable1->FieldByName("lT1")->AsFloat))+ " км");

}

if((Form9->ADOTable1->FieldByName("Probeg")->AsFloat-Form9->ADOTable1->FieldByName("lT2")->AsFloat)>Form9->ADOTable1->FieldByName("TO2")->AsFloat)

{

//нужно на ТО2

Memo1->Lines->Add("Превышение пробега ТО2! Необходим сервис! // "+FloatToStr(Form9->ADOTable1->FieldByName("Probeg")->AsFloat-Form9->ADOTable1->FieldByName("lT2")->AsFloat));

}

else

{

//до ТО2 осталось

Memo1->Lines->Add("До прохождения ТО2 осталось: "+FloatToStr(Form9->ADOTable1->FieldByName("TO2")->AsFloat-(Form9->ADOTable1->FieldByName("Probeg")->AsFloat-Form9->ADOTable1->FieldByName("lT2")->AsFloat))+ " км");

}

Memo1->Lines->Add("Записи о поломках: "+Form9->ADOTable1->FieldByName("Polomki")->AsString);

} //условие отбора

else {

}

Form9->ADOTable1->Next();

}

}

//---------------------------------------------------------------------------

void __fastcall TForm10::CheckBox3Click(TObject *Sender)

{

if (DateTimePicker1->Enabled) {

DateTimePicker1->Enabled=false;

}

else DateTimePicker1->Enabled=true;

}

//---------------------------------------------------------------------------

void __fastcall TForm10::CheckBox2Click(TObject *Sender)

{

if (ComboBox2->Enabled) {

ComboBox2->Enabled=false;

}

else ComboBox2->Enabled=true;

}

//---------------------------------------------------------------------------

void __fastcall TForm10::CheckBox1Click(TObject *Sender)

{

if (ComboBox1->Enabled) {

ComboBox1->Enabled=false;

}

else ComboBox1->Enabled=true;

}

//---------------------------------------------------------------------------

void __fastcall TForm10::FormShow(TObject *Sender)

{

ComboBox1->Clear();

ADOTable1->First();

for(int i=1;i<=ADOTable1->RecordCount;i++)

{

ComboBox1->Items->Add(ADOTable1->FieldByName("Model")->AsString);

ADOTable1->Next();

}

ComboBox2->Clear();

Form1->ADOTable3->First();

for(int i=1;i<= Form1->ADOTable3->RecordCount;i++)

{

ComboBox2->Items->Add( Form1->ADOTable3->FieldByName("Naimenov")->AsString);

Form1->ADOTable3->Next();

}

}

//---------------------------------------------------------------------------