-- ================================================
-- eMedya (TÜFEKÇİLER ).SQL
-- T-SQL:
-- eMedya (Edip Tüfekçiler).SQL
-- ================================================
ALTER procedure [dbo].[KATEGORI_TIP_SECENEK_EKLE]
(
@KategoriTipList varchar(50)
)
AS
BEGIN
--Gelen Elemanı Parcalara Bölüyoruz
DECLARE @TipID varchar(10),
--Bittiyse Virgüllerin okumaya Devam Etme Gelen Parametreler Bitmiştir Ayrılmıştır
@GidenID int
--GidenID Soldan LTRİMLE Boşluğu varsa onları Kırp
--GidenID RTRIM Sağdan Kırpayım Sağdan İlk Virgulü buluyor
SET @KategoriTipList = LTRIM(RTRIM(@KategoriTipList))+ ','
--@GidenID Yazdığımız , Kacıncı Karakter Olduğunu buluyor İlk Virgulun Karakterini Buluyor
SET @GidenID = CHARINDEX(',', @KategoriTipList, 1)
--Kullanıcılar Tablosundaki Tüm Kullancıları Gertir Ama KategoriID Sırasına Göre Tersten Sırala
--SET TOP 1 FROM Kategori_Admin ORDER BY KategoriSecID desc*/
DECLARE @KategoriSecID int
--Kategori_Admin Tablosundaki Tüm KategoriID Gertir Ama KategoriID En Büyük Deyeri Al#
SELECT @KategoriSecID=MAX(KategoriID) FROM Kategori_Admin
--Replace Virgüldeki Boşluğu Bulup Değiştiriyor
IF REPLACE(@KategoriTipList, ',', '') <> ''
BEGIN
WHILE @GidenID > 0
BEGIN
SET @TipID = LTRIM(RTRIM(LEFT(@KategoriTipList, @GidenID - 1)))
IF @TipID <> ''
BEGIN
--Gelen Kategori_Tip_Secenek KategoriID Kaydettirme
INSERT INTO Kategori_Tip_Secenek(KategoriID,KategoriTipID)
Values (@KategoriSecID,@TipID)
END
--Döngünün sonunda Boşluklu Kısımları Atıcak
SET @KategoriTipList = RIGHT(@KategoriTipList, LEN(@KategoriTipList) - @GidenID)
SET @GidenID = CHARINDEX(',', @KategoriTipList, 1)
END
END
END
SqlParameter[] KategoriTipSecenekParameter = new SqlParameter[1]
{
new SqlParameter("@KategoriTipList",SqlDbType.VarChar),
};
////Değişken Ata
string KategoriTip = "";
//Virgülle gelen değerleri birleştiriyorum virgül koyarak tüm verileri elde ediyorum
foreach (ListItem item in chcKategoriTip.Items)
{
if (item.Selected)
KategoriTip += item.Value + ",";
}
KategoriTip = KategoriTip.Remove(KategoriTip.Length - 1);
//veri tabanımızdaki procedure gönderiyorum
KategoriTipSecenekParameter[0].Value = KategoriTip;
hlp.ExecuteNonQuery("KATEGORI_TIP_SECENEK_EKLE", CommandType.StoredProcedure, KategoriTipSecenekParameter);