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

Оглавление



	Введение

	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)





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



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

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



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

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

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

Отдел кадров

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

Отдел продаж

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

Бухгалтерия

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

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

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



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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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



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

Этап

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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



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. Перечень форм ввода входной информации

№ п/п

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

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



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

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

Рисунок 4

Рисунок 5






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





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




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



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

№ п/п

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

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



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

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

Рисунок 6

Рисунок 7





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





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


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



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

№ п/п

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

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



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

Рисунок 8



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

Рисунок 9



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

Рисунок 10





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





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




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



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



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


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

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

Покупатель;

Продавец.

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

Покупатель;

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

Заказ;

Продавец;

Продажа;

Товар.

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

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

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

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

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

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

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






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



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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Покупатель:

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

	Фамилия;

	Имя;

	Отчество;

	Адрес;

	Телефон.

Заказ:

		Код;

		№товара;

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

		Стоимость;

		Льготы;

		Итого.

	Продавец:

		№ продавца;

		Фамилия;

		Имя;

		Отчество;

		Разряд;

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

		Адрес;

		Телефон;

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

	Продажа:

		№ продажи;

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

		№ продавца;

		№ товара;

		Дата;

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

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

		Количество;

		Скидка %;

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

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

	Товар:

		№ товара;

		Название;

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

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

		Модель;

		Цена;

		Гарантия;

		Количество.

В результате полученная модель данных графически представлена в виде инфологической модели, представленной в виде рисунка (Рис.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

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

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

	begin

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

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

	end;

	

	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;

	

	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;

	

	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

	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;

	

	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;

	

	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;

	

	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;

	
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;

	

	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;

	

	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;

	

	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;

	

	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;

	

	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;

	

	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;

	

	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;

	

	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;

	

	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;

	

	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

	end;

	

	procedure TProdat11.Button15Click – Процедура формирования списка фирм изготовителей товара

	

	procedure TProdat11.Button15Click(Sender: TObject);

	var dfg,g:integer;

	begin

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

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

	DBComboBox1.Items.Clear;//Очистка компонента

	DBComboBox2.Items.Clear;//Очистка компонента

	ComboBox1.Items.Clear;//Очистка компонента

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

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

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

	DBComboBox1.Items.Add(DBComboBox1.Text);//Занесение информации в компонент

	begin

	for g:=1 to dm.FirmIzg.RecordCount do

	begin

	if DBComboBox1.Text<>DBComboBox1.Items.Strings[dfg] then

	begin

	DBComboBox1.Items.Add((DBComboBox1.Text));//Занесение информации в компонент

	dfg:=dfg+1;//Увеличение переменной

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

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

	end

	else

	begin

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

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

	end;

	end;

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

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

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

	end;

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

	DBComboBox2.Items:=DBComboBox1.Items;//Занесение информации

	ComboBox1.Items:=DBComboBox1.Items;//Занесение информации

	end;

	

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

	

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

	

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



2.2 Условия выполнения программы



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

Процессор – Pentium 2 и выше;

Оперативная память - 64 Мб;

	Свободное место на диске – 50 Мб;

Монитор "17’’;

Клавиатура;

Мышь;

Принтер.

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

Установка данной программы осуществляется путем копирования файлов программы: Комп салон.mdb и Kompsalon.exe в папку созданную на любом диске. 



2.3 Выполнение программы



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

Поместить компакт диск с данным программным обеспечением в привод CD-ROM дисковод;

Скопировать на жесткий диск папку с программой

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

Краткая характеристика работы данного программного продукта:

Старт программы происходит путем запуска файла Kompsalon.exe.

На экране появляется заставка программы, по истечению 5 секунд программа предлагает Вам зарегистрироваться, и на экране появляется окно "Регистрация". Далее, для входа в саму программу, необходимо зарегистрироваться. Для этого нужно в каждое текстовое поле ввести определённые значения. После заполнения всех необходимых полей регистрации, нажмите кнопку "Продолжить". Если введённые вами данные не совпали с уже имеющимися в программе данными, то верхней части окна "Регистрация" выведется надпись "Данные продавца неверны! Попробуйте повторить регистрацию". Если же по какой либо причине вы пропустили одно из полей регистрации (оставили его пустым), данный программный продукт выведет сообщение "ПОЖАЛУЙСТО ЗАПОЛНИТЕ ВСЕ ПОЛЯ!!!". Также данное окно позволяет при помощи кнопки "Выход" непосредственно осуществить выход. При этом программа спросит "Вы хотите выйти из программы". При нажатии кнопки "Yes" - программа закроется, а "No" -

вернёт вас к окну "Регистрация".

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

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

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

При нажатии на кнопку "Клиенты", появляется подраздел, который отображает в виде таблицы информацию о клиентах, которые были зарегистрированы в процессе продажи товара. Этот подраздел также содержит кнопки перемещения по таблице и кнопки "Изменить запись", "Удалить запись". При выборе "Изменить запись" текстовые поля расположенные ниже таблицы становятся активными и позволяют изменить данные, хранящиеся в них. При этом появляются кнопки "Отмена" и "Применить изменения". "Отмена" возвращает к тем данным, которые были до изменения, а "Применить изменения" сохраняет в таблице изменённые данные. Кнопка "Удалить запись", приводит к удалению записи из таблицы.

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

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

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

Меню "Выбор товара" содержит кнопки: "Удалить товар" - удаляет выбранный товар из таблицы; "Скидка на товар" - Задаёт скидку на выбранный товар; "Скидка на весь товар" - задаёт скидку на весь товар, который находится в таблице выбранного товара; "Отменить скидку на товар" - отменяет скидку на выбранный товар, "Отменить скидку на весь товар" - отменяет скидку на весь товар, который находится в таблице выбранного товара. Для того, чтобы задать скидку, надо ввести в текстовое поле которое находится в меню "Выбор товара" число. Введённое число будет считаться как процентная скидка.

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

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




2.4 Сообщения оператору



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

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





Рисунок.18.1



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





Рисунок.18.2



При нажатии кнопки "Удалить запись" на главной форме программы в любом из подразделов выводится следующее сообщение (Рис.18.3)






Рисунок.18.3



При нажатии кнопки "Выбрать товар", если на складе нет товара, то выводится следующее сообщение (Рис.18.4)





Рисунок.18.4.



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





Рисунок.18.5.



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






Рисунок.18.6.



При осуществлении продажи, после нажатия кнопки "продать товар" программа выводит следующее сообщение (Рис.18.7)





Рисунок.18.7.



При удалении информации о продаже (Рис.18.8)





Рисунок.18.8.




3. Экономическая часть



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

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

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

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



3.1 Краткое описание программного продукта и области его применения



Основными пользователями, на которых ориентирована создаваемая система (программа) являются компьютерные салоны.




3.2 Расчёт себестоимости программного продукта и выбор рекламного носителя



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



Таблица 6.

№ статьи

Наименование статьи

Сумма (руб.)

1.

Материалы

105

2.

Расходы на оплату труда

4875

3.

Отчисления в единый социальный налог (26 %)

1267,5

4.

Расходы на энергию

153,77

5.

Амортизация

779,51

6.

Расходы на отопление

313,33

7.

Расходы на содержание зданий, инвентаря, АУП, и прочие расходы (данные расходы составляют 50-80% от суммы расходов на оплату труда)

2681,25

8.

Всего издержек

10175,37

9.

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

700

10.

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

10940,23



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



3.2.1 Расчёт материальных издержек



Таблица 7.

№ п/п

Наименование

Количество

Стоимость (руб.)

Сумма (руб.)

1.

краска

1

30

30

2.

бумага

200

0,3

60

3.

cd-r

1

15

15

4.

Итого





105




3.2.2 Расчёт издержек на зарплату



Таблица 8.

Категория

персонала

Оклад (руб.)

Зарплата за 105 часов

Премия от

з/п ( 30 %)

Итого

зарплата

программист

4000

2500

750

3250

лаборант

2000

1250

375

1625

Всего зарплата 

6000

3750

1125

4875



3.2.3 Отчисления в единый социальный налог с ФОТ

Отчисления в единый социальный налог составляют 26 % с фонда оплаты труда.



4875*26%/100%=1267,5 руб.



3.2.4 Издержки на энергию

а) потребление энергии компьютером - квт/ч*кол-во часов работы компьютера



Сэл.эн.ком=n*Pком*Сквт/ч, где



Сэл.эн.ком: затраты на электроэнергию, потребляемую компьютером

n - время, затраченное на разработку программы, составило105часов

Рком - мощность, потребляемая компьютером за 1 час.

При разработке программы составила 0,13 квт

Сквт/ч - стоимость 1 квт/ч, равна 1,45 руб.

Подставив значения в формулу, получим:



Сэл.эн.ком= 105*0,13*1,45 =19,79 руб.




б) освещение кабинета: квт/ч*кол-во часов работы программиста за компьютером.



Сэл.эн.каб.=n*b*Pлам*Сквт/ч, где



Сэл.эн.каб. - затраты на электроэнергию для освещения кабинета (руб.)

n - количество часов, необходимых для разработки одной программы = 105

b - количество ламп в кабинете= 22

Рлам - мощность, потребляемая 1 лампочкой за 1 час.

При разработке программы составила 0,04 квт

Сквт/ч - стоимость 1 квт/ч, равна 1,45 руб.

Подставив значения в формулу, получим:



Сэл.эн.каб.= 105*22*0,04 *0,04 = 133,98 руб.



Всего потреблено энергии на разработку программы:



19,79+133,98=153,77 руб.



3.2.5 Амортизация основных средств

а) амортизация компьютера

месячная норма амортизации: А=годовая норма/12 мес.



Сумма аморт. комп. = А*стоимость компьютера

Сам=Аком*Ском/100%/12, где



Сам - амортизация компьютера

Аком - норма амортизации компьютера при условиях обучения (%) - 1/срок службы *100%

Ском - стоимость компьютера (руб.) 25000 руб.



Сам= 25000*33,33%/100%/12=694,44 руб.



б) амортизация компьютерного кабинета:



Стоимость основных фондов (стоимость здания)=1629000 руб.

Годовая норма амортизации =2%

месячная норма амортизации: А=годовая норма/12 мес.

Сумма аморт. здания в целом=А*стоимость здания

Сумма аморт. здания в целом=2/100%/12*1629000

Сумма аморт. компьютерного класса=(Сумма аморт. здания/площадь здания)*площадь класса

(2715/1500)*47=85,07 руб.



Итого амортизационных отчислений:



Сумма амортизации компьютера + Сумма амортизации класса

694,44+85,07=779,51 руб.



3.2.6 Издержки на отопление рассчитываются следующим образом:



Рот=Рат.зд.*Sкл/Sзд.



Где

Рот - издержки на отопление

Рат.зд. - расходы на отопление всего здания (10000)

Sкл - площадь компьютерного кабинета (47) кв.м

Sзд - площадь всего здания (1500) кв.м




Рот=10000*47/1500=313,33 руб.



3.2.7 Прочие издержки

Прочие издержки принимаются в объёме 50-80% от суммы з/п (Ф)



4875*55%/100%= 2681,25 руб.



3.2.8 Всего издержек по разработке



2.1+2.2+2.3+2.4+2.5+2.6+2.7=105+4875+1267,5+153,77+779,51+313,33+2681,25=10175,37 руб.



3.2.9 Расходы на рекламу

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

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

Реклама в газете:

Цена за 1 кв. см.: 10

Количество занимаемого места: 10

Количество выходящих номеров с рекламой: 7



Срек3=Цена за 1 кв.см*Количество занимаемого места*Количество выходящих номеров

Срек3=10*10*7=700 руб.



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

Она складывается из затрат на электроэнергию и затрат на оплату труда рабочего времени лаборанта.

Цена одного CD-R составляет 15 рублей. Затраты на диски составят:60 рублей.

На тиражирование одного экземпляра программы необходимо 6 минут, следовательно, затраты на электроэнергию составят:



Сэл.эн.комп1=0,13*(6/60*1,45)=0,01885 руб.

Сэл.эн.ком1=0,04*(6/60*1,45)=0,0058 руб.

Собщ=0,01885+0,0058= 0,02465 руб.



Затраты на оплату труда лаборанта составили:



Сз/п=(1250/168)*6/60=1,19 руб.



Затраты на тиражирование



Стир1=1,19+0,02465=1,21руб.

Стир=1,21*4=4,86 руб.



Переменные затраты составят:


Рпер=Стир+Сдис=4,86+60=64,86 руб.



Итого, внепроизводственные затраты составят:



Рпер+Срек=64,86+700=764,86 руб.



3.2.10 Определяются полные издержки

Сумма статей 2.8 и 2.9 и заполняется таблица №1



Сумма=10175,37+764,86=10940,23 руб.



3.3 Ожидаемые результаты от внедрения (реализации) программного продукта



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

Цену можно определить по формуле:



Ц=И+Н+НДС, где



И - издержки производства и продажи (полная себестоимость),

Н - норма прибыли ( 4 % от издержек производства),

НДС - налог на добавленную стоимость ( 18 %),

Отпускная цена без НДС:



Ц=10940,23+(10940,23*4/100%)=11377,84 руб.




Отпускная цена с учётом НДС:



Ц=10940,23+(10940,23*4/100%)+(11377,84*18)/100%=13425,85 руб.



Таким образом, сумма от реализации 4 программ составит: 45511,36 руб., в том числе чистая прибыль:( 11377,84*4)-64,86=45446,49руб.




ЗАКЛЮЧЕНИЕ



=

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

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

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

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

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

произведена нормализация БД до максимально возможного уровня;

выбор средства реализации клиентской части ИС - на основе полученной инфологической модели и примерных объемов хранимой информации обоснован выбор СУБД и языка написания клиентской части;

разработка базы данных ИС в MS Access – на основе всех моделей разработана реляционная и нормализованная база данных;

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

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

организованно редактирование данных и добавление новых данных в существующую нормализованную БД;

сохранение данных в нормализованную БД;

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

организован поиск по всем полям и таблицам БД;

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

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




Источники, использованные при разработке



В. Понамарев "Базы данных в Delphi 7. Самоучитель", СПб.: Питер, 2003г.

С.И.Бобровский "Delphi 7. Учебный курс", СПб.: Питер, 2005г.

Электронный учебник "DelphiWorld", версия 5.0, 2002-2003г.

Т.Карпова "Базы данных: модели, разработка, реализация", СПб.: Питер, 2001г.

http://www.davecentral.com

http://www.screenshot.com

http://ic.krasu.ru/new/events.php3?parad-20025

http://rrc.karelia.ru/site/Resources/iias/

Г.Н.Смирнова, А.А.Сорокин, Ю.Ф.Тельнов "Проектирование экономических информационных систем", учебник, под ред. Ю.Ф.Тельнова. – М.; Финансы и статистика, 2003. – 512с.

А.Я. Архангельский "Программирование в Delphi 7" – М, ООО "Бином-Пресс", 2005г. – 1152л.

Гофман В.Э., Хомоменко А.Д. "Delphi 6" – СПб., БХВ-Петербург, 2002. – 1152л.

ГОСТы 19.404-79, 19.402-78, 10.505-79;

Электронный учебник "Delphi v7.0 Book";

Электронный учебник "Delphi v6.0 Book";