
/****** Object:  View [dbo].[ViwSellFactorDetail]    Script Date: 21/4/2025 11:49:34 ب.ظ ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO



ALTER VIEW [dbo].[ViwSellFactorDetail]
AS
SELECT DISTINCT 
                Main.ID, Main.Number, Main.OrderDate, Main.OrderTotalID, Main.OrderControlID, Main.OrderDetailID1, Main.OrderDetailID2, Main.Type, Main.Source, Main.BuyerTotalID, Main.BuyerControlID, Main.BuyerDetailID1, Main.BuyerDetailID2, 
                Main.SellerTotalID, Main.SellerControlID, Main.SellerDetailID1, Main.SellerDetailID2, Main.Request, Main.RequestUnit, Main.RequestText, Main.SendDate, Main.ControlA, Main.ControlB, Main.ControlC, Main.ControlD, Main.SellType, 
                Main.SellTime, Main.SellPrice, Main.BuyType, Main.BuyTime, Main.BuyPrice, Main.City, Main.Destination, Main.Address, Main.DocItemID, Main.DocItemRelationID, Main.DocItemType, Main.Description, Main.UpdateDate, Main.Updater, 
                Main.Trailer, COALESCE (Trucks.Weigh, 0) AS TrucksWeight, dbo.FARSI_DATE2(Main.OrderDate) AS OrderDatePer, CAST(0 AS bit) AS Selected, COALESCE (Trucks.DocItemID, 0) AS TrucksDocItemID, Trucks.TruckNo, 
                Trucks.Weigh AS TrucksWeigh, Trucks.DocItemRelationID AS TrucksDocItemRelationID, Trucks.ID AS TrucksID, Main.PrintCount, Trucks.Date AS TrucksDate, COALESCE (Trucks.Status, 0) AS TrucksStatus, COALESCE (Trucks.DocHeaderID, 0) 
                AS TrucksDocHeaderID, Trucks.Description AS TrucksDescription, Trucks.BarName, Trucks.Flags AS TrucksFlags, Main.Status, Trucks.ReportDate, Main.BuyerRef, Trucks.TruckTel, Trucks.Pack, Main.Inserter, Trucks.InsertDate, Main.Barbari, 
                Main.Canceler, Main.PermanentDate, Main.Permanenter, Main.Sender, Main.WareOutID AS MainWareOutID, Main.WareInID AS MainWareInID, Main.PostalCode, Main.FinancialCode, Main.MelliCode, Main.Tel, Main.IsPermanent, 
                Main.SellerPaid, Main.BuyerPaid, Main.CancelDate, Main.ProfitType, Main.BuyPrice2, Main.SellPrice2, Main.WareOrderID, Main.AppData, Main.FactorID AS MainFactorID, Trucks.FactorID AS TrucksFactorID, Trucks.Canceler AS TrucksCanceler, 
                Trucks.CancelDate AS TrucksCancelDate, Trucks.Inserter AS TrucksInserter, Trucks.BSK, Trucks.ShipID, Main.Sign1User, Main.Sign1Date, Main.Sign2User, Main.Sign2Date, Main.Flags, Main.IsFalsi, Main.Zir5Darsad, Main.HaghAmalKari, 
                Main.Type1Code, Main.CityCode, Main.KalaTypeID, Main.DestCode, Trucks.WareOutID AS TrucksWareOutID, Trucks.WareInID AS TrucksWareInID, Trucks.TruckName, Trucks.Unit, Trucks.FDate, Trucks.HamlTotalID, Trucks.HamlControlID, 
                Trucks.HamlDetailID1, Trucks.HamlDetailID2, Trucks.HamlPrice, Trucks.ChaperTotalID, Trucks.ChaperControlID, Trucks.ChaperDetailID1, Trucks.ChaperDetailID2, Trucks.ChaperPrice, Trucks.Updater AS TrucksUpdater, 
                Trucks.UpdateDate AS TrucksUpdateDate, Main.MoreStr0, Main.MoreStr1, Main.MoreStr2, Main.MoreStr3, Main.MoreStr4, Main.MoreStr5, Main.MoreStr6, Main.MoreStr7, Main.MoreStr8, Main.MoreStr9, Main.MoreNum0, Main.MoreNum1, 
                Main.MoreNum2, Main.MoreNum3, Main.MoreNum4, Main.MoreNum5, Main.MoreNum6, Main.MoreNum7, Main.MoreNum8, Main.MoreNum9, Main.MoreDate0, Main.MoreDate1, Main.MoreDate2, Main.MoreDate3, Main.MoreDate4, 
                Main.MoreDate5, Main.MoreDate6, Main.MoreDate7, Main.MoreDate8, Main.MoreDate9, Main.MoreFlags, Main.Cottage, Main.BuyerCostCenter, Main.BuyerProject, Main.SellerCostCenter, Main.SellerProject, Main.BPeygiri, Main.BOstan, 
                Main.BShahr, Main.BPardakhti, Main.BKhShomHesab, Main.BShivPardakht, Main.BShenArzeh, Main.BKhShenasMelli, Main.BKhCodePosti, Main.BKhAddress, Main.BShenVariz, Main.BKhMobile, Main.BKhYekta, Main.BJoft, Main.BTak, 
                Main.BBarnamehNashodeh, Main.BTakhsis, Trucks.BarnameSerial, Trucks.TaghirMaghsad, Trucks.BarnameAvval, Trucks.BarnameSerialAvval, Trucks.DestinationAvval, Trucks.CottageAvval, Trucks.NumberAvval, Trucks.BKharidId, 
                Trucks.BTakhsisId, Main.OrderCode, Main.OrderName, Main.OrderName as OrderTitle, Main.OrderFullCode, Main.OrderFullTitle, Main.BuyerCode, Main.BuyerName, Main.BuyerName as BuyerTitle, 
                Main.BuyerFullCode, Main.BuyerFullTitle, Main.SellerCode, Main.SellerName, Main.SellerName as SellerTitle, Main.SellerFullCode, Main.SellerFullTitle, COALESCE (Trucks.FactorID, 
                0) AS FactorID, COALESCE (Trucks.WareOutID,  0) AS WareOutID, COALESCE (Trucks.WareInID, 0) AS WareInID, COALESCE (Factor.Number, 0) AS FactorNumber, COALESCE (WareIn.Number, 0) 
                AS WareInNumber, COALESCE (WareOut.Number, 0) AS WareOutNumber, Main.AvarezSeller, Main.AvarezBuyer, Main.HamlCode, Main.CompanyCode, Main.FactorLazem, Main.TaghirStatus, Main.VizTotalID, 
                Main.VizControlID, Main.VizDetailID1, Main.VizDetailID2, Main.VizValue, Trucks.ShomNameh, Trucks.TarikhNameh, 
                dbo.FARSI_DATE2(Trucks.Date) as TrucksDatePer, 
                dbo.FARSI_DATE2(Trucks.Date) as TrucksPerDate, 
				Main.SendDatePer, Main.UpdateDatePer,
				dbo.FARSI_DATE2(Trucks.ReportDate) AS ReportDatePer,
				dbo.FARSI_DATE2(Trucks.InsertDate) AS InsertDatePer,
				Main.PermanentDatePer,
				Main.CancelDatePer,
				dbo.FARSI_DATE2(Trucks.CancelDate) AS TrucksCancelDatePer,
				Main.Sign1DatePer,
				Main.Sign2DatePer,
				dbo.FARSI_DATE2(Trucks.UpdateDate) AS TrucksUpdateDatePer,
				dbo.FARSI_DATE2(Trucks.TarikhNameh) AS TarikhNamehPer,
				Main.UnitName as MainUnitName, Units.Title as UnitName,
				Main.RequestTrucksUnit,
				Main.RequestTrucksUnit-TrucksWeight as Diffrence,
				InserterUser.Name+' '+InserterUser.Family as InserterName,
				UpdaterUser.Name+' '+UpdaterUser.Family as UpdaterName,
				CancelerUser.Name+' '+CancelerUser.Family as CancelerName,
				Main.InserterName as MainInserterName,
				Main.UpdaterName as MainUpdaterName,
				Main.CancelerName as MainCancelerName,
				Main.PermanenterName  as MainPermanenterName

FROM      dbo.ViwAccSellFactor AS Main WITH (NOLOCK) 
		LEFT OUTER JOIN dbo.AccSellFactorTrucks AS Trucks WITH (NOLOCK) ON Main.ID = Trucks.SellFactorID 
		LEFT OUTER JOIN dbo.AccFactorDetail AS FacDet WITH (NOLOCK) ON FacDet.ID = COALESCE (Trucks.FactorID, 0) 
		LEFT OUTER JOIN dbo.AccFactor AS Factor WITH (NOLOCK) ON Factor.ID = FacDet.FactorID 
		LEFT OUTER JOIN dbo.AccWarehouse AS WareIn WITH (NOLOCK) ON FacDet.ID = COALESCE (Trucks.WareInID, 0) 
		LEFT OUTER JOIN dbo.AccWarehouse AS WareOut WITH (NOLOCK) ON FacDet.ID = COALESCE (Trucks.WareOutID, 0) 
		LEFT OUTER JOIN dbo.SmallLists AS Units WITH (NOLOCK) On Trucks.Unit = Units.ID
		LEFT OUTER JOIN dbo.SecUser AS InserterUser WITH (NOLOCK) On Trucks.Inserter = InserterUser.ID
		LEFT OUTER JOIN dbo.SecUser AS UpdaterUser WITH (NOLOCK) On Trucks.Updater = UpdaterUser.ID
		LEFT OUTER JOIN dbo.SecUser AS CancelerUser WITH (NOLOCK) On Trucks.Canceler  = CancelerUser.ID
 
GO

/*
COALESCE (Trucks.FactorID, Main.FactorID, 0) 
COALESCE (Trucks.WareInID, Main.WareInID, 0) 
COALESCE (Trucks.WareOutID, Main.WareOutID, 0) 
*/
