Автоматизация работы интернет-магазина

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

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

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

Требования к программе или программному изделию

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

  • Программа должна хранить данные (ФИО, паспорт клиента)
  • Программа должна хранить данные о заказах
  • Программа должна хранить данные о товарах
  • Программа должна хранить данные о изготовителях

Требования к надежности

  • Программа должна выполнять действия пользователя
  • Визуальные компоненты должны правильно реагировать на управление
  • База данных программы не должна допускать потерю данных

Условия эксплуатации

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

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

Рабочий персональный компьютер с параметрами:

  • Процессор 2000МНz и выше;
  • Оперативная память 512 Mb и выше;
  • Пространство на жестком диске 2000 Mb;
  • Мышь;
  • Клавиатура.

Требования к информационной и программной совместимости

Данный программный продукт может работать только под Windows.

Требования к маркировке и упаковке

Требования к маркировке и упаковке не предъявляются.

Требования к транспортированию и хранению

Требования к транспортированию и хранению не предъявляются.

Требования к программной документации

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

  • Руководство пользователя (встроенная справка)
  • Техническое задание

Специальные требования к программной документации не предъявляются.

Стадии и этапы разработки

1 Техническое задание

  • 1.1 Изучение предметной области
    • 1.2 Обоснование необходимости разработки программы
      • 1.3 Разработка и утверждение технического задания

2. Эскизный проект

24 стр., 11836 слов

Программный комплекс моделирования релейно-контактных схем

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

  • 2.1 Разработка эскизного проекта
    • 2.2 Утверждение эскизного проекта

3. Технический проект

  • 3.1 Разработка технического проекта
    • 3.2 Утверждение технического проекта

4. Рабочий проект

  • 4.1 Разработка программы
    • 4.2 Разработка программной документации
      • 4.3 Испытания программы

5 Сдача готовой курсовой работы

6 Защита работы

7 Порядок контроля и приемки

7.1 Подготовка и сдача программы и программной документации руководителю для защиты

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

  • В электронном виде;
  • В распечатанном варианте на бумажных носителях формата А4.

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

7.2 Защита работы

Защита работы состоит из следующих этапов:

  • Опытная эксплуатация;
  • Устранение замечаний опытной эксплуатации;
  • Окончательная приемка: проверка правильности выполнения всех функций в соответствии с пунктом 4.1
  • В качестве тестовых данных в базе данных должно быть 5-10 записей
  • Приемка

2. Формы

Форма заказов

Форма товары

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

Форма клиенты

3. SQL операции

Вставить заказ

ALTER PROCEDURE [dbo].[ВставЗаказ]

  • Add the parameters for the stored procedure here

@КодЗаказа bigint,

@КодТовара bigint,

@КодКлиента bigint,

@Стоимость money,

@Дата datetime,

@Количество int

AS

BEGIN

begin tran f123

  • SET NOCOUNT ON added to prevent extra result sets from
  • interfering with SELECT statements.

SET NOCOUNT ON;

  • Insert statements for procedure here

INSERT INTO Заказы VALUES (@КодЗаказа, @КодТовара,@КодКлиента ,@Стоимость,@Дата,@Количество)

commit tran f123

END

Встав изготовитель

ALTER PROCEDURE [dbo].[ВставИзготовитель]

  • Add the parameters for the stored procedure here

@Код_изготовителя bigint,

@Наименование varchar(50)

AS

BEGIN

  • SET NOCOUNT ON added to prevent extra result sets from
  • interfering with SELECT statements.

SET NOCOUNT ON;

  • Insert statements for procedure here

INSERT INTO Изготовитель

VALUES (@Код_изготовителя,@Наименование)

END

Вставить клиенты

ALTER PROCEDURE [dbo].[ВставКлиенты]

  • Add the parameters for the stored procedure here

@Код_клиента bigint,

@Фамилия varchar(50),

@Имя varchar(50),

@Отчество varchar(50),

@Паспорт varchar(50)

AS

BEGIN

  • SET NOCOUNT ON added to prevent extra result sets from
  • interfering with SELECT statements.

SET NOCOUNT ON;

begin tran client

declare @check int

declare @curs varchar(50)

declare ct CURSOR FOR select Паспорт from Клиенты

13 стр., 6032 слов

Работа «Автоматизированное рабочее место преподавателя. Учёт ...

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

open ct

while 1=1 begin

fetch from ct into @curs

if @@fetch_status = -1

break

if @Паспорт=@curs set @check = 1

END

DEALLOCATE ct

INSERT INTO Клиенты VALUES

(@Код_клиента, @Фамилия, @Имя, @Отчество, @Паспорт)

if @check = 1 rollback tran client

else commit tran client

  • commit tran client

END

Вставить товары

ALTER PROCEDURE [dbo].[ВставТовары]

  • Add the parameters for the stored procedure here

@Наименование varchar(50),

@Количество int,

@Цена money,

@Код_изготовителя bigint,

@Код_товара bigint

AS

BEGIN

  • SET NOCOUNT ON added to prevent extra result sets from
  • interfering with SELECT statements.

SET NOCOUNT ON;

  • Insert statements for procedure here

INSERT INTO Товары Values

(@Наименование, @Количество, @Цена, @Код_изготовителя, @Код_товара)

END

Обновить товары

ALTER PROCEDURE [dbo].[ОбновТовары]

  • Add the parameters for the stored procedure here

@Наименование varchar(50),

@Количество int,

@Цена money,

@Код_изготовителя bigint,

@Код_товара bigint

AS

BEGIN

  • SET NOCOUNT ON added to prevent extra result sets from
  • interfering with SELECT statements.

SET NOCOUNT ON;

  • Insert statements for procedure here

UPDATE Товары set Наименование=@Наименование, Количество=@Количество, Цена=@Цена,

Код_изготовителя=@Код_изготовителя where Код_товара=@Код_товара

END

Обновить клиенты

ALTER PROCEDURE [dbo].[ОбновКлиенты]

  • Add the parameters for the stored procedure here

@Код_клиента bigint,

@Фамилия varchar(50),

@Имя varchar(50),

@Отчество varchar(50),

@Паспорт varchar(50)

AS

BEGIN

  • SET NOCOUNT ON added to prevent extra result sets from
  • interfering with SELECT statements.

SET NOCOUNT ON;

  • Insert statements for procedure here

UPDATE Клиенты set Фамилия = @Фамилия, Имя=@Имя, Отчество=@Отчество, Паспорт=@Паспорт where Код_клиента =

@Код_клиента END

Обновить изготовителей

ALTER PROCEDURE [dbo].[ОбновИзготовитель]

  • Add the parameters for the stored procedure here

@Код_изготовителя bigint,

@Наименование varchar(50)

AS

BEGIN

  • SET NOCOUNT ON added to prevent extra result sets from
  • interfering with SELECT statements.

SET NOCOUNT ON;

  • Insert statements for procedure here

UPDATE Изготовитель set Наименование=@Наименование where Код_изготовителя=@Код_изготовителя

END

Обновить заказ

ALTER PROCEDURE [dbo].[ОбновЗаказ]

  • Add the parameters for the stored procedure here

@КодЗаказа bigint,

@КодТовара bigint,

@КодКлиента bigint,

@Стоимость money,

@Дата datetime,

@Количество int

AS

BEGIN

  • SET NOCOUNT ON added to prevent extra result sets from
  • interfering with SELECT statements.

SET NOCOUNT ON;

  • Insert statements for procedure here

UPDATE Заказы set Код_товара = @КодТовара, Код_Клиента=@КодКлиента, Стоимость=@Стоимость, Дата=@Дата,

Количество=@Количество where Код_заказа=@КодЗаказа

END

Удалить товары

ALTER PROCEDURE [dbo].[УдалТовары]

  • Add the parameters for the stored procedure here

@Код_товара bigint

AS

BEGIN

  • SET NOCOUNT ON added to prevent extra result sets from
  • interfering with SELECT statements.

SET NOCOUNT ON;

  • Insert statements for procedure here

DELETE FROM Товары WHERE Код_товара=@Код_товара

END

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

ALTER PROCEDURE [dbo].[УдалКлиенты]

  • Add the parameters for the stored procedure here

@Код_клиента bigint

AS

BEGIN

  • SET NOCOUNT ON added to prevent extra result sets from
  • interfering with SELECT statements.

SET NOCOUNT ON;

  • Insert statements for procedure here

DELETE FROM Клиенты WHERE Код_клиента=@Код_клиента

END

Удалить изготовителей

ALTER PROCEDURE [dbo].[УдалИзготовитель]

  • Add the parameters for the stored procedure here

@Код_изготовителя bigint

AS

BEGIN

  • SET NOCOUNT ON added to prevent extra result sets from
  • interfering with SELECT statements.

SET NOCOUNT ON;

  • Insert statements for procedure here

DELETE FROM Изготовитель where Код_изготовителя=@Код_изготовителя

END

Удалить заказ

ALTER PROCEDURE [dbo].[УдалЗаказ]

  • Add the parameters for the stored procedure here

@КодЗаказа bigint

  • @КодТовара bigint,
  • @КодКлиента bigint,
  • @Стоимость money,
  • @Дата datetime,
  • @Количество int

AS

BEGIN

  • SET NOCOUNT ON added to prevent extra result sets from
  • interfering with SELECT statements.

SET NOCOUNT ON;

  • Insert statements for procedure here

DELETE FROM Заказы Where Код_заказа = @КодЗаказа

END

Триггер в таблице заказы

ALTER TRIGGER [dbo].[ИзменЗаказы]

ON [dbo].[Заказы]

for INSERT,UPDATE

AS

BEGIN

  • SET NOCOUNT ON added to prevent extra result sets from
  • interfering with SELECT statements.

SET NOCOUNT ON;

UPDATE Заказы

SET Дата = GETDATE()

FROM inserted, Заказы

WHERE inserted.Код_заказа = Заказы.Код_заказа

END

Получить изготовителей

CREATE PROCEDURE полИзготовитель

  • Add the parameters for the stored procedure here

AS

BEGIN

  • SET NOCOUNT ON added to prevent extra result sets from
  • interfering with SELECT statements.

SET NOCOUNT ON;

  • Insert statements for procedure here

SELECT Код_изготовителя, Наименование FROM Изготовитель

END

Получить клиенты

CREATE PROCEDURE полКлиенты

  • Add the parameters for the stored procedure here

AS

BEGIN

SET NOCOUNT ON;

  • Insert statements for procedure here

SELECT Код_клиента, Паспорт FROM Клиенты

END

Отчет BPwin

Model

Model

Property

Value

Name

Интернет-магазин

Definition

Scope

Time Frame

(AS-IS)

Status

WORKING

Purpose

Source

Author

Creation Date

20.12.2012

System Last Revision Date

19.12.2012

User Last Revision Date

19.12.2012

Activity

Activity

Name

Definition

Note

Автоматизация работа интернет-магазина

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

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

Заказы

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

Форма содержит в себе datagridView с полями: код заказа (тип bigint), код товара (тип bigint), код клиента (тип bigint), стоимость (тип int), дата (тип dataTime), количество (тип int), оплачен (тип bit).

Под datagridView содержаться поля для ввода данных, которые будут записаны, либо изменены: текстовое поле для кода заказа, выпадающие списки для клинтов и товаров, содержащие уже существующие наименования, текстовые поля для ввода стоимости, даты (дата не активна и проставляется автоматически) и количества. А так же checkbox для обозначения оплачен ли заказ. Под полями для ввода нахлдятся кнопки: добавить заказ, обновить заказ, удалить заказ, к товарам (переход на форму товаров), к клиентам (переход на форму клиентов).

Изготовители

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

Форма содержит в себе datagridview (в верхней части экрана и доходить до середины формы), отображающий информацию из таблицы «изготовители» в базе данных, а именно: код изготовителя (bigint), наименование (varchar(50)).

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

Клиенты

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

Форма содержит в верхней части и доходящий до середины формы datagridview, содержащий в себе информации из существующей таблицы по клиентам, а именно: код клиента (bigint), фамилия (varchar(50)), имя (varchar(50)), отчество (varchar(50)), паспорт (varchar(50)).

Ниже datagridview расположены в одну линию, слева направо: кнопка «добавить», текстовые поля для ввода информации о коде клиента, фамилии, имени, отчестве и паспорте клиента.

Ниже кнопки «добавить» расположена кнопка «обновить», под «обновить» находится кнопка «удалить», справа о кнопки «удалить» находится кнопка «к заказам», осуществляющая переход на соответствующую форму.

Товары

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

Фома содержит dataGridView (наверху), в котором отображаются: код товара (bigint), наименование (varchar(50)), количество (int), цена (int), код изготовителя (bigint).

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

Так же слева от полей (на расстоянии 20px от левого края формы) находится конпка «добавить». Под кнпкой «добавить» расположена кнопка «изменить», а под измени, кнопка «удалить», ниже расположена кнопка «к заказам», правее неё расположена кнопка «к изготовителям». Кнопки «к заказам» и «к изготовителям» ведут на соответствующие формы.

Arrow

Arrow

Name

Definition

Note

Запись личных данных клиента в базу данных

Передает обновленную информацию об изготовителях в базу данных.

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

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

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

Запрос от оператора программы на кассу о наличии оплаты по заказам.

Запрос на товар

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

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

От оператора программы поступает запрос на получение информации по товарам на склад.

Изменения информации о товарах

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

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

Инзменение информации об изготовителях

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

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

Информация о наличии товара

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

Клиент передает информацию о себе опратору, а именно : ФИО, номер паспорта, после чего эти данных вносятся в таблицу,

Клиент передает оператору, после чего опратор вносит на форму личные данный клиента: фамилию, имя, отчество и номер паспорта.

Информация о существующих клиентах

Передает информацию о клиентах из базы данных ны форму.

Передает на форму «клиенты» информацию из таблицы «клиенты».

Информация о товарах

Передает информацию о товарах из базы данных ны форму.

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

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

Информация об изготовителях

Передает информацию об изготовителях из базы данных ны форму.

Передает на форму «изготовители» информацию из таблицы «изготовители», содержащую все поля.

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

Содержит информацию об оплате по заказам

Отправляет информацию о каждом оплаченном заказе

Информация по изготовителям

Передает информациб об изготовителях на форму «товары».

Передает на форму «клиенты» информацию из таблицы «изготовители», а так же результаты работы хранимых процедур «полТовар», «полИзготовитель».

Информация по существующим заказам

Передает информацию о аказах из базы данных ны форму.

Передает на форму «заказы» информацию из таблицы «заказы», а так же результаты работы хранимых процедур «полТовар», «полКлиент».

Накладная на товар

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

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

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

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

Путем вызова хранимых проедур записывает в базу данных информацию о заказах.

Сведенья о клиенте

Перендает на форму заказов информацию о клиенте, который этот заказ осуществил.

Передает на форму «заказы» код и паспорт клиента.

Data Store

Data Store

Name

Note

Definition

База данных

База данных содержит 4 таблицы: Клиенты, Товары, Изготовители, Заказы. А так же хранимые процедуры к ним: добавление, изменения, удаление — для всех таблиц и запросы на получение информации по Клиентам (код, паспорт), Изготовителям (код, наименование) и Товарам (код, наименование).

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

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

A-0 Автоматизация работы интернет-магазина

Рис 5 — Автоматизация работы интернет — магазина, нулевой уровень

A0 Автоматизация работа интернет-магазина

Рис 6 — Автоматизация работы интернет — магазина, первый уровень