24 lines
1.9 KiB
MySQL
24 lines
1.9 KiB
MySQL
|
|
-- Planlama (App.Prc.MaterialRequestPlan): onaylanmış (satınalmada ilerleyen dahil) talebin bekleyen ve planlanacak miktarı kalan kalemleri.
|
|||
|
|
-- Stok bütün iç konumların toplamıdır (kalemin biriminde); DueState termin süzgecidir (Late / Week = 7 gün içinde / Later). Taslak Plan,
|
|||
|
|
-- Planla diyaloğunda girilip henüz onaylanmamış dağıtımın toplamıdır (Prc_T_MaterialRequestPlanLine).
|
|||
|
|
CREATE OR ALTER VIEW [dbo].[Prc_V_MaterialRequestPlan] AS
|
|||
|
|
SELECT i.Id, i.TenantId, i.MaterialRequestId, r.RequestNo, r.Priority, r.RequesterUserId, r.BranchId, r.DepartmentId, r.WarehouseId, r.LocationId,
|
|||
|
|
r.RequestDate, i.ProductId, p.CategoryId, i.Quantity, i.UomId, i.DueDate,
|
|||
|
|
CASE WHEN i.DueDate < CAST(GETDATE() AS date) THEN 'Late'
|
|||
|
|
WHEN i.DueDate <= DATEADD(day, 7, CAST(GETDATE() AS date)) THEN 'Week' ELSE 'Later' END AS DueState,
|
|||
|
|
i.RequestReason,
|
|||
|
|
pl.PurchaseQuantity, pl.TransferQuantity, pl.RemainingQuantity, ISNULL(st.Quantity, 0) AS StockQuantity,
|
|||
|
|
(SELECT SUM(x.Quantity) FROM Prc_T_MaterialRequestPlanLine x WHERE x.MaterialRequestItemId = i.Id AND x.IsDeleted = 0) AS DraftQuantity,
|
|||
|
|
i.IsDeleted
|
|||
|
|
FROM Prc_T_MaterialRequestItem i
|
|||
|
|
INNER JOIN Prc_T_MaterialRequest r ON r.Id = i.MaterialRequestId
|
|||
|
|
INNER JOIN Prc_V_MaterialRequestItemPlan pl ON pl.Id = i.Id
|
|||
|
|
LEFT JOIN Inv_T_Product p ON p.Id = i.ProductId
|
|||
|
|
OUTER APPLY (SELECT SUM(c.Quantity) AS Quantity
|
|||
|
|
FROM (SELECT dbo.Inv_F_UomConvert(s.Quantity, s.UomId, i.UomId) AS Quantity
|
|||
|
|
FROM Inv_T_Stock s
|
|||
|
|
INNER JOIN Inv_T_Location l ON l.Id = s.LocationId AND l.LocationType = 'Internal'
|
|||
|
|
WHERE s.ProductId = i.ProductId AND s.IsDeleted = 0) c) st
|
|||
|
|
WHERE i.IsDeleted = 0 AND r.IsDeleted = 0 AND i.LineStatus = 'Waiting' AND pl.RemainingQuantity > 0
|
|||
|
|
AND r.ApprovalStatus IN (N'Onaylandı', N'Teklif Talebi', N'Teklif Talebi Gönderildi', N'Satınalma Siparişi')
|