sozsoft-platform/configs/seeds/sql/object/Inv_V_TransferLineLotStock.sql

16 lines
1.2 KiB
MySQL
Raw Normal View History

2026-10-12 21:43:05 +00:00
-- Stoktan Lot Seçimi diyaloğu: stoktan çıkan satırın kaynak konumundaki bütün lotları (eldeki miktar satırın biriminde) ve
-- satıra atanmış miktarları. BaseId diyaloğun süzdüğü hareket satırıdır; Id satır + stok kaydıdır (kayıt yordamı ikisini ayırır).
-- Atanmış lotun stoğu bitse de (tamamlanmış belge) satır görünür.
CREATE OR ALTER VIEW [dbo].[Inv_V_TransferLineLotStock] AS
SELECT CONCAT(CAST(l.Id AS nvarchar(36)), ':', CAST(s.Id AS nvarchar(36))) AS Id, l.TenantId, l.Id AS BaseId, s.LotNo, s.InDate,
dbo.Inv_F_UomConvert(s.Quantity, s.UomId, l.UomId) AS OnHand, l.UomId,
CAST(CASE WHEN z.Quantity IS NULL THEN 0 ELSE 1 END AS bit) AS IsSelected, z.Quantity AS SelectedQuantity
FROM Inv_T_TransferLine l
INNER JOIN Inv_T_Transfer t ON t.Id = l.TransferId
INNER JOIN Inv_T_Stock s ON s.LocationId = t.SourceLocationId AND s.ProductId = l.ProductId AND s.LotNo <> '' AND s.IsDeleted = 0
LEFT JOIN (SELECT TransferLineId, LotNo, SUM(Quantity) AS Quantity
FROM Inv_T_TransferLineLot
WHERE IsDeleted = 0
GROUP BY TransferLineId, LotNo) z ON z.TransferLineId = l.Id AND z.LotNo = s.LotNo
WHERE l.IsDeleted = 0 AND (s.Quantity > 0 OR z.Quantity IS NOT NULL)