Справочная система продавца–консультанта компьютерного салона

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 14.03.2010
Размер файла 3,0 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Оглавление

Введение

1. Основная часть

1.1 Назначение и область применения

1.2 Технические характеристики

1.2.1 Постановка задачи

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

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

1.2.4 Описание и обоснование выбора состава технических и программных средств

1.2.5 Описание алгоритма программы

1.2.6 Описание функциональных точек

2. Руководство оператора

2.1 Назначение программы

2.2 Условия выполнения программы
2.3 Выполнение программы
2.4 Сообщения оператору
3. Ожидаемые технико-экономические показатели
Заключение
Источники, использованные при разработке

ВВЕДЕНИЕ

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

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

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

Программа имеет интуитивно понятный и эргономичный интерфейс, несложный при овладении навыками работы с программой, что сокращает времени обучения работы с программой.

При разработке ИС решаются следующие задачи:

- Исследование предметной области;

- Выделение сущностей;

- Установка связей между сущностями;

- Построение диаграммы потоков данных, концептуальной и датологической модели;

- Выбор средства реализации клиентской части ИС;

- Разработка базы данных ИС в Microsoft Office Access;

1. ОСНОВНАЯ ЧАСТЬ

1.1 Назначение и область применения

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

Основными целями разработки системы могут служить:

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

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

- снижение трудоемкости и количества ошибок при решении задачи.

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

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

- расчет стоимости покупки;

- принятие на работу новых продавцов;

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

- изменение данных продавца;

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

- ввод и сохранение данных о гарантийном талоне;

- вывод гарантийного талона на печать;

- вывод информации о проданном товаре на печать;

- вывод информации о заканчивающемся товаре на печать;

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

- регистрация поступившего товара на складе;

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

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

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

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

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

- окно ввода серийного номера на заказанный товар;

2. выдача справочной информации:

- справка о работе программы;

3. отчеты, формируемые в результате выполнения программы:

- формирование гарантийного талона;

- формирование списка проданного товара;

- формирование списка заканчивающегося товара.

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

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

В должностные обязанности директора входит:

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

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

- разработку необходимой методической документации;

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

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

Типовая схема компьютерного салона представлена в виде схемы (Рис. 1)

Рисунок 1. Типовая схема организации.

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

Подразделения компьютерного салона, с которыми взаимодействует директор (Таблица 1)

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

Подразделение фирмы

Информационные процессы

Отдел кадров

- передача информации о сотрудниках;

Отдел продаж

- передача информации о осуществленных продажах;

Бухгалтерия

- передача информации о рабочих днях сотрудников

- начисление заработной платы

- учет материальных ценностей на складе

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

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

- контроль поступивших на склад товаров;

- подготовка статистической информации о продажах по требованиям директора;

- регистрация клиентов обратившихся в салон;

- заполнение гарантийных талонов;

- создание итоговой документации по продажам.

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

- вся информация находится и хранится в текстовых файлах формата Word и в электронных таблицах Excel;

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

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

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

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

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

- выбор продавца;

- поиск нужного товара;

- формирование списка товаров;

- оформление документов клиента;

- оформление продажи;

- выдача гарантийного талона;

В каждом этапе происходят информационные процессы, которые сведены в таблицу:

Информационные процессы этапов представлены в виде таблицы (Таблица 2).

Таблица 2. Информационные процессы этапов

Этап

Информационные процессы

1. выбор продавца

- ввод данных продавца происходит при входе в программу;

2. поиск нужного товара

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

3. формирование списка товаров

- вывод выбранных товаров в отдельную таблицу;

4. оформление документов клиента

- ввод личных данных клиента, или выбор из уже имеющихся клиентов;

- сохранение информации в базу данных;

5. оформление продажи

- выбор количества продаваемого товара;

- ввод серийного номера товара

- изменение количества товара на складе;

6. выдача гарантийного талона

- формирование гарантийного талона;

- выдача гарантийного талона;

1.2 Технические характеристики

1.2.1 Постановка задачи

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

Расчёт скидки на товар - выполнен по формуле:

D = а*в-( а*в*с / 100)

где:

а - цена товара;

в - количество товара;

с - скидка на товар, в процентах;

D- цена товара со скидкой.

Расчет стоимости товаров одного типа:

S = K*C

где:

S - сумма товара;

K - количество товара;

C - цена 1 единицы товара;

Расчет общей стоимости всех купленных товаров :

S1 = C1 + С2 + Сn

где:

S1 - сумма покупки;

Сn - стоимость товаров одного вида;

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

Продавцах

Товаре

В начале вводится информация о продавцах с помощью формы регистрация. Форма "регистрация" представлена в виде рисунка (Рис.2)

Рисунок 2. Форма "Регистрация"

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

Рисунок 3. Форма "Главная форма программы"

Первичная информация о продавцах хранится в таблице "Продавец" базы данных. И имеет следующие поля:

- № продавца

- Фамилия

- Имя

- Отчество

- Разряд

- Паспортные данные

- Адрес

- Телефон

- Образование

- Пароль

Первичная информация о товаре хранится в таблице "Товар" базы данных. И имеет следующие поля:

- № товара

- Название

- ФирмаИзготовитель

- Модель

- Характеристики

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

Данные о перечне форм входной информации находятся в таблице (Таблица 3).

Таблица 3. Перечень форм ввода входной информации

№ п/п

Название формы проекта

Номер рисунка

1.

Главная форма программы

Главная форма программы

Рисунок 4

Рисунок 5

Рисунок 4. Форма "Главная Фома программы" с видом информации о клиентах

Рисунок 5. Форма "Главная Фома программы" с видом информации о товаре

Данные о перечне форм формирования выходной информации находятся в таблице (Таблица 4).

Таблица 4. Перечень форм формирования выходной информации.

№ п/п

Название формы проекта

Номер рисунка

1.

Главная форма программы

Серийный номер

Рисунок 6

Рисунок 7

Рисунок 6. Форма "Главная Фома программы" с видом информации о выбранном товаре

Рисунок 7. Форма "Серийный номер"

Данные о перечне форм формирования отчетов находятся (Таблица 5).

Таблица 5. Перечень форм формирования отчетов.

№ п/п

Название формы проекта

Номер рисунка

1.

Гарантийный талон

Рисунок 8

2.

Список заканчивающегося товара

Рисунок 9

3.

Отчет о проданном товаре

Рисунок 10

Рисунок 8. Форма "Гарантийный талон"

Рисунок 9. Форма "Список заканчивающегося товара"

Рисунок 10. Форма "Отчет о проданном товаре"

Схема взаимосвязи программных модулей и информационных хранилищ (Рис. 11).

Рисунок 11. Схема взаимосвязи программных модулей и информационных хранилищ

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

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

- Покупатель;

- Продавец.

Накопителями данных являются:

- Покупатель;

- Покупка товара;

- Заказ;

- Продавец;

- Продажа;

- Товар.

Информационная система разбита на пять логических подсистем:

- система заказов;

- система продаж;

- система регистрации продавцов;

- система регистрации покупателей;

- система регистрации товара.

Потоки данных представлены в виде схемы и подробного словесного описания (Рис. 12)

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

Запрос на регистрацию:

1. Запрос на регистрацию;

2. Обращение к базе данных на наличие продавца;

3. Ответ на запрос;

4. Разрешение входа в систему;

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

5. Запрос на регистрацию товара;

6. Запрос продавца на регистрацию товара;

7. Добавление товара в базу данных;

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

9. Информация продавцу о добавлении товара в базу данных;

10. Отчёт по заканчивающемуся товару;

Запрос на наличие товара:

11. Запрос покупателя к продавцу на продажу товара;

12. Запрос продавца к системе продаж на продажу товара;

13. Запрос к базе данных на продажу товара;

14. Получение системой продаж информации о товаре;

15. Получение продавцом информации о товаре;

16. Получение покупателем информации о товаре;

Выбор и покупка:

17. Запрос покупателя к продавцу на выбор товара;

18. Запрос продавца к системе продаж на выбор товара;

19. Запрос системой продаж на выбор товара;

20. Получение системой продаж информации о выбранном товаре;

21. Получение продавцом информации о выбранном товаре;

Регистрация заказчика и покупка:

22. Предложение регистрации покупателю;

23. Регистрационные данные покупателя;

24. Заполнение информации о покупателе;

25. Регистрация покупки и покупателя;

26. Отчёт о регистрации покупателя;

27. Отчёт о регистрации покупки;

28. Отчёт покупателю о покупке товара.

Запрос на оформление заказа:

29. Запрос покупателя к продавцу на заказ товара;

30. Запрос продавца к системе заказов на заказ товара;

31. Запрос системой заказов на добавление заказа;

32. Получение системой заказов информации о добавлении заказа;

33. Получение продавцом информации от системы заказов о добавленном заказе;

34. Получение покупателем информации от продавца о заказе.

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

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

1. Покупатель:

- № покупателя;

- Фамилия;

- Имя;

- Отчество;

- Адрес;

- Телефон.

2. Заказ:

- Код;

- №товара;

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

- Стоимость;

- Льготы;

- Итого.

3. Продавец:

- № продавца;

- Фамилия;

- Имя;

- Отчество;

- Разряд;

- Паспортные данные;

- Адрес;

- Телефон;

- Образование.

4. Продажа:

- № продажи;

- № покупателя;

- № продавца;

- № товара;

- Дата;

- Цена покупки;

- Серийный номер;

- Количество;

- Скидка %;

- Общая стоимость;

- Гарантийный талон.

5. Товар:

- № товара;

- Название;

- ФирмаИзготовитель;

- Характеристики;

- Модель;

- Цена;

- Гарантия;

- Количество.

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

Рисунок 13. Инфологическая модель базы данных

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

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

1.2.4 Описание и обоснование выбора состава технических и программных средств

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

Сама информационная система реализована в среде разработки приложений Delphi. В основе идеологии Delphi лежит технология визуального проектирования и методология объектно-ориентированного программирования. Для представления программ в Delphi используется разработанный Borland язык Object Pascal, в основе которого лежит Turbo Pascal.

В основе Delphi лежит концепция быстрого создания приложений (RAD -Rapid Application Development). Основной составляющей среды быстрого создания приложений является технология, получившая название Two Ways Tools. Это значит, что при размещении или изменении компонента в какой-либо форме, соответствующая программа автоматически дополняется и модифицируется. И наоборот, все изменения, которые вносятся в программу при разработке приложения, автоматически отражаются на функциональных свойствах компонентов формы.

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

Схемы загрузки форм представлены в виде рисунка (Рис.15).

Схема загрузки формы регистрация

Выбор кнопки "Продолжить".

Выбор кнопки "Товар".

Выбор кнопки "Добавить запись".

Выбор кнопки "Выход".

1.2.5 Описание алгоритма программы

Алгоритм работы программы представлен в виде блок-схемы, которая демонстрирует кнопки вызова форм. После запуска файла "Kompsalon.exe" на экране монитора выводится форма "Регистрация". Сначала на ней появляется заставка, с описанием темы дипломного проекта и информация о разработчике данного программного продукта, но через 5 секунд она пропадает. После чего появляются компоненты регистрации продавцов.

На форме "Регистрация" находится две кнопки:

"Выход", в соответствии с названием эта кнопка приводит к закрытию приложения;

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

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

Сначала на ней появляются кнопки "Справка" и "Выход", а также раздел "Выбор таблицы", в котором, по сути объединены кнопки: "Продажа товара", "Товар", "Сотрудники", "Клиенты", "Продажи".

При нажатии на "Справка" - открывается форма "Справка". Здесь непосредственно представлено описание о разработчике программы и о работе с программой.

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

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

"Сотрудники", здесь предоставляется возможность редактировать, добавлять и удалять информацию о продавцах;

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

"Клиенты", позволяет редактировать, добавлять и удалять информацию о клиентах (покупателях товара);

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

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

Кнопка "Отменить продажу" приводит к отмене продажи, то есть происходит отмена продажи и очистка списка выбранного товара.

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

Далее появляется кнопка "Продать товар". При нажатии на неё происходит продажа выбранного товара. Появляется сообщение, которое говорит о том, что товар продан и выводится гарантийный талон.

Схема вызова форм программы представлена на рисунке (Рис.16).

Рисунок 16. Схема вызова форм программы

1.2.6 Описание функциональных точек

В проекте используется 8 форм, 29 невизуальных компонентов и 20 основных процедур обработки событий, которые в совокупности предназначены для автоматизации обслуживания клиентов компьютерного салона. Все невизуальные компоненты находятся на форме "DM". Форма "DM" представлена на рисунке (Рис. 17).

Каждый из этих компонентов выполняет свою определённую функцию. Например, компоненты с названиями: Tovar1, Prodavez, Klienti, Prodazi, ADOZacaz, ADOGart, FirmIzg, Reg1, ADOQTovar, ADOQSotrydniki, ADOQKlienti, ADOQZaprosProdazi, ADOQZViv, ADOQZacTovar, ADOQGaranti - используются для подключения таблиц из базы данных "Комп салон".

Компоненты: DSTovar1, DSKlienti, DSZacaz, DSProdavez, DSProdazi, DSGart, FirmIzg1, DSTovar, DSSotrydniki, DSQklienti, DSZaprosProdazi, DSViv, DSZacTovar - используются для вывода информации из базы данных в таблицы.

Рисунок 17. Форма "DM"

Reg2.pas

1. procedure Edit1KeyPress - процедура перехода между полями ввода по нажатию Enter

procedure TReg.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

if key=#13 then //нажатие Enter

edit2.SetFocus;//Переход на следующую строку при нажатии Enter

end;

2. procedure TReg.BitBtn2Click - процедура нажатия на кнопку продолжить

procedure TReg.BitBtn2Click(Sender: TObject);

var f:integer;

begin

if (edit1.text='') or (edit2.text='') or (edit3.text='') or (edit6.text='')then

begin //вывод соответствующего сообщния

messagedlg('ПОЖАЛУЙСТО ЗАПОЛНИТЕ ВСЕ ПОЛЯ!!! ',mterror,[mbok],0);

end else

begin

for f:=1 to DM.Reg1.RecordCount do

begin

if (edit1.text<>DM.Reg1.FieldByName('Фамилия').AsString) or (edit2.text<>DM.Reg1.FieldByName('Имя').AsString) or (edit3.text<>DM.Reg1.FieldByName('Отчество').AsString) or (edit6.text<>DM.Reg1.FieldByName('Пароль').AsString) then

begin

DM.Reg1.Next;//Переход к следующеё строке

Label1.Visible:=False;//Скрытие надписи

Label6.Visible:=True;//Появление надписи

end

else

begin

reg.Hide;//Закрытие формы reg

Prodat11.Show;//Открытие формы Prodat11

end;

3. procedure TReg.Timer1Timer - процедура скрытия заставки

procedure TReg.Timer1Timer(Sender: TObject);

begin

Panel1.Visible:=False;//Скрытие панели

Reg.Caption:='Регистрация';//Задание заголовка формы

Label1.Visible:=True;//Появление надписи

Label2.Visible:=True;//Появление надписи

Label3.Visible:=True;//Появление надписи

Label4.Visible:=True;//Появление надписи

Label5.Visible:=True;//Появление надписи

end;

4. procedure TReg.FormClose - процедура закрытия программы

procedure TReg.FormClose(Sender: TObject; var Action: TCloseAction);

begin //Вывод соответствующего сообщения

if MessageDlg('Вы хотите выйти из программы?',

mtConfirmation, [mbYes, mbNo], 0) = mrYes then

Application.Terminate;//Закрытие приложения

end;

sernom.pas

5. procedure TSerNom.BitBtn2Click - Процедура отказа от продажи товара

procedure TSerNom.BitBtn2Click(Sender: TObject);

begin

Prodat11.Enabled:=True;

Prodat11.Refresh;//Обновление формы Prodat11

sernom1.Edit1.Clear;//Очистка текстового поля

sernom1.Hide;//Закрытие формы sernom1

dm.ADOZacaz.First;//Переход к первой записи в таблице ADOZacaz

Prodat11.Refresh;//Обновление формы Prodat11

begin

if dm.ADOZacaz.FieldByName('№ товара').AsString<>'' then

begin

Prodat11.DBGrid12.Visible:=True;//Появление компонента

Prodat11.DBGrid13.Visible:=True;//Появление компонента

Prodat11.Panel6.Visible:=True;//Появление компонента

End;

Prodat11.Button16.Click;//Нажатие кнопки

end;

Prodat11.Button16.Click;//Нажатие кнопки

end;

6. procedure TSerNom.BitBtn1Click - Процедура сохранения серийного номера, и пересчета скидки на товар

procedure TSerNom.BitBtn1Click(Sender: TObject);

var m1, m2, m3,po,w,p,p2,a,d:Integer;

begin

begin

if Prodat11.Edit24.Text='' then

begin

Prodat11.Edit24.Text:='0';//Занесение информации в текстовое поле

end;

end;

Prodat11.Enabled:=True;

begin

if Edit1.Text='' then

begin//Вывод соответствующего сообщения

ShowMessage('Пожалуйсто введите серийный номер');

end

else

begin

begin

d:=StrToInt(Prodat11.Edit24.Text);//Задание значения переменной

if d>100 then

begin

Prodat11.Edit24.Text:='100';//Занесение информации в текстовое поле

end;

end;

Prodat11.GroupBox7.Enabled:=False;

Prodat11.Button2.Enabled:=False;

Prodat11.Button3.Enabled:=False;

Prodat11.Button4.Enabled:=False;

Prodat11.Button5.Enabled:=False;

Prodat11.Button6.Enabled:=False;

Prodat11.CheckBox2.Checked:=True;//Изменение значения компонента

dm.ADOZacaz.Insert;//Добавление строки в таблицу ADOZacaz

dm.ADOZacaz.FieldByName('№ товара').AsString:=Prodat11.DBEdit1.Text;//Занесение информации в таблицу ADOZacaz

dm.ADOZacaz.FieldByName('Идентифик_номер').AsString:=sernom1.Edit1.Text;//Занесение информации в таблицу ADOZacaz

dm.ADOZacaz.FieldByName('Стоимость').AsString:=Prodat11.DBEdit6.Text;//Занесение информации в таблицу ADOZacaz

dm.ADOZacaz.FieldByName('Льготы').AsString:=Prodat11.Edit24.Text;//Занесение информации в таблицу ADOZacaz

m1:=0;//Обнуление переменной

m1:=StrToInt(dm.ADOZacaz.FieldByName('Стоимость').AsString);

m2:=1;//Задание значения переменной

m3:=0;//Обнуление переменной

m3:=StrToInt(dm.ADOZacaz.FieldByName('Льготы').AsString);//Задание значения переменной

begin

if m3=0 then

begin

po:=m1*m2;//Задание значения переменной

end

else

begin

a:=m1*m2;//Задание значения переменной

po:=a-(a*m3 div 100);//Задание значения переменной

end;

end;

dm.ADOZacaz.FieldByName('Итого').AsString:=IntToStr(po);//Занесение информации в таблицу ADOZacaz

dm.ADOZacaz.Post;//Сохранение занесённой информации в таблице ADOZacaz

Prodat11.colvtov:=Prodat11.colvtov-1;//Задание значения переменной

Prodat11.BitBtn53.Click;//Нажатие кнопки

Prodat11.Button16.Click;//Нажатие кнопки

Prodat11.BitBtn7.Visible:=True;//Появление кнопки

Prodat11.Button16.Click;//Нажатие кнопки

Prodat11.BitBtn9.Visible:=True;//Появление кнопки

Prodat11.SpeedButton1.Visible:=true;//Появление кнопки

Prodat11.SpeedButton2.Visible:=true;//Появление кнопки

Prodat11.SpeedButton3.Visible:=true;//Появление кнопки

Prodat11.SpeedButton4.Visible:=true;//Появление кнопки

Prodat11.GroupBox6.Visible:=True;//Появление компонента

Prodat11.DBGrid12.Visible:=True;//Появление компонента

Prodat11.DBGrid13.Visible:=True;//Появление компонента

Prodat11.GroupBox8.Visible:=True;//Появление компонента

Prodat11.Button16.Click;//Нажатие кнопки

Prodat11.Panel6.Visible:=True;//Появление панели

Prodat11.colpoc:=Prodat11.colpoc+1;//Задание значения переменной

sernom1.Label2.Caption:='Введите Серийный номер '+ IntToStr(Prodat11.colpoc);//Задание надписи

end;

end;

begin

if Prodat11.colvtov<>0 then

begin

sernom1.Edit1.Clear;//Очистка текстового поля

sernom1.Edit1.SetFocus;//перемещение курсора в текстовое поле

BitBtn3.Visible:=False;//Появление кнопки

Prodat11.Enabled:=False;//Форма активна//Форма неактивна

end

else

begin

sernom1.Hide;//Закрытие формы sernom1

Prodat11.Enabled:=True;//Форма неактивна

Prodat11.Panel6.Visible:=True;//Появление панели

Prodat11.GroupBox8.Visible:=True;//Появление компонента

Prodat11.BitBtn9.Visible:=true;//Появление кнопки

Prodat11.BitBtn7.Visible:=true;//Появление кнопки

Prodat11.Panel6.Visible:=True;//Появление панели

Prodat11.Button16.Click;//Нажатие кнопки

end;

Prodat11.Button16.Click;//Нажатие кнопки

end;

Prodat11.Button16.Click;//Нажатие кнопки

end;

7. procedure TSerNom.FormShow - Процедура слежения за количеством товара на складе, и количеством выбранного товара

procedure TSerNom.FormShow(Sender: TObject);

var ng,mk:integer;

begin

sernom1.Label3.Visible:=True;//Появление надписи

sernom1.Label4.Visible:=True;//Появление надписи

Prodat11.Enabled:=False;//Фома активна

sernom1.Edit1.Text:='';//Вывод текста

sernom1.Edit2.Text:='1';//Вывод текста

sernom1.Label2.Caption:='Введите количество товара:';

Prodat11.colpoc:=2;//задание значения переменной

Label3.Caption:='Общее количество товара = '+Prodat11.DBEdit8.Text;//Задание надписи

mk:=0;//Обнуление переменной

begin

for ng:=1 to DM.ADOZacaz.RecordCount do

begin

if dm.ADOZacaz.FieldByName('№ товара').AsString=Prodat11.DBEdit1.Text then

begin

mk:=mk+1;//Увеличение счётчика переменной

end;

dm.ADOZacaz.Next;//Переход на следующую строку в таблице ADOZacaz

end;

kj:=StrToInt(Prodat11.DBEdit8.Text)-mk;//Задание значения переменной

Label4.Caption:='Количество уже выбранного товара = '+IntToStr(mk)+', доступно = '+ IntToStr(kj);//Занесение текста в надпись

end;

end;

8. procedure TSerNom.Edit2KeyPress - Ограничение вводимой информаци

procedure TSerNom.Edit2KeyPress(Sender: TObject; var Key: Char);

begin

case key of

#13 : ;//При нажатие Enter перенос курсора

#8 : ;//Стереть символ слева Backspace

#145: ;//Верхний опостроф

'0'..'9': ;//Только англиские булвы

' ' : //Пробел

else key:=chr(0);//Иначе ничего

end;

end;

9. procedure TProdat11.BitBtn6Click - Выбор товара и запрос на применение установленной скидки

procedure TProdat11.BitBtn6Click(Sender: TObject);

var z,z1,a1,a2,v:integer;

begin

begin

if Prodat11.Edit24.Text='' then

begin

Prodat11.Edit24.Text:='0';//Занесение информации в текстовое поле

end;

end;

begin

if Prodat11.Edit24.Text<>'0' then

begin //Вывод сообщения

if MessageDlg('Оставить скидку на товар?',

mtConfirmation, [mbYes, mbNo], 0) = mrNo then

Prodat11.Edit24.Text:='0';//Занесение информации в текстовое поле

end;

end;

dm.ADOZacaz.First;//Переход к первой записи в таблице ADOZacaz

a1:=0;//Обнуление переменной

a2:=0;//Обнуление переменной

begin

for z1:=1 to DM.ADOZacaz.RecordCount do

begin

if dm.ADOZacaz.FieldByName('№ товара').AsString=Prodat11.DBEdit1.Text then

begin

end;

dm.ADOZacaz.Next;//Переход к следующей записи в таблице ADOZacaz

end;

end;

begin

a2:=StrToInt(Prodat11.DBEdit8.Text);//Присвоение значения переменной

a2:=a2-a1;//Присвоение значения переменной

if a2=0 then

begin

ShowMessage('Тoвара на складе нет');//Вывод сообщения

end

else

begin

begin

sernom1.Show;//Открытие формы sernom1

sernom1.Label1.Visible:=True;//Появление надписи

sernom1.Edit1.Visible:=True;//Появление текстового поля

sernom1.Label2.Visible:=False;//Скрытие надписи

sernom1.Edit2.Visible:=False;//Скрытие текстового поля

sernom1.Edit1.SetFocus;//Курсор в текстовом поле

Prodat11.colvtov:=1;//Присвоение значения переменной

sernom1.BitBtn3.Visible:=True;//Появление кнопки

end;

begin

sernom1.Show;//Открытие формы sernom1

sernom1.Label1.Visible:=False;//Скрытие надписи

sernom1.Edit1.Visible:=False;//Скрытие текстового поля

sernom1.Label2.Visible:=True;//Появление надписи

sernom1.Edit2.Visible:=True;//Появление текстового поля

sernom1.BitBtn1.Enabled:=True;

sernom1.Edit2.SetFocus;//Курсор в текстовом поле

sernom1.BitBtn3.Visible:=True;//Появление кнопки

end;

end;

end;

end;

10. procedure TProdat11.BitBtn5Click - Процедура сохранения информации о осуществленной продаже и вывод гарантийного талона на печать

procedure TProdat11.BitBtn5Click(Sender: TObject);

var q,t,c,v,z,n,d,fghj:integer;

begin

if Edit78.Text='' then

begin

DM.Pokypatel.Last;//Переход к последней записи в базе данных

DM.Pokypatel.Insert;//Добавление строки в базу данных

DM.Pokypatel.FieldByName('Фамилия').AsString:=Prodat11.Edit6.Text;//Занесение информации в базу данных

DM.Pokypatel.FieldByName('Имя').AsString:=Prodat11.Edit7.Text;//Занесение информации в базу данных

DM.Pokypatel.FieldByName('Отчество').AsString:=Prodat11.Edit8.Text;//Занесение информации в базу данных

DM.Pokypatel.FieldByName('Адрес').AsString:=Prodat11.Edit9.Text;//Занесение информации в базу данных

DM.Pokypatel.FieldByName('Телефон').AsString:=Prodat11.Edit10.Text;//Занесение информации в базу данных

DM.Pokypatel.Post;//Сохранение занесённой информации

Edit12.Text:=IntToStr(DM.Pokypatel.FieldValues['№ покупателя']);

DM.Pokypatel.Refresh;//Обновление таблицы

end;

aaa:=aaa+1;

dm.ADOZacaz.First;//Переход к первой записи в таблице ADOZacaz

for q:=1 to dm.ADOZacaz.RecordCount do

begin

DM.Prodazi.Last;//Переход к последней записи в базе данных

DM.Prodazi.Insert;//Добавление строки в базу данных

begin

if Edit78.Text='' then

begin

DM.Pokypatel.Last;//Переход к последней записи в базе данных

DM.Prodazi.FieldByName('№ покупателя').AsString:=DM.Pokypatel.FieldValues['№ покупателя'];//Занесение информации в базу данных

end

else

begin

DM.Prodazi.FieldByName('№ покупателя').AsString:=Edit78.Text;//Занесение информации в базу данных

end;

end;

DM.Prodazi.FieldByName('№ продавца').AsString:=Prodat11.Edit11.Text;//Занесение информации в базу данных

DM.Prodazi.FieldByName('№ товара').AsString:=dm.ADOZacaz.FieldValues['№ товара'];//Занесение информации в базу данных

DM.Prodazi.FieldByName('Дата').AsString:=DateTimeToStr(Date);//Занесение информации в базу данных

DM.Prodazi.FieldByName('Цена покупки').AsString:=dm.ADOZacaz.FieldValues['Стоимость'];//Занесение информации в базу данных

DM.Prodazi.FieldByName('Количество').AsString:='1';

DM.Prodazi.FieldByName('Серийный номер').AsString:=dm.ADOZacaz.FieldValues['Идентифик_номер'];

DM.Prodazi.FieldByName('Скидка%').AsString:=dm.ADOZacaz.FieldValues['Льготы'];

DM.Prodazi.FieldByName('Общая стоимость').AsString:=dm.ADOZacaz.FieldValues['Итого'];//Занесение информации в базу данных

DM.Prodazi.FieldByName('Гарантийный талон').AsString:=IntToStr(aaa);

DM.Prodazi.Post;//Сохранение занесённой информации

dm.ADOZacaz.Next;//Переход на следующую строчку

DM.Tovar1.First;//Переход к первой записи

end;

begin

dm.ADOZacaz.First;//Переход к первой записи

for n:=1 to dm.ADOZacaz.RecordCount do

begin

DM.Tovar1.First;//Переход к первой записи

for d:=1 to DM.Tovar1.RecordCount do

begin

if (dm.ADOZacaz.FieldByName('№ товара').AsString<>dm.Tovar1.FieldByName('№ товара').AsString) then

begin

DM.Tovar1.Next;//Переход к следующеё строке

end

else

begin

DM.Tovar1.Edit;//Редактирование записи в таблице Tovar1

DM.Tovar1.FieldByName('Количество').AsString:=IntToStr(StrToInt(DM.Tovar1.FieldByName('Количество').AsString)-1);

DM.Tovar1.Post;//Сохранение занесённой информации

dm.Tovar1.Next;//Переход к следующеё строке

end;

end;

dm.ADOZacaz.Next;//Переход к следующеё строке

end;

end;

GroupBox2.Visible:=False;//Скрытие компонента

GroupBox1.Visible:=false;//Скрытие компонента

DBGrid1.Visible:=True;//Появление таблицы

BitBtn1.Visible:=True;//Появление кнопки

BitBtn2.Visible:=True;//Появление кнопки

BitBtn3.Visible:=True;//Появление кнопки

BitBtn4.Visible:=True;//Появление кнопки

BitBtn6.Visible:=True;//Появление кнопки

BitBtn7.Visible:=True;//Появление кнопки

Label1.Visible:=True;//Появление текста

Label2.Visible:=True;//Появление текста

Label3.Visible:=True;//Появление текста

Label4.Visible:=True;//Появление текста

Label5.Visible:=True;//Появление текста

Label6.Visible:=True;//Появление текста

Label7.Visible:=True;//Появление текста

Label8.Visible:=True;//Появление текста

DBEdit1.Visible:=True;//Появление текстового поля

DBEdit2.Visible:=True;//Появление текстового поля

DBEdit3.Visible:=True;//Появление текстового поля

DBEdit4.Visible:=True;//Появление текстового поля

DBEdit5.Visible:=True;//Появление текстового поля

DBEdit6.Visible:=True;//Появление текстового поля

DBEdit7.Visible:=True;//Появление текстового поля

DBEdit8.Visible:=True;//Появление текстового поля

ShowMessage('Товар продан!');

Edit24.Text:='0';//Занесение информации в текстовое поле

Panel6.Visible:=False;//Скрытие компонента

BitBtn7.Visible:=False;//Скрытие кнопки

BitBtn9.Visible:=false;//Скрытие кнопки

dm.ADOQGaranti.Parameters[0].Value:=dm.Prodazi.FieldValues['Гарантийный талон'];//Задание значения параметра

dm.ADOQGaranti.Close;//Закрытие таблицы ADOQGaranti

dm.ADOQGaranti.Open;//Открытие таблицы ADOQGaranti

dm.ADOQGaranti.Active:=False;//Обновление информации в таблице ADOQGaranti

dm.ADOQGaranti.Active:=True;//Обновление информации в таблице ADOQGaranti

begin

garanti1.QRLabel3.Caption:=inttostr(aaa);

garanti1.QuickRep1.Refresh;//Обновление компонента

garanti1.QuickRep1.Preview;//Вывод на просмотр

end;

begin

for z:=1 to dm.ADOZacaz.RecordCount do

begin

dm.ADOZacaz.Delete;//Удаление записи в таблице ADOZacaz

dm.ADOZacaz.Next;//Переход к следующей записи в таблице ADOZacaz

end;

end;

GroupBox7.Enabled:=True;

Button2.Enabled:=True;//Запрещение нажатия на кнопку

Button1.Enabled:=True;//Запрещение нажатия на кнопку

Button3.Enabled:=True;//Запрещение нажатия на кнопку

Button4.Enabled:=True;//Запрещение нажатия на кнопку

Button5.Enabled:=True;//Запрещение нажатия на кнопку

Button6.Enabled:=True;//Запрещение нажатия на кнопку

dm.ADOQTovar.Close;//Закрытие таблицы ADOQTovar

dm.ADOQTovar.Open;//Открытие таблицы ADOQTovar

Button10.Click;//Нажатие кнопки

dm.ADOQZaprosProdazi.Close;//Закрытие таблицы ADOQZaprosProdazi

dm.ADOQZaprosProdazi.Open;//Открытие таблицы ADOQZaprosProdazi

Button13.Click;//Нажатие кнопки

GroupBox9.Visible:=True;//Появление компонента

Edit1.Text:='';//Вывод текста

Edit2.Text:='';//Вывод текста

Edit3.Text:='';//Вывод текста

Edit4.Text:=' - - - - - - - - - - - -';//Вывод текста

Edit5.Text:='';//Вывод текста

end;

11. procedure TProdat11.BitBtn9Click - Процедура отказа от продажи и удаления всей временной информации

procedure TProdat11.BitBtn9Click(Sender: TObject);

var i:integer;

begin

Prodat11.GroupBox7.Enabled:=True;

Prodat11.Button2.Enabled:=True;

Prodat11.Button3.Enabled:=True;

Prodat11.Button4.Enabled:=True;

Prodat11.Button5.Enabled:=True;

Prodat11.Button6.Enabled:=True;

Prodat11.Panel6.Visible:=False;//Скрытие компонента

dm.ADOQZViv.SQL.Clear;//Очистка запроса в таблице ADOQZViv

CheckBox2.Checked:=False;//Изменение значения компонента

for i:=1 to dm.ADOZacaz.RecordCount do

begin

dm.ADOZacaz.Delete;//Удаление записи из таблицы ADOZacaz

dm.ADOZacaz.Next;//Переход на следующую строку в таблице ADOZacaz

end;

Prodat11.BitBtn53.Click;//Нажатие кнопки

BitBtn7.Visible:=False;//Скрытие кнопки

BitBtn9.Visible:=False;//Скрытие кнопки

GroupBox6.Visible:=False;//Скрытие компонента

Prodat11.DBGrid12.Enabled:=False;

Prodat11.DBGrid13.Enabled:=False;

Prodat11.SpeedButton1.Visible:=False;//Скрытие компонента

Prodat11.SpeedButton2.Visible:=False;//Скрытие компонента

Prodat11.SpeedButton3.Visible:=False;//Скрытие компонента

Prodat11.SpeedButton4.Visible:=False;//Скрытие компонента

Prodat11.GroupBox8.Visible:=False;//Скрытие компонента

Prodat11.GroupBox7.Enabled:=True;

Prodat11.Button2.Enabled:=True;

Prodat11.Button3.Enabled:=True;

Prodat11.Button4.Enabled:=True;

Prodat11.Button5.Enabled:=True;

Prodat11.Button6.Enabled:=True;

end;

12. procedure TProdat11.BitBtn12Click - добавление информации о сотрудниках в базу данных

procedure TProdat11.BitBtn12Click(Sender: TObject);

begin

Button21.Visible:=false;

GroupBox9.Visible:=False;//Скрытие компонента

CheckBox2.Checked:=True;//Изменение значения компонента

GroupBox7.Visible:=False;//Скрытие компонента

BitBtn11.Visible:=False;//Скрытие кнопки

DBComboBox2.Enabled:=True;

BitBtn13.Visible:=False;//Скрытие кнопки

BitBtn14.Visible:=False;//Скрытие кнопки

BitBtn15.Visible:=False;//Скрытие кнопки

BitBtn12.Visible:=False;//Скрытие кнопки

BitBtn18.Visible:=False;//Скрытие кнопки

BitBtn16.Visible:=False;//Скрытие кнопки

BitBtn17.Visible:=False;//Скрытие кнопки

BitBtn19.Visible:=False;//Скрытие кнопки

BitBtn21.Visible:=True;//Появление кнопки

BitBtn20.Visible:=True;//Появление кнопки

DBEdit9.ReadOnly:=False;//Разрешение изменения записи

DBComboBox1.ReadOnly:=False;//Разрешение изменения записи

DBEdit11.ReadOnly:=False;//Разрешение изменения записи

DBEdit12.ReadOnly:=False;//Разрешение изменения записи

DBEdit13.ReadOnly:=False;//Разрешение изменения записи

DBEdit14.ReadOnly:=False;//Разрешение изменения записи

DBEdit15.ReadOnly:=False;//Разрешение изменения записи

DBEdit9.SetFocus;//Курсор находится в данном текстовом поле

DBNavigator2.BtnClick(nbInsert);//Добавление строки в базу данных

Button15.Click;//Нажатие кнопки

BitBtn20.Enabled:=False;

BitBtn19.Enabled:=False;

end;

13. procedure TProdat11.BitBtn14Click - Изменение информации о сотрудниках

procedure TProdat11.BitBtn14Click(Sender: TObject);

begin

Button21.Visible:=False;

GroupBox9.Visible:=False;//Скрытие компонента

CheckBox2.Checked:=True;//Изменение значения компонента

GroupBox7.Visible:=False;//Скрытие компонента

BitBtn11.Visible:=False;//Скрытие кнопки

DBGrid2.Enabled:=False;

DBComboBox2.Enabled:=True;

BitBtn12.Visible:=False;//Скрытие кнопки

BitBtn13.Visible:=False;//Скрытие кнопки

BitBtn14.Visible:=False;//Скрытие кнопки

BitBtn15.Visible:=False;//Скрытие кнопки

BitBtn16.Visible:=False;//Скрытие кнопки

BitBtn17.Visible:=False;//Скрытие кнопки

BitBtn18.Visible:=False;//Скрытие кнопки

BitBtn20.Visible:=False;//Скрытие кнопки

BitBtn21.Visible:=True;//Появление кнопки

BitBtn19.Visible:=True;//Появление кнопки

DBEdit9.ReadOnly:=False;//Разрешение изменения записи

DBComboBox1.ReadOnly:=False;//Разрешение изменения записи

DBEdit11.ReadOnly:=False;//Разрешение изменения записи

DBEdit12.ReadOnly:=False;//Разрешение изменения записи

DBEdit13.ReadOnly:=False;//Разрешение изменения записи

DBEdit14.ReadOnly:=False;//Разрешение изменения записи

DBEdit15.ReadOnly:=False;//Разрешение изменения записи

DBEdit9.SetFocus;//Курсор находится в данном текстовом поле

DBNavigator2.BtnClick(nbEdit);//Изменение информации

BitBtn20.Enabled:=False;

BitBtn19.Enabled:=False;

end;

14. procedure TProdat11.BitBtn21Click - отмена добавления записи в таблицу "товар"

procedure TProdat11.BitBtn21Click(Sender: TObject);

begin

Button21.Visible:=True;

DBComboBox2.Enabled:=False;

GroupBox9.Visible:=True;//Появление компонента

GroupBox7.Visible:=True;//Появление компонента

BitBtn12.Visible:=True;//Появление кнопки

BitBtn13.Visible:=True;//Появление кнопки

BitBtn14.Visible:=True;//Появление кнопки

BitBtn15.Visible:=True;//Появление кнопки

BitBtn16.Visible:=True;//Появление кнопки

BitBtn17.Visible:=True;//Появление кнопки

BitBtn18.Visible:=True;//Появление кнопки

BitBtn19.Visible:=False;//Скрытие кнопки

BitBtn20.Visible:=False;//Скрытие кнопки

BitBtn21.Visible:=False;//Скрытие кнопки

DBNavigator2.BtnClick(nbCancel);//Отмена действия в базе данных

DBEdit9.ReadOnly:=True;//Запрещение изменения записи

DBComboBox1.ReadOnly:=True;//Запрещение изменения записи

DBEdit11.ReadOnly:=True;//Запрещение изменения записи

DBEdit12.ReadOnly:=True;//Запрещение изменения записи

DBEdit13.ReadOnly:=True;//Запрещение изменения записи

DBEdit14.ReadOnly:=True;//Запрещение изменения записи

DBEdit15.ReadOnly:=true;//Запрещение изменения записи

DBGrid2.Enabled:=True;

Prodat11.Refresh;//Обновление формы Tovar

CheckBox2.Checked:=False;//Изменение значения компонента

end;

15. procedure TProdat11.BitBtn42Click - Удаление информации о осуществленной продаже

procedure TProdat11.BitBtn42Click(Sender: TObject);

var z:integer;

begin

dm.Prodazi.First;//Переход к первой записи в таблице Prodazi

Edit17.Text:=DBEdit29.Text;//Занесение информации в текстовое поле

begin

for z:=1 to dm.Prodazi.RecordCount do

begin

if Edit17.Text=dm.Prodazi.FieldByName('№ продажи').AsString then

begin

DBNavigator8.BtnClick(nbDelete);//Удаление записи

ShowMessage('Запись сейчас будет удалена');//Вывод сообщения

Button14.Click;//Нажатие кнопки

Button13.Click;//Нажатие кнопки

end

else

dm.Prodazi.Next;//Переход к следующей записи в таблице Prodazi

end;

end;

Button13.Click;//Нажатие кнопки

end;

16. procedure TProdat11.BitBtn48Click - Удаление записи из таблици "Заказ"

procedure TProdat11.BitBtn48Click(Sender: TObject);

begin

begin

if dm.ADOZacaz.FieldByName('№ товара').AsString<>'' then

begin

dm.ADOZacaz.Delete;//Удаление записи из таблицы ADOZacaz

Prodat11.BitBtn53.Click;//Нажатие кнопки

end;

begin

if dm.ADOZacaz.FieldByName('№ товара').AsString='' then

begin

BitBtn9.Click;//Нажатие кнопки

Prodat11.Panel6.Visible:=False;//Скрытие панели

Prodat11.GroupBox8.Visible:=False;//Скрытие компонента

end;

end;

end;

Prodat11.Button16.Click;//Нажатие кнопки

end;

17. procedure TProdat11.BitBtn53Click - Расчет стоимости всего выбранного товара

procedure TProdat11.BitBtn53Click(Sender: TObject);

var q,w:integer;

begin

w:=0;//Обнуление переменной

dm.ADOZacaz.First;//Переход к первой записии в таблице ADOZacaz

for q:=1 to dm.ADOZacaz.RecordCount do

begin

w:=w+StrToInt(dm.ADOZacaz.FieldByName('Итого').AsString);//Присвоение значения переменной

dm.ADOZacaz.Next;//Переход к следующей записии в таблице ADOZacaz

end;

Prodat11.Label20.Caption:=IntToStr(w)+' рублей';//Присвоение значения надписи

end;

18. procedure TProdat11.BitBtn49Click - Отмена применения скидки

procedure TProdat11.BitBtn49Click(Sender: TObject);

var m1,m2,m3,a,d,po:integer;

begin

begin

if Prodat11.Edit24.Text='' then

begin

Prodat11.Edit24.Text:='0';//Занесение значение в текстовое поле

end;

end;

begin

d:=StrToInt(Edit24.Text);//Задание значения переменной

if d>100 then

begin

Edit24.Text:='100';//Занесение значение в текстовое поле

end;

end;

dm.ADOZacaz.Edit;//Разрешение редактирования записи в таблице ADOZacaz

DM.ADOZacaz.FieldByName('Льготы').AsString:=Edit24.Text;//Занесение информации в таблицу ADOZacaz

m1:=0;//Обнуление переменной

m1:=StrToInt(dm.ADOZacaz.FieldByName('Стоимость').AsString);//Задание значения переменной

m2:=1;//Задание значения переменной

m3:=0;//Обнуление переменной

m3:=StrToInt(dm.ADOZacaz.FieldByName('Льготы').AsString);//Задание значения переменной

begin

if m3=0 then

begin

po:=m1*m2;//Задание значения переменной

end

else

begin

a:=m1*m2;//Задание значения переменной

po:=a-(a*m3 div 100);//Задание значения переменной

end;

end;

dm.ADOZacaz.FieldByName('Итого').AsString:=IntToStr(po);

dm.ADOZacaz.Post;//Применение информации

Prodat11.BitBtn53.Click;//Нажатие кнопки

Prodat11.Button16.Click;//Нажатие кнопки

end;

19. procedure TProdat11.Button9Click - Поиск по базе данных

procedure TProdat11.Button9Click(Sender: TObject);

begin

begin

if Edit35.Text='' then

begin

Edit41.Text:=edit37.Text+edit33.Text+edit38.Text+ComboBox1.Text+edit39.Text+edit42.Text+edit40.Text+edit36.Text;//Занесение информации в текстовое поле

end;

end;

begin

if Edit36.Text='' then

begin

Edit41.Text:=edit37.Text+edit33.Text+edit38.Text+ComboBox1.Text+edit39.Text+edit35.Text+edit40.Text+edit43.Text;//Занесение информации в текстовое поле

end;

end;

begin

if (Edit35.Text='') and (Edit36.Text='') then

begin

Edit41.Text:=edit37.Text+edit33.Text+edit38.Text+ComboBox1.Text+edit39.Text+edit42.Text+edit40.Text+edit43.Text;//Занесение информации в текстовое поле

end;

end;

begin

if (Edit35.Text<>'') and (Edit36.Text<>'') then

begin

Edit41.Text:=edit37.Text+edit33.Text+edit38.Text+ComboBox1.Text+edit39.Text+edit35.Text+edit40.Text+edit36.Text;//Занесение информации в текстовое поле

end;

end;

ListBox2.Items.Strings[2]:=Edit41.Text;//Изменения значения

Memo2.Lines:=ListBox2.Items;//Занесение информации

dm.ADOQTovar.Close;//Закрытие таблицы ADOQTovar

dm.ADOQTovar.SQL.Clear;//Очистка SQL таблицы ADOQTovar

dm.ADOQTovar.SQL.Assign(Memo2.Lines);//Занесение информации в SQL таблицы ADOQTovar

dm.ADOQTovar.Open;//Открытие таблицы ADOQTovar


Подобные документы

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

    курсовая работа [1,4 M], добавлен 14.03.2010

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

    курсовая работа [2,4 M], добавлен 14.03.2010

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

    курсовая работа [1,4 M], добавлен 07.03.2013

  • Требования к подсистеме создания Scorm-пакетов. Построение диаграммы потоков данных. Проектирование программного средства. Выбор средств реализации подсистемы. Организация взаимодействия приложения с базой данных. Реализация пользовательского интерфейса.

    курсовая работа [634,2 K], добавлен 16.08.2012

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

    курсовая работа [2,7 M], добавлен 08.05.2015

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

    курсовая работа [1,8 M], добавлен 29.10.2008

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

    курсовая работа [3,4 M], добавлен 08.09.2015

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

    дипломная работа [1,5 M], добавлен 19.07.2014

  • Разработка базы данных для хранения сведений и расчета заработной платы работников ОАО "Печатный двор". Построение ER-диаграммы на основании информации о персонале. Построение нормальных форм отношений. Разработка запросов и пользовательского интерфейса.

    курсовая работа [1,4 M], добавлен 23.12.2010

  • Описание первичных и результатных документов, типа связи информационных объектов. Построение информационно-логической модели базы данных и её реализация в СУБД Access (создание таблиц, запросов, форм, отчётов). Разработка интерфейса пользователя.

    курсовая работа [2,1 M], добавлен 14.11.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.