PDA

View Full Version : بدست آوردن مانده سفارش كالا بعد از صدور فاكتور در يك ويو



swallow.pa
چهارشنبه 28 تیر 1391, 08:47 صبح
سلام به همه دوستان
دو تا جدول دارم جدول اولي شامل تعداد كالا - كد كالا - و اي دي
جدول دوم شامل تعداد كالا كد كالا و اي دي رفرنس جدول اول چطور مي تونم مانده هاي دو جدول رو كه به هم ارتباط دارن از هم كم كنم
ممنون

ASKaffash
شنبه 31 تیر 1391, 08:09 صبح
سلام
تا اونجائی که متوجه شدم می نویسم :

Select G1.ID,G1.Name,D=G2.Qty-G1.Qty
From G1
Left Join G2 On G2.ID=G1.ID

araz_pashazadeh
چهارشنبه 04 مرداد 1391, 16:50 عصر
من برات 3تا کوئری میزارم من خودم از این روش برای بدست اوردن موجودی انبار استفاده می کنم اگه سئوالی بود من در خدمتم:

بدست اوردن فروش:
SELECT dbo.TBLInvoiceDescriptionSale.InvoiceDescriptionID , SUM(dbo.TBLInvoiceDescriptionSale.Count) AS Count, dbo.TBLProduct.ProductID,
dbo.TBLProduct.ProductName
FROM dbo.TBLInvoiceDescriptionBuy INNER JOIN
dbo.TBLInvoiceDescriptionSale ON dbo.TBLInvoiceDescriptionBuy.InvoiceDescriptionID = dbo.TBLInvoiceDescriptionSale.InvoiceDescriptionID INNER JOIN
dbo.TBLProduct ON dbo.TBLInvoiceDescriptionBuy.ProductId = dbo.TBLProduct.ProductID
GROUP BY dbo.TBLInvoiceDescriptionSale.InvoiceDescriptionID , dbo.TBLProduct.ProductID, dbo.TBLProduct.ProductName
برای خرید:

SELECT dbo.TBLInvoiceDescriptionBuy.InvoiceDescriptionID, dbo.TBLStoreRoom.StoreRoomID, dbo.TBLStoreRoom.Name,
dbo.TBLResponsibleStorage.ResponsibleStorageID, dbo.TBLResponsibleStorage.Name AS ResponsibleStorageName, dbo.TBLProduct.ProductID,
dbo.TBLProduct.ProductName, ISNULL(SUM(dbo.TBLInvoiceDescriptionBuy.Count), 0) AS Count, dbo.TBLInvoiceDescriptionBuy.PriceBuy,
dbo.TBLInvoiceDescriptionBuy.SalesPercent
FROM dbo.TBLProduct INNER JOIN
dbo.TBLInvoiceDescriptionBuy ON dbo.TBLProduct.ProductID = dbo.TBLInvoiceDescriptionBuy.ProductId INNER JOIN
dbo.TBLStoreRoom INNER JOIN
dbo.TBLResponsibleStorage ON dbo.TBLStoreRoom.ResponsibleStorageId = dbo.TBLResponsibleStorage.ResponsibleStorageID ON
dbo.TBLInvoiceDescriptionBuy.StoreRoomId = dbo.TBLStoreRoom.StoreRoomID
GROUP BY dbo.TBLStoreRoom.StoreRoomID, dbo.TBLStoreRoom.Name, dbo.TBLResponsibleStorage.ResponsibleStorageID, dbo.TBLResponsibleStorage.Name,
dbo.TBLProduct.ProductName, dbo.TBLProduct.ProductID, dbo.TBLInvoiceDescriptionBuy.InvoiceDescriptionID, dbo.TBLInvoiceDescriptionBuy.PriceBuy,
dbo.TBLInvoiceDescriptionBuy.SalesPercent

و آخر موجودی انبار که از نتیجه دوتا کوئری بالا استفاده می کنم:

SELECT dbo.ViewStoreRoomBuy.InvoiceDescriptionID, dbo.ViewStoreRoomBuy.StoreRoomID, dbo.ViewStoreRoomBuy.Name,
dbo.ViewStoreRoomBuy.ResponsibleStorageName, dbo.ViewStoreRoomBuy.ProductID, dbo.ViewStoreRoomBuy.ProductName, dbo.ViewStoreRoomBuy.PriceBuy,
dbo.ViewStoreRoomBuy.Count AS BuyCount, dbo.ViewStoreRoomSale.Count AS SaleCount, ISNULL(dbo.ViewStoreRoomBuy.Count - dbo.ViewStoreRoomSale.Count,
dbo.ViewStoreRoomBuy.Count) AS Result, dbo.ViewStoreRoomBuy.SalesPercent
FROM dbo.ViewStoreRoomBuy LEFT OUTER JOIN
dbo.ViewStoreRoomSale ON dbo.ViewStoreRoomBuy.InvoiceDescriptionID = dbo.ViewStoreRoomSale.InvoiceDescriptionID