Genel Bilgiler

SQL Server
Stored Procedure
⚠️ Devirde Güncellenmeli
23.12.2025 07:15
23.12.2025 16:10

Notlar

Düzenle

Henüz not eklenmemiş.

+ Not ekle

İstatistikler

0
Kod Analizi
24
Satır
4
Kullandığı
3
Kullanan

Kullandığı Nesneler (4)

sp_Funct4
CALLS_SP
CALLS_SP
CALLS_SP
REFERENCES

Kullanan Nesneler (3)

CALLS_SP
CALLS_SP
CALLS_SP

Bağımlılık Ağacı

Etki Ağacı

Tam SQL Kodu

Düzenle
CREATE PROCEDURE [dbo].[usp_siparis_ortalama_eksik]
	@productId INT, @gun INT
AS
BEGIN
	DECLARE @gunsay INT;
	DECLARE @stokTOP INT
	DECLARE @eksikTOP INT;
	DECLARE @ortalama FLOAT;
	DECLARE @ortalamaTOP FLOAT;
	DECLARE @gecenYilSatis INT;
	DECLARE @buYilSatis INT;
	DECLARE @kacGun INT;
	DECLARE @topSat INT;
	SET NOCOUNT ON;
	-- asagida belirtilen tarih hep bir önceki yil olmali
	SELECT @gunsay = DATEDIFF(DAY,'2024-01-01',GETDATE())
	SET @stokTOP = ISNULL((SELECT CASE WHEN (ONHAND-TEMPIN-RESERVED) IS NULL THEN 0 ELSE CAST((ONHAND-TEMPIN-RESERVED) AS INT) END FROM LV_011_08_GNTOTST WHERE INVENNO=0 AND STOCKREF=@productId),0)
	EXECUTE @gecenYilSatis = dbo.usp_gecenyil_satislar @productId, 0
	EXECUTE @buYilSatis = dbo.usp_buyil_satislar @productId, 0
	SET @topSat = ISNULL(@buYilSatis,0) + ISNULL(@gecenYilSatis,0);
	EXEC dbo.sp_Funct4 @topSat, @gunsay, @gun, @ortalamaTOP output
	SET @eksikTOP = @stokTOP - @ortalamaTOP;
	INSERT INTO [UNIVERSALDB].[dbo].[1aUNI_ortalama_eksik] ([STOCKREF],[ORTALAMA],[ORT_EKSIK]) VALUES (@productId,@ortalamaTOP,@eksikTOP)
END

Kodun Çalışma Mantığı (Adım Adım)

Analiz Ekle/Düzenle

Henüz bu nesne için bir analiz girilmemiş.

İlk Analizi Ekle