Диплом: Автоматизация управления продажами интернет-магазина «NO ON»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
111
25. Гага
рина Л.Г., Киселев Д.В., Федо
това Е.Л. Разработка и эксплуатация
автоматиз
ированных информационных сис
тем / под ре
д.проф.Л.Г.Гагар
иной. –
Москва: И
Д «Форум»: Инф
ра-М, 2017 384 с.
26. Ефимов Е.Н., Патру
шина С.М., Панферова Л.Ф., Хаши
ева Л.И.
Информационные сист
емы в эконо
мике. – Москва: ИК
Ц «МарТ», 2014. 352 с.
27. Липаев В.В. Програ
ммная инженерия. Методоло
гические основы. М.:
ТЕИС, 2016. – 608 с.
28. Максимов Н.В., Поп
ов И.И., Голицына О.Л. Информа
ционные системы.
Учеб
ное пособие. Фор
ум, 2012 г. - 496 с.
29. Проектирование экономи
ческих информационных сис
тем:
Учебник/Смир
нова Г.Н., Сорокин А.А., Тель
нов Ю.Ф.; Под ре
д. Тельнова Ю.Ф. –
М.:Финансы и статистика, 2013. - 512 с.
112
Приложение 1
<asp:ObjectDataSourceID="ObjectDataSource1" runat="server"
TypeName="ComponentsDB.CatalogDB"
SelectCountMethod="GetCountByGenre" SelectMethod="GetPageProductsByGenre"
EnablePaging="true" OnSelected="ObjectDataSource_Selected" EnableCaching="true"
CacheDuration="360">
<SelectParameters>
<asp:QueryStringParameter Name="GenreID" QueryStringField="GenreID"
Type="Int32" />
</SelectParameters>
</asp:ObjectDataSource>,
гд
е
EnablePading = “true” - включает разби
ение на стра
ницы в источ
нике данных.
SelectCountMethod = "GetCountByGenre" – мет
од для подс
чёта общего ко
л-ва
стр
ок в табл
ице. Данный мет
од необходим, дл
я того что
бы GridView мог созд
ать
корректное колич
ество ссылок стра
ниц на пан
ели навигации.
SelectMethod = "GetPageProductsByGenre" – мет
од выбирающий
инфор
мацию для теку
щей страницы.
Мет
од GetCountByGenre, вызывает хран
имую процедуру GetCountByGenre,
кото
рая возвращает ко
л-во альб
омов в ката
логе, относящихся к жанру, указа
нному
в парам
етре GenreID.
Метод GetCountByGenre:
public static int GetCountByGenre(int GenreID)
{
SqlConnection conn = new
SqlConnection(WebConfigurationManager.ConnectionStrings["connStr"].ConnectionStri
ng);
SqlCommand cmd = new SqlCommand("GetCountByGenre", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("GenreID", SqlDbType.Int);
113
cmd.Parameters["GenreID"].Value = GenreID;
int count=-1;
try
{
conn.Open();
count = (int)cmd.ExecuteScalar();
}
catch(SqlException)
{
conn.Close();
}
finally
{
conn.Close();
}
return count;
}
Хранимаяп
роцедура GetCountByGenre
CREATE PROCEDURE GetCountByGenre (@GenreID INT)
AS
SELECT COUNT(*) FROM Catalogue
WHERE GenreID = @GenreID
GO
Метод GetPageProductsByGenre вызываетхрани
муюпроцедуру
GetPageProductsByGenre, котораявозвращаетданныедлятекущейстраницы
GridView.
Мет
од GetPageProductsByGenre:
public static DataSet GetPageProductsByGenre(int startRowIndex, int
maximumRows, int GenreID)
{
114
SqlConnection conn = new
SqlConnection(WebConfigurationManager.ConnectionStrings["connStr"].ConnectionStri
ng);
SqlCommand cmd = new SqlCommand("GetPageProductsByGenre", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("Start", SqlDbType.Int);
cmd.Parameters["Start"].Value = startRowIndex;
cmd.Parameters.Add("Count", SqlDbType.Int);
cmd.Parameters["Count"].Value = maximumRows;
cmd.Parameters.Add("GenreID", SqlDbType.Int);
cmd.Parameters["GenreID"].Value = GenreID;
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = cmd;
try
{
conn.Open();
da.Fill(ds);
}
catch (SqlException)
{
conn.Close();
return null;
}
finally
{
conn.Close();
}
return ds;
}
Хранимаяпроцедура GetPageProductsByGenre:
115
CREATE PROCEDURE GetPageProductsByGenre (@Start INT, @Count INT,
@GenreID INT)
AS
CREATE TABLE #TempProductsList
(
Num INT IDENTITY (0,1) PRIMARY KEY,
ProductID INT,
ArtistName NVARCHAR(50),
ArtistID INT,
AlbumName NVARCHAR(50),
UnitCost MONEY,
Presence BIT
)
INSERT INTO #TempProductsList
(ProductID, ArtistName, ArtistID, AlbumName, UnitCost, Presence)
SELECT ProductID, ArtistName, Catalogue.ArtistID, AlbumName, UnitCost,
Presence
FROM Catalogue, Artists
WHERE GenreID = @GenreID AND Catalogue.ArtistID = Artists.ArtistID
ORDER BY ArtistName
DECLARE @FromNum INT
DECLARE @ToNum INT
SET @FromNum = @Start
SET @ToNum = @Start + @Count – 1
SELECT ProductID, ArtistName, ArtistID, AlbumName, UnitCost, Presence
FROM #TempProductsList
WHERE Num >= @FromNum AND Num <= @ToNum
GO

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)