Genel Bilgiler
SQL Server
Stored Procedure
⚠️ Devirde Güncellenmeli
23.12.2025 07:15
23.12.2025 16:10
İstatistikler
0
Kod Analizi
24
Satır
4
Kullandığı
3
Kullanan
→ Kullandığı Nesneler (4)
CALLS_SP
CALLS_SP
CALLS_SP
REFERENCES
← Kullanan Nesneler (3)
→ Bağımlılık Ağacı
- usp_buyil_satislarCALLS_SP
- usp_gecenyil_satislarCALLS_SP
- sp_Funct4CALLS_SP
- 1aUNI_ortalama_eksikREFERENCES
← Etki Ağacı
- SP_SDR_YUKLECALLS_SP
- sdr_calistirCALLS_SP
- sdr_calistirCALLS_SP
Tam SQL Kodu
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