Convert this linq query into SQL Server stored procedure

Viewed 20
search result = (from e in db.ims_Rcv_Txn_Header
                 join lt1 in db.ims_locationType on e.LocTypeID equals lt1.LocTypeID into loctypes
                 from lt in loctypes.DefaultIfEmpty()
                 join lo in db.ims_location on e.LocID equals lo.LocID into locs
                 from l in locs.DefaultIfEmpty()
                 join v1 in db.vendors on e.Vendor equals v1.VendID into vends
                 from v in vends.DefaultIfEmpty()
                 join od in db.ordDivs on e.HeaderID equals od.OrdDivID into ods
                 from o in ods.DefaultIfEmpty()
                 join hdrs in db.ordHdrs on o.OrdID equals hdrs.OrdID into hds
                 from hd in hds.DefaultIfEmpty()
                 join po in db.ims_POHeader on e.HeaderID equals po.POHeaderID into heads
                 from h in heads.DefaultIfEmpty()
                 where (e.RcvDate >= FilterObj.FromDate && e.RcvDate <= FilterObj.ToDate) 

                 select new custom_Model
                            {
                                RTHeaderID = e.RTHeaderID,
                                Descr = e.Descr,
                                HeaderID = e.HeaderID,
                                Height = e.Height ?? 0,
                                CreatedBy = e.CreatedBy,
                                CreatedDate = e.CreatedDate,
                                Length = e.Length ?? 0,
                                LocID = e.LocID,
                                LocTypeID = e.LocTypeID,
                                PieceQty = e.PieceQty ?? 0,
                                RcvDate = e.RcvDate,
                                OrdDate = e.OrderDate,
                                vendors = (from ims in db.ims_Rcv_Txn_Header
                                           join os in db.ordLineSubs on ims.RTHeaderID equals os.RTHeaderID
                                           join ol in db.ordLines on os.OrdLineID equals ol.OrdLineID
                                           join v in db.vendors on ol.VendID equals v.VendID
                                           where ims.RTHeaderID == e.RTHeaderID
                                           select v.Company).ToList(),
                                Client = e.CmpID,
                                RcvNumber = e.RcvNumber,
                                RcvType = e.RcvType,
                                TotalCbm = e.TotalCbm ?? 0,
                                TotalKgs = e.TotalKgs ?? 0,
                                TotalLbs = e.TotalLbs ?? 0,
                                Volume = e.Volume ?? 0,
                                WeightKgs = e.WeightKgs ?? 0,
                                WeightLbs = e.WeightLbs ?? 0,
                                Width = e.Width ?? 0,
                                Status = e.Status,
                                FileName = e.FileName,
                                FileType = e.FileType,
                                Location = e.RcvType == "JIT" ? e.OCaddress : l.LocName,
                                files = db.ims_CustRcvFile.Where(f => f.RTHeaderID == e.RTHeaderID).ToList()
                            }).ToList();
0 Answers
Related