Hoş Geldin, Ziyaretçi!

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

dsgn kguard
ROLLET remastered
vsupload kguardedgeakademi
cleopatra legacy

risesun97

not for money but for humanity
.
Katılım
17 Şub 2019
Mesajlar
864
Çözümler
1
Alınan Beğeni
734
Ödül Puanları
93
Konum
Constantinople
Merhaba daha önceki konuda milli piyango sistemini sade olarak paylaşmıştım, sistem sadece sayıyı tutturan kişiyi seçip hediyesini veriyordu. Bu sistemi biraz daha ileri taşıyabilmek adına amortili versiyonunu tarafımca geliştirdim. Sistem sayıyı tutturan şanslı kişiyi bulup hediyesini verdikten sonra amorti açığı yaratmamak için tablodan siliyor, amortisi olan diğer oyuncular da hediyesi verildikten sonra aynı şekilde amorti açığı yaratmamak için tablodan siliniyor.

Önceki versiyonda ki oyuncuların numaralarının tutulduğu tabloyu yeniden yapılandıralım.

Kod:
İçeriği görebilmek için Uye olmanız gerekiyor.

Şanslı numaranın tutulacağı tablo.

Kod:
İçeriği görebilmek için Uye olmanız gerekiyor.

Şanslı kişinin seçileceği prosedürü yapılandıralım.

Kod:
İçeriği görebilmek için Uye olmanız gerekiyor.

Çekiliş yapılacak prosedürü yapılandıralım.

Kod:
İçeriği görebilmek için Uye olmanız gerekiyor.

_AddLogItem 'a eklenecek.

Kod:
İçeriği görebilmek için Uye olmanız gerekiyor.


Amorti kontrolü yapılacak prosedürü yazalım.

Kod:
İçeriği görebilmek için Uye olmanız gerekiyor.

Amorti için parşömen kağıdı _RefObjCommon ve _RefObjItem 'a eklenecek.

Kod:
İçeriği görebilmek için Uye olmanız gerekiyor.

Ekran Alıntısı2.PNG

 
Z

ze bica

USE [SRO_VT_LOG]

GO
/****** Object: StoredProcedure [dbo].[CekilisYap] Script Date: 1.01.2021 18:32:19 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER procedure [dbo].[CekilisYap]

AS

DECLARE @SansliNo varchar(20)
DECLARE @SansliIsim varchar(16)
SELECT TOP 1 @SansliNo=BiletNo FROM _BiletNo ORDER BY NEWID()--Rastgele Seç
SELECT @SansliIsim=CharName FROM _BiletNo WHERE BiletNo=@SansliNo--No İsim Eşleştir
EXEC SRO_VT_SHARD.dbo._ADD_ITEM_EXTERN @SansliIsim,'İtemKodu',1,0 -- 1Adettir 0 İtem +Sıdır
INSERT INTO Piyango_No VALUES (@SansliNo)--Tabloya Ekle
INSERT INTO iLegend_Tool (Service,Type,Message,Date) VALUES (1,'Notice','Şanslı isim ['+@SansliNo+'] numarası ile ['+@SansliIsim+'] `dir',GETDATE())--Bilgi
INSERT INTO iLegend_Tool (Service,Type,Message,Date) VALUES (1,'Notice','Piyango numarası ['+@SansliNo+'] olarak belirlenmiştir.',GETDATE())
INSERT INTO iLegend_Tool (Service,Type,Message,Date) VALUES (1,'Notice','Lütfen amorti kontrolü yapın.',GETDATE())
DELETE FROM _BiletNo WHERE BiletNo=@SansliNo--Talihli Kişiyi Tablodan Sil


1609690519149.png
 

risesun97

not for money but for humanity
.
Katılım
17 Şub 2019
Mesajlar
864
Çözümler
1
Alınan Beğeni
734
Ödül Puanları
93
Konum
Constantinople
USE [SRO_VT_LOG]

GO
/****** Object: StoredProcedure [dbo].[CekilisYap] Script Date: 1.01.2021 18:32:19 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER procedure [dbo].[CekilisYap]

AS

DECLARE @SansliNo varchar(20)
DECLARE @SansliIsim varchar(16)
SELECT TOP 1 @SansliNo=BiletNo FROM _BiletNo ORDER BY NEWID()--Rastgele Seç
SELECT @SansliIsim=CharName FROM _BiletNo WHERE BiletNo=@SansliNo--No İsim Eşleştir
EXEC SRO_VT_SHARD.dbo._ADD_ITEM_EXTERN @SansliIsim,'İtemKodu',1,0 -- 1Adettir 0 İtem +Sıdır
INSERT INTO Piyango_No VALUES (@SansliNo)--Tabloya Ekle
INSERT INTO iLegend_Tool (Service,Type,Message,Date) VALUES (1,'Notice','Şanslı isim ['+@SansliNo+'] numarası ile ['+@SansliIsim+'] `dir',GETDATE())--Bilgi
INSERT INTO iLegend_Tool (Service,Type,Message,Date) VALUES (1,'Notice','Piyango numarası ['+@SansliNo+'] olarak belirlenmiştir.',GETDATE())
INSERT INTO iLegend_Tool (Service,Type,Message,Date) VALUES (1,'Notice','Lütfen amorti kontrolü yapın.',GETDATE())
DELETE FROM _BiletNo WHERE BiletNo=@SansliNo--Talihli Kişiyi Tablodan Sil


Ekli dosyayı görüntüle 10600
You did execute this procedure before. Its okay.
 

DragonSlayer

Old School
Administrator
Katılım
13 May 2019
Mesajlar
3,551
Çözümler
69
Alınan Beğeni
5,854
Ödül Puanları
213
Konum
Lutsk
Teşekkürler..Etkinlik için logger istiyor muhtemelen... ama guard hangisinde verimli?
 

Benzer konular

AdBlock Detected

Anlıyoruz, reklamlar can sıkıcı!

Elbette, reklam engelleme yazılımı reklamları engellemede harika bir iş çıkarır, ancak aynı zamanda web sitemizin faydalı özelliklerini de engeller. En iyi site deneyimi için lütfen AdBlocker'ınızı devre dışı bırakın.

AdBlock'u Devre Dışı Bıraktım.