Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Описание создания отчетов






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

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

if exists (select * from dbo.sysobjects

where id = OBJECT_ID(N'View_good_alf') and OBJECTPROPERTY(id, N'IsProcedure')=1

)

drop procedure View_good_alf

go

CREATE procedure View_good_alf

as

SELECT P.name_group [Название группы],

G.name_good [Название товара],

G.quantity_good [Количество товара],

G.ed_izm [Единица измерения]

from Goods G JOIN Product_groups P on G.id_group=P.id_group

order by P.name_group, G.name_good

go

--exec View_good_alf

 

 

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

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

--Вывод по увеличению количества товаров в группе - 1

--Вывод по уменьшению количества товаров в группе - 2

if exists (select * from dbo.sysobjects

where id = OBJECT_ID(N'View_good_kol') and OBJECTPROPERTY(id, N'IsProcedure')=1

)

drop procedure View_good_kol

go

CREATE procedure View_good_kol

@i int

as

if @i=1

begin

SELECT P.name_group [Название группы],

G.name_good [Название товара],

G.quantity_good [Количество товара],

G.ed_izm [Единица измерения]

from Goods G JOIN Product_groups P on G.id_group=P.id_group

order by P.name_group, G.quantity_good

end

if @i=2

begin

SELECT P.name_group [Название группы],

G.name_good [Название товара],

G.quantity_good [Количество товара],

G.ed_izm [Единица измерения]

from Goods G JOIN Product_groups P on G.id_group=P.id_group

order by P.name_group, G.quantity_good desc

end

go

--exec View_good_kol 1

 

 

--exec View_good_kol 2

 

 


 

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

--Вывод: название товара, количество, ед.измерения

--Вывод по увеличению количества товаров в группе - 1

--Вывод по уменьшению количества товаров в группе - 2

if exists (select * from dbo.sysobjects

where id = OBJECT_ID(N'View_good_kol2') and OBJECTPROPERTY(id, N'IsProcedure')=1

)

drop procedure View_good_kol2

go

CREATE procedure View_good_kol2

@i int

as

if @i=1

begin

SELECT G.name_good [Название товара],

G.quantity_good [Количество товара],

G.ed_izm [Единица измерения]

from Goods G

order by G.quantity_good

end

if @i=2

begin

SELECT G.name_good [Название товара],

G.quantity_good [Количество товара],

G.ed_izm [Единица измерения]

from Goods G

order by G.quantity_good desc

end

go

 

--exec View_good_kol2 1 --exec View_good_kol2 2

 

 


 

--Статистика поступления товаров по неделям с начала указанного года

--Вывод: номер недели, название товара, количество поступления, количество продажи

if exists (select * from dbo.sysobjects

where id = OBJECT_ID(N'Stat_good_ned_d') and OBJECTPROPERTY(id, N'IsProcedure')=1

)

drop procedure Stat_good_ned_d

go

CREATE procedure Stat_good_ned_d

@year date

as

SELECT DATEPART (ISO_WEEK, D.date_time_delivery) [Неделя поступления],

G.name_good [Название товара],

SUM(C.quantity) [Количество поступления]

from Goods G

JOIN Consignment_note C on G.id_good=C.id_good

JOIN Deliveries D on C.id_cons_note=D.id_cons_note

where D.date_time_delivery> @year

group by DATEPART (ISO_WEEK, D.date_time_delivery), G.name_good

go

--exec Stat_good_ned_d '2013'

 

Проверяем правильность работы отчета:

 

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

exec Add_delivery '2013-01-01 13: 55: 20', 5

exec Add_delivery '2013-02-01 13: 55: 20', 3

exec Add_delivery '2013-03-01 13: 55: 20', 4

 

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

--для проверки работы отчета

exec Add_cons_note 11, 12, 10, 123.00

exec Add_cons_note 11, 1, 3, 123.00

exec Add_cons_note 12, 12, 7, 63.00

exec Add_cons_note 12, 25, 8, 123.00

exec Add_cons_note 12, 1, 8, 43.00

exec Add_cons_note 13, 12, 1, 93.00

 


--Статистика продажи товаров по неделям с начала указанного года

--Вывод: номер недели, название товара, количество поступления, количество продажи

if exists (select * from dbo.sysobjects

where id = OBJECT_ID(N'Stat_good_ned_s') and OBJECTPROPERTY(id, N'IsProcedure')=1

)

drop procedure Stat_good_ned_s

go

CREATE procedure Stat_good_ned_s

@year date

as

SELECT DATEPART (ISO_WEEK, S.date_time_shipment) [Неделя отгрузки],

G.name_good [Название товара],

SUM(Z.quantity) [Количество продажи]

from Goods G

JOIN Zakaz Z on G.id_good=Z.id_good

JOIN Shipments S on Z.id_zakaz=S.id_zakaz

where S.date_time_shipment> @year

group by DATEPART (ISO_WEEK, S.date_time_shipment), G.name_good

order by DATEPART (ISO_WEEK, S.date_time_shipment), G.name_good

go

--exec Stat_good_ned_s '2011'

 

Проверяем правильность работы отчета:

 

--Добавляем продажи, сделанные на одной неделе, для проверки работы отчета

exec Add_shipment '2011-06-12 16: 55: 18', 9

exec Add_shipment '2011-06-12 16: 55: 18', 7

exec Add_shipment '2011-06-12 16: 55: 18', 8

 

--Для продаж, сделанных на одной неделе, делаем заказы с одинаковыми товарами,

--для проверки работы отчета

exec Add_zakaz 10, 25, 1

exec Add_zakaz 10, 3, 1

exec Add_zakaz 10, 4, 1

exec Add_zakaz 11, 3, 1

exec Add_zakaz 11, 4, 1

exec Add_zakaz 12, 4, 1

exec Add_zakaz 12, 3, 1

 

 

 


 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.