Hi! Could we please enable some services and cookies to improve your experience and our website?

SQLize | PHPize | SQLtest

Online Sandbox for SQL and PHP: Write, Run, Test, and Share SQL Queries and PHP Code

A A A
Login    Share code      Blog   FAQ
Copy Format Clear
USE [MY_DELFI_SFA] GO /****** Object: StoredProcedure [dbo].[dm_sp_dm_Sales#Analysis#Daily#TEST] Script Date: 18/9/2023 3:06:07 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER proc [dbo].[dm_sp_dm_Sales#Analysis#Daily#TEST] @UserId int, @SFAUserID int, @DistribId int, --@DataType nvarchar(10), --@Month int, --@Year int, --@YearMonth int, -- 202201 @StartDate datetime, -- 2021-02-01 --@EndDate datetime, -- 2022-01-31 @CustCode nvarchar(255), @ShipToCode nvarchar(255), @ZoneID bigint, @RegionID bigint, @StateID int, @AreaID int, @ChainID int, @ChannelID int, @SubChainID int, @SubChannelID int, @GradeID int, --@SalesRoute bigint, @SalesRep bigint, @SKU nvarchar(255), @AgencyID int, @BrandID int, @CategoryID int, @SubBrandID int, @SubCategoryID int, @PackTypeID int, @FunctionID int, @PackSizeID int, @ShadeID int, @MarketingGrpID int, @SubMarketingGrpID int, @ParentSKUCode nvarchar(255), @GrpByLevel1 nvarchar(255), @GrpByLevel2 nvarchar(255), @GrpByLevel3 nvarchar(255) as set nocount on --Declare @DaysOfMonth As Integer = 0 --If @Year <> -1 and @Month <> -1 -- Set @DaysOfMonth = DAY(EOMONTH(Convert(Datetime, Convert(Varchar(10), @Year) + '-' + Convert(Varchar(10), @Month) + '-' + '01'))) IF @GrpByLevel1 <> '' and @GrpByLevel2 <> ''and @GrpByLevel3 <> '' Begin --Declare @GrpByLevel1 As nvarchar(255) = 'Customer'; --Declare @GrpByLevel2 As nvarchar(255) = 'Customer'; --Declare @GrpByLevel3 As nvarchar(255) = 'Customer'; --Declare @StartDate as datetime = Convert(Datetime, '2023-05-02'); Select ROW_NUMBER() OVER ( ORDER BY TableB.[Grouplevel1], TableB.[Grouplevel2], TableB.[Grouplevel3] ) RowNum, TableB.[Grouplevel1], TableB.[Grouplevel2], TableB.[Grouplevel3], '' 'ITEM_CODE', '' 'ITEM_DESCRIPTION', ISNULL(TableB.NET_SALES_AMT,0) AS [SALES_AMT], ISNULL(TableB.NET_SALES_QTY,0) As [SALES_QTY], '' As [UOM], ISNULL(TableB.FOC_AMT,0) AS [FOC_AMT], ISNULL(TableB.FOC_QTY,0) As [FOC_QTY], '' As [UOM1], ISNULL(TableB.RETURN_SALES_AMT,0) AS [RETURN_SALES_AMT], ISNULL(TableB.RETURN_SALES_QTY,0) As [RETURN_SALES_QTY], '' As [UOM2], ISNULL((TableB.NET_SALES_AMT + TableB.RETURN_SALES_AMT),0) AS [NET_AMT], ISNULL((TableB.NET_SALES_QTY + TableB.RETURN_SALES_QTY),0) AS [NET_QTY] From ( Select [Grouplevel1], [Grouplevel2], [Grouplevel3] , ISNULL(TableA.RETURN_SALES_AMT,0) As [RETURN_SALES_AMT] , ISNULL(TableA.RETURN_SALES_QTY,0) As [RETURN_SALES_QTY] , '' AS [UOM] , ISNULL(( Select ISNULL([NET_SALES_AMT], 0) From ( Select SUM([NET_SALES_AMT]) As 'NET_SALES_AMT', ITEM_CODE, ITEM_DESCRIPTION, '' AS [UOM], Case When @GrpByLevel1 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel1 = 'Ship To' Then [Ship To] When @GrpByLevel1 = 'Bill-To' Then [Zone] When @GrpByLevel1 = 'Region' Then [Region] When @GrpByLevel1 = 'State' Then [State] When @GrpByLevel1 = 'Area' Then [Area] When @GrpByLevel1 = 'Chain' Then [Chain] When @GrpByLevel1 = 'Channel' Then [Channel] When @GrpByLevel1 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel1 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel1 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel1 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel1 = 'SKU' Then [SKU] When @GrpByLevel1 = 'Agency' Then [Agency] When @GrpByLevel1 = 'Brand' Then [Brand] When @GrpByLevel1 = 'Category' Then [Category] When @GrpByLevel1 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel1 = 'Sub Category' Then [Sub Category] When @GrpByLevel1 = 'Type' Then [Type] When @GrpByLevel1 = 'Function' Then [Function] When @GrpByLevel1 = 'Size' Then [Size] When @GrpByLevel1 = 'Shade' Then [Shade] When @GrpByLevel1 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel1 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End AS [Grouplevel1], Case When @GrpByLevel2 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel2 = 'Ship To' Then [Ship To] When @GrpByLevel2 = 'Bill-To' Then [Zone] When @GrpByLevel2 = 'Region' Then [Region] When @GrpByLevel2 = 'State' Then [State] When @GrpByLevel2 = 'Area' Then [Area] When @GrpByLevel2 = 'Chain' Then [Chain] When @GrpByLevel2 = 'Channel' Then [Channel] When @GrpByLevel2 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel2 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel2 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel2 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel2 = 'SKU' Then [SKU] When @GrpByLevel2 = 'Agency' Then [Agency] When @GrpByLevel2 = 'Brand' Then [Brand] When @GrpByLevel2 = 'Category' Then [Category] When @GrpByLevel2 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel2 = 'Sub Category' Then [Sub Category] When @GrpByLevel2 = 'Type' Then [Type] When @GrpByLevel2 = 'Function' Then [Function] When @GrpByLevel2 = 'Size' Then [Size] When @GrpByLevel2 = 'Shade' Then [Shade] When @GrpByLevel2 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel2 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End AS [Grouplevel2], Case When @GrpByLevel3 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel3 = 'Ship To' Then [Ship To] When @GrpByLevel3 = 'Bill-To' Then [Zone] When @GrpByLevel3 = 'Region' Then [Region] When @GrpByLevel3 = 'State' Then [State] When @GrpByLevel3 = 'Area' Then [Area] When @GrpByLevel3 = 'Chain' Then [Chain] When @GrpByLevel3 = 'Channel' Then [Channel] When @GrpByLevel3 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel3 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel3 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel3 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel3 = 'SKU' Then [SKU] When @GrpByLevel3 = 'Agency' Then [Agency] When @GrpByLevel3 = 'Brand' Then [Brand] When @GrpByLevel3 = 'Category' Then [Category] When @GrpByLevel3 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel3 = 'Sub Category' Then [Sub Category] When @GrpByLevel3 = 'Type' Then [Type] When @GrpByLevel3 = 'Function' Then [Function] When @GrpByLevel3 = 'Size' Then [Size] When @GrpByLevel3 = 'Shade' Then [Shade] When @GrpByLevel3 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel3 = 'Sub Marketing Group' Then [Sub Marketing Group] End AS [Grouplevel3] From ( Select ISNULL(a.Bill_Type_Description,'') 'Billing_Type' ,ISNULL(a.Bill_Type_Description,'') 'Bill_Type_Description' ,ISNULL(ml.[Name],'') 'BILL_TO_NAME' ,ISNULL(a.Sold_to_party,'') 'Bill_To_CustomerCode' ,ISNULL(a.Material,'') 'ITEM_CODE' ,ISNULL(mq.Quest_Desc,'') 'ITEM_DESCRIPTION' ,ISNULL(a.Sales_unit,'') 'UOM' ,ISNULL(a.Ship_to_party,'') 'Ship To' ,ISNULL(Z.[Name],'') 'Zone' ,ISNULL(RE.[Name],'') 'Region' ,ISNULL(ST.[Desc],'') 'State' ,ISNULL(AR.[Name],'') 'Area' ,ISNULL(CC.[Name],'') 'Chain' ,ISNULL(CH.[Name],'') 'Channel' ,ISNULL(subchain.[Name],'') 'Sub Chain' ,ISNULL(subch.[Name],'') 'Sub Channel' ,ISNULL(G.[Name],'') 'Grade' ,ISNULL(a.SALES_PERSON,'') 'Sales Rep' ,ISNULL(mq.Quest_Desc,'') 'SKU' ,ISNULL(mqf1.[Name],'') 'Agency' ,ISNULL(mqf2.[Name],'') 'Brand' ,ISNULL(mqf3.[Name],'') 'Category' ,ISNULL(mqf9.[Name],'') 'Sub Brand' ,ISNULL(mqf8.[Name],'') 'Sub Category' ,ISNULL(mqf4.[Name],'') 'Type' ,ISNULL(mqf5.[Name],'') 'Function' ,ISNULL(mqf6.[Name],'') 'Size' ,ISNULL(mqf7.[Name],'') 'Shade' ,ISNULL(mqf10.[Name],'')'Marketing Group' ,ISNULL(mqf11.[Name],'') 'Sub Marketing Group' ,convert(decimal(18,2) ,a.Price) 'NET_SALES_AMT' ,convert(decimal(18,2) ,a.[Bill_Qty]) 'NET_SALES_QTY' ,a.Billing_date 'INVOICE_DATE' -- YYYY-MM-DD ,DAY(CONVERT(DATETIME, a.Billing_date)) 'DAY' FROM dbo.DM_ORDER_SALES_REPORT a with (nolock) LEFT OUTER JOIN MAIN_QUESTION mq on mq.Quest_Code = a.Material -- SKU LEFT OUTER JOIN MAIN_LOCATION ml on ML.ML_NO = a.Sold_to_party LEFT JOIN Zone Z ON Z.Zone_ID = ml.Zone -- Zone LEFT JOIN Region RE ON RE.ID = ml.Region -- Region LEFT JOIN STATE ST ON ST.State_ID = ml.State -- State LEFT JOIN AREA AR ON AR.ID = ml.Area -- Area LEFT JOIN CHAIN CC ON CC.Chain_ID = ml.Chain -- Chain LEFT JOIN CHANNEL CH ON CH.Channel_ID = ml.Channel -- Channel LEFT JOIN GRADE G ON G.Grade_ID = ml.Grade -- Grade LEFT JOIN SUB_CHAIN subchain ON subchain.SubChain_ID = ml.SubChain_ID -- SubChain LEFT JOIN SUB_CHANNEL subch ON subch.SubChannel_ID = ml.SubChannel_ID -- SubChannel --LEFT OUTER JOIN MAIN_QUESTION mq on mq.Quest_ID = b.Quest_ID -- SKU LEFT JOIN dbo.MAIN_QUESTION_FILTER1 mqf1 ON mq.Filter_1 = mqf1.Code -- Manufacture LEFT JOIN dbo.MAIN_QUESTION_FILTER2 mqf2 ON mq.Filter_2 = mqf2.Code -- Brand LEFT JOIN dbo.MAIN_QUESTION_FILTER3 mqf3 ON mq.Filter_3 = mqf3.Code -- Category LEFT JOIN dbo.MAIN_QUESTION_FILTER4 mqf4 ON mq.Filter_4 = mqf4.Code -- Type LEFT JOIN dbo.MAIN_QUESTION_FILTER5 mqf5 ON mq.Filter_5 = mqf5.Code -- [Function] LEFT JOIN dbo.MAIN_QUESTION_FILTER6 mqf6 ON mq.Filter_6 = mqf6.Code -- Size LEFT JOIN dbo.MAIN_QUESTION_FILTER7 mqf7 ON mq.Filter_7 = mqf7.Code -- Shade LEFT JOIN dbo.MAIN_QUESTION_FILTER8 mqf8 ON mq.Filter_8 = mqf8.Code -- SubCatgory LEFT JOIN dbo.MAIN_QUESTION_FILTER9 mqf9 ON mq.Filter_9 = mqf9.Code -- SubBrand LEFT JOIN dbo.MAIN_QUESTION_FILTER10 mqf10 ON mq.Filter_10 = mqf10.Code -- MktGroup LEFT JOIN dbo.MAIN_QUESTION_FILTER11 mqf11 ON mq.Filter_11 = mqf11.Code --SubMktGroup --LEFT JOIN ROUTE_USER_ASSIGNMENT rua on rua.Route_ID = ml.ML_ID -- 'SalesRep' --LEFT JOIN USER_LOGIN ul ON ul.[User_ID] = rua.[User_ID] Where CONVERT(DATETIME, a.Billing_date) = @StartDate AND (a.Sold_to_party IN (Select Value from STRING_SPLIT(@CustCode,',')) OR @CustCode = '') AND (a.Ship_to_party IN (@ShipToCode) OR @ShipToCode = '') AND ( Z.Zone_ID IN (@ZoneID) OR @ZoneID = -1) AND ( RE.ID IN (@RegionID) OR @RegionID = -1) AND ( ST.State_ID IN (@StateID) OR @StateID = -1) AND ( AR.ID IN (@AreaID) OR @AreaID = -1) AND ( CC.Chain_ID IN (@ChainID) OR @ChainID = -1) AND ( CH.Channel_ID IN (@ChannelID) OR @ChannelID = -1) AND ( subchain.SubChain_ID IN (@SubChainID) OR @SubChainID = -1) AND ( subch.SubChannel_ID IN (@SubChannelID) OR @SubChannelID = -1) AND ( G.Grade_ID IN (@GradeID) OR @GradeID = -1) AND ( a.USER_ID IN (@SalesRep) OR @SalesRep = -1) AND ( mq.Quest_Code IN (Select Value from STRING_SPLIT(@SKU,',')) OR @SKU = '') AND ( mqf1.ID IN (@AgencyID) OR @AgencyID = -1) AND ( mqf2.ID IN (@BrandID) OR @BrandID = -1) AND ( mqf3.ID IN (@CategoryID) OR @CategoryID = -1) AND ( mqf9.ID IN (@SubBrandID) OR @SubBrandID = -1) AND ( mqf8.ID IN (@SubCategoryID) OR @SubCategoryID = -1) AND ( mqf4.ID IN (@PackTypeID) OR @PackTypeID = -1) AND ( mqf5.ID IN (@FunctionID) OR @FunctionID = -1) AND ( mqf6.ID IN (@PackSizeID) OR @PackSizeID = -1) AND ( mqf7.ID IN (@ShadeID) OR @ShadeID = -1) AND ( mqf10.ID IN (@MarketingGrpID) OR @MarketingGrpID = -1) AND ( mqf11.ID IN (@SubMarketingGrpID) OR @SubMarketingGrpID = -1) --AND (a.Product_hierarchy = @ParentSKUCode OR @ParentSKUCode = '') ) TblCC Where TblCC.Billing_Type Not In ('ZCC2','ZCN2','ZCN4','ZCN5','ZCN6') Group By Case When @GrpByLevel1 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel1 = 'Ship To' Then [Ship To] When @GrpByLevel1 = 'Bill-To' Then [Zone] When @GrpByLevel1 = 'Region' Then [Region] When @GrpByLevel1 = 'State' Then [State] When @GrpByLevel1 = 'Area' Then [Area] When @GrpByLevel1 = 'Chain' Then [Chain] When @GrpByLevel1 = 'Channel' Then [Channel] When @GrpByLevel1 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel1 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel1 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel1 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel1 = 'SKU' Then [SKU] When @GrpByLevel1 = 'Agency' Then [Agency] When @GrpByLevel1 = 'Brand' Then [Brand] When @GrpByLevel1 = 'Category' Then [Category] When @GrpByLevel1 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel1 = 'Sub Category' Then [Sub Category] When @GrpByLevel1 = 'Type' Then [Type] When @GrpByLevel1 = 'Function' Then [Function] When @GrpByLevel1 = 'Size' Then [Size] When @GrpByLevel1 = 'Shade' Then [Shade] When @GrpByLevel1 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel1 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End , Case When @GrpByLevel2 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel2 = 'Ship To' Then [Ship To] When @GrpByLevel2 = 'Bill-To' Then [Zone] When @GrpByLevel2 = 'Region' Then [Region] When @GrpByLevel2 = 'State' Then [State] When @GrpByLevel2 = 'Area' Then [Area] When @GrpByLevel2 = 'Chain' Then [Chain] When @GrpByLevel2 = 'Channel' Then [Channel] When @GrpByLevel2 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel2 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel2 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel2 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel2 = 'SKU' Then [SKU] When @GrpByLevel2 = 'Agency' Then [Agency] When @GrpByLevel2 = 'Brand' Then [Brand] When @GrpByLevel2 = 'Category' Then [Category] When @GrpByLevel2 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel2 = 'Sub Category' Then [Sub Category] When @GrpByLevel2 = 'Type' Then [Type] When @GrpByLevel2 = 'Function' Then [Function] When @GrpByLevel2 = 'Size' Then [Size] When @GrpByLevel2 = 'Shade' Then [Shade] When @GrpByLevel2 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel2 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End , Case When @GrpByLevel3 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel3 = 'Ship To' Then [Ship To] When @GrpByLevel3 = 'Bill-To' Then [Zone] When @GrpByLevel3 = 'Region' Then [Region] When @GrpByLevel3 = 'State' Then [State] When @GrpByLevel3 = 'Area' Then [Area] When @GrpByLevel3 = 'Chain' Then [Chain] When @GrpByLevel3 = 'Channel' Then [Channel] When @GrpByLevel3 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel3 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel3 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel3 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel3 = 'SKU' Then [SKU] When @GrpByLevel3 = 'Agency' Then [Agency] When @GrpByLevel3 = 'Brand' Then [Brand] When @GrpByLevel3 = 'Category' Then [Category] When @GrpByLevel3 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel3 = 'Sub Category' Then [Sub Category] When @GrpByLevel3 = 'Type' Then [Type] When @GrpByLevel3 = 'Function' Then [Function] When @GrpByLevel3 = 'Size' Then [Size] When @GrpByLevel3 = 'Shade' Then [Shade] When @GrpByLevel3 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel3 = 'Sub Marketing Group' Then [Sub Marketing Group] End, TblCC.ITEM_CODE, TblCC.ITEM_DESCRIPTION,[UOM] ) TableE Where TableE.Grouplevel1 = TableA.Grouplevel1 AND TableE.Grouplevel2 = TableA.Grouplevel2 AND TableE.Grouplevel3 = TableA.Grouplevel3 ),0) As 'NET_SALES_AMT' , ISNULL(( Select ISNULL([NET_SALES_QTY],0) From ( Select SUM([NET_SALES_QTY]) As 'NET_SALES_QTY', ITEM_CODE, ITEM_DESCRIPTION, '' AS [UOM], Case When @GrpByLevel1 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel1 = 'Ship To' Then [Ship To] When @GrpByLevel1 = 'Bill-To' Then [Zone] When @GrpByLevel1 = 'Region' Then [Region] When @GrpByLevel1 = 'State' Then [State] When @GrpByLevel1 = 'Area' Then [Area] When @GrpByLevel1 = 'Chain' Then [Chain] When @GrpByLevel1 = 'Channel' Then [Channel] When @GrpByLevel1 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel1 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel1 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel1 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel1 = 'SKU' Then [SKU] When @GrpByLevel1 = 'Agency' Then [Agency] When @GrpByLevel1 = 'Brand' Then [Brand] When @GrpByLevel1 = 'Category' Then [Category] When @GrpByLevel1 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel1 = 'Sub Category' Then [Sub Category] When @GrpByLevel1 = 'Type' Then [Type] When @GrpByLevel1 = 'Function' Then [Function] When @GrpByLevel1 = 'Size' Then [Size] When @GrpByLevel1 = 'Shade' Then [Shade] When @GrpByLevel1 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel1 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End AS [Grouplevel1], Case When @GrpByLevel2 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel2 = 'Ship To' Then [Ship To] When @GrpByLevel2 = 'Bill-To' Then [Zone] When @GrpByLevel2 = 'Region' Then [Region] When @GrpByLevel2 = 'State' Then [State] When @GrpByLevel2 = 'Area' Then [Area] When @GrpByLevel2 = 'Chain' Then [Chain] When @GrpByLevel2 = 'Channel' Then [Channel] When @GrpByLevel2 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel2 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel2 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel2 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel2 = 'SKU' Then [SKU] When @GrpByLevel2 = 'Agency' Then [Agency] When @GrpByLevel2 = 'Brand' Then [Brand] When @GrpByLevel2 = 'Category' Then [Category] When @GrpByLevel2 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel2 = 'Sub Category' Then [Sub Category] When @GrpByLevel2 = 'Type' Then [Type] When @GrpByLevel2 = 'Function' Then [Function] When @GrpByLevel2 = 'Size' Then [Size] When @GrpByLevel2 = 'Shade' Then [Shade] When @GrpByLevel2 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel2 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End AS [Grouplevel2], Case When @GrpByLevel3 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel3 = 'Ship To' Then [Ship To] When @GrpByLevel3 = 'Bill-To' Then [Zone] When @GrpByLevel3 = 'Region' Then [Region] When @GrpByLevel3 = 'State' Then [State] When @GrpByLevel3 = 'Area' Then [Area] When @GrpByLevel3 = 'Chain' Then [Chain] When @GrpByLevel3 = 'Channel' Then [Channel] When @GrpByLevel3 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel3 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel3 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel3 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel3 = 'SKU' Then [SKU] When @GrpByLevel3 = 'Agency' Then [Agency] When @GrpByLevel3 = 'Brand' Then [Brand] When @GrpByLevel3 = 'Category' Then [Category] When @GrpByLevel3 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel3 = 'Sub Category' Then [Sub Category] When @GrpByLevel3 = 'Type' Then [Type] When @GrpByLevel3 = 'Function' Then [Function] When @GrpByLevel3 = 'Size' Then [Size] When @GrpByLevel3 = 'Shade' Then [Shade] When @GrpByLevel3 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel3 = 'Sub Marketing Group' Then [Sub Marketing Group] End AS [Grouplevel3] From ( Select ISNULL(a.Bill_Type_Description,'') 'Billing_Type' ,ISNULL(a.Bill_Type_Description,'') 'Bill_Type_Description' ,ISNULL(ml.[Name],'') 'BILL_TO_NAME' ,ISNULL(a.Sold_to_party,'') 'Bill_To_CustomerCode' ,ISNULL(a.Material,'') 'ITEM_CODE' ,ISNULL(mq.Quest_Desc,'') 'ITEM_DESCRIPTION' ,ISNULL(a.Sales_unit,'') 'UOM' ,ISNULL(a.Ship_to_party,'') 'Ship To' ,ISNULL(Z.[Name],'') 'Zone' ,ISNULL(RE.[Name],'') 'Region' ,ISNULL(ST.[Desc],'') 'State' ,ISNULL(AR.[Name],'') 'Area' ,ISNULL(CC.[Name],'') 'Chain' ,ISNULL(CH.[Name],'') 'Channel' ,ISNULL(subchain.[Name],'') 'Sub Chain' ,ISNULL(subch.[Name],'') 'Sub Channel' ,ISNULL(G.[Name],'') 'Grade' ,ISNULL(a.SALES_PERSON,'') 'Sales Rep' ,ISNULL(mq.Quest_Desc,'') 'SKU' ,ISNULL(mqf1.[Name],'') 'Agency' ,ISNULL(mqf2.[Name],'') 'Brand' ,ISNULL(mqf3.[Name],'') 'Category' ,ISNULL(mqf9.[Name],'') 'Sub Brand' ,ISNULL(mqf8.[Name],'') 'Sub Category' ,ISNULL(mqf4.[Name],'') 'Type' ,ISNULL(mqf5.[Name],'') 'Function' ,ISNULL(mqf6.[Name],'') 'Size' ,ISNULL(mqf7.[Name],'') 'Shade' ,ISNULL(mqf10.[Name],'')'Marketing Group' ,ISNULL(mqf11.[Name],'') 'Sub Marketing Group' ,convert(decimal(18,2) ,a.Price) 'NET_SALES_AMT' ,convert(decimal(18,2) ,a.[Bill_Qty]) 'NET_SALES_QTY' ,a.Billing_date 'INVOICE_DATE' -- YYYY-MM-DD ,DAY(CONVERT(DATETIME, a.Billing_date)) 'DAY' FROM dbo.DM_ORDER_SALES_REPORT a with (nolock) --left outer join VW_INTEG_CUST#FILTER ml on ML.ML_NO = a.Sold_to_party --left outer join VW_INTEG_SKU#DMS mq on mq.Quest_Code = a.Material LEFT OUTER JOIN MAIN_QUESTION mq on mq.Quest_Code = a.Material -- SKU LEFT OUTER JOIN MAIN_LOCATION ml on ML.ML_NO = a.Sold_to_party --LEFT OUTER JOIN [dbo].[SFA_SO_RESULTS] b on b.Trans_ID = a.OrderNo_M1 AND b.Quest_ID = mq.Quest_ID LEFT JOIN Zone Z ON Z.Zone_ID = ml.Zone -- Zone LEFT JOIN Region RE ON RE.ID = ml.Region -- Region LEFT JOIN STATE ST ON ST.State_ID = ml.State -- State LEFT JOIN AREA AR ON AR.ID = ml.Area -- Area LEFT JOIN CHAIN CC ON CC.Chain_ID = ml.Chain -- Chain LEFT JOIN CHANNEL CH ON CH.Channel_ID = ml.Channel -- Channel LEFT JOIN GRADE G ON G.Grade_ID = ml.Grade -- Grade LEFT JOIN SUB_CHAIN subchain ON subchain.SubChain_ID = ml.SubChain_ID -- SubChain LEFT JOIN SUB_CHANNEL subch ON subch.SubChannel_ID = ml.SubChannel_ID -- SubChannel --LEFT OUTER JOIN MAIN_QUESTION mq on mq.Quest_ID = b.Quest_ID -- SKU LEFT JOIN dbo.MAIN_QUESTION_FILTER1 mqf1 ON mq.Filter_1 = mqf1.Code -- Manufacture LEFT JOIN dbo.MAIN_QUESTION_FILTER2 mqf2 ON mq.Filter_2 = mqf2.Code -- Brand LEFT JOIN dbo.MAIN_QUESTION_FILTER3 mqf3 ON mq.Filter_3 = mqf3.Code -- Category LEFT JOIN dbo.MAIN_QUESTION_FILTER4 mqf4 ON mq.Filter_4 = mqf4.Code -- Type LEFT JOIN dbo.MAIN_QUESTION_FILTER5 mqf5 ON mq.Filter_5 = mqf5.Code -- [Function] LEFT JOIN dbo.MAIN_QUESTION_FILTER6 mqf6 ON mq.Filter_6 = mqf6.Code -- Size LEFT JOIN dbo.MAIN_QUESTION_FILTER7 mqf7 ON mq.Filter_7 = mqf7.Code -- Shade LEFT JOIN dbo.MAIN_QUESTION_FILTER8 mqf8 ON mq.Filter_8 = mqf8.Code -- SubCatgory LEFT JOIN dbo.MAIN_QUESTION_FILTER9 mqf9 ON mq.Filter_9 = mqf9.Code -- SubBrand LEFT JOIN dbo.MAIN_QUESTION_FILTER10 mqf10 ON mq.Filter_10 = mqf10.Code -- MktGroup LEFT JOIN dbo.MAIN_QUESTION_FILTER11 mqf11 ON mq.Filter_11 = mqf11.Code --SubMktGroup --LEFT JOIN ROUTE_USER_ASSIGNMENT rua on rua.Route_ID = ml.ML_ID -- 'SalesRep' --LEFT JOIN USER_LOGIN ul ON ul.[User_ID] = rua.[User_ID] Where CONVERT(DATETIME, a.Billing_date) = @StartDate AND (a.Sold_to_party IN (Select Value from STRING_SPLIT(@CustCode,',')) OR @CustCode = '') AND (a.Ship_to_party IN (@ShipToCode) OR @ShipToCode = '') AND ( Z.Zone_ID IN (@ZoneID) OR @ZoneID = -1) AND ( RE.ID IN (@RegionID) OR @RegionID = -1) AND ( ST.State_ID IN (@StateID) OR @StateID = -1) AND ( AR.ID IN (@AreaID) OR @AreaID = -1) AND ( CC.Chain_ID IN (@ChainID) OR @ChainID = -1) AND ( CH.Channel_ID IN (@ChannelID) OR @ChannelID = -1) AND ( subchain.SubChain_ID IN (@SubChainID) OR @SubChainID = -1) AND ( subch.SubChannel_ID IN (@SubChannelID) OR @SubChannelID = -1) AND ( G.Grade_ID IN (@GradeID) OR @GradeID = -1) AND ( a.USER_ID IN (@SalesRep) OR @SalesRep = -1) AND ( mq.Quest_Code IN (Select Value from STRING_SPLIT(@SKU,',')) OR @SKU = '') AND ( mqf1.ID IN (@AgencyID) OR @AgencyID = -1) AND ( mqf2.ID IN (@BrandID) OR @BrandID = -1) AND ( mqf3.ID IN (@CategoryID) OR @CategoryID = -1) AND ( mqf9.ID IN (@SubBrandID) OR @SubBrandID = -1) AND ( mqf8.ID IN (@SubCategoryID) OR @SubCategoryID = -1) AND ( mqf4.ID IN (@PackTypeID) OR @PackTypeID = -1) AND ( mqf5.ID IN (@FunctionID) OR @FunctionID = -1) AND ( mqf6.ID IN (@PackSizeID) OR @PackSizeID = -1) AND ( mqf7.ID IN (@ShadeID) OR @ShadeID = -1) AND ( mqf10.ID IN (@MarketingGrpID) OR @MarketingGrpID = -1) AND ( mqf11.ID IN (@SubMarketingGrpID) OR @SubMarketingGrpID = -1) --AND (a.Product_hierarchy = @ParentSKUCode OR @ParentSKUCode = '') ) TblBB Where TblBB.Billing_Type Not In ('ZCC2','ZCN2','ZCN4','ZCN5','ZCN6') group by Case When @GrpByLevel1 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel1 = 'Ship To' Then [Ship To] When @GrpByLevel1 = 'Bill-To' Then [Zone] When @GrpByLevel1 = 'Region' Then [Region] When @GrpByLevel1 = 'State' Then [State] When @GrpByLevel1 = 'Area' Then [Area] When @GrpByLevel1 = 'Chain' Then [Chain] When @GrpByLevel1 = 'Channel' Then [Channel] When @GrpByLevel1 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel1 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel1 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel1 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel1 = 'SKU' Then [SKU] When @GrpByLevel1 = 'Agency' Then [Agency] When @GrpByLevel1 = 'Brand' Then [Brand] When @GrpByLevel1 = 'Category' Then [Category] When @GrpByLevel1 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel1 = 'Sub Category' Then [Sub Category] When @GrpByLevel1 = 'Type' Then [Type] When @GrpByLevel1 = 'Function' Then [Function] When @GrpByLevel1 = 'Size' Then [Size] When @GrpByLevel1 = 'Shade' Then [Shade] When @GrpByLevel1 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel1 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End , Case When @GrpByLevel2 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel2 = 'Ship To' Then [Ship To] When @GrpByLevel2 = 'Bill-To' Then [Zone] When @GrpByLevel2 = 'Region' Then [Region] When @GrpByLevel2 = 'State' Then [State] When @GrpByLevel2 = 'Area' Then [Area] When @GrpByLevel2 = 'Chain' Then [Chain] When @GrpByLevel2 = 'Channel' Then [Channel] When @GrpByLevel2 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel2 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel2 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel2 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel2 = 'SKU' Then [SKU] When @GrpByLevel2 = 'Agency' Then [Agency] When @GrpByLevel2 = 'Brand' Then [Brand] When @GrpByLevel2 = 'Category' Then [Category] When @GrpByLevel2 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel2 = 'Sub Category' Then [Sub Category] When @GrpByLevel2 = 'Type' Then [Type] When @GrpByLevel2 = 'Function' Then [Function] When @GrpByLevel2 = 'Size' Then [Size] When @GrpByLevel2 = 'Shade' Then [Shade] When @GrpByLevel2 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel2 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End , Case When @GrpByLevel3 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel3 = 'Ship To' Then [Ship To] When @GrpByLevel3 = 'Bill-To' Then [Zone] When @GrpByLevel3 = 'Region' Then [Region] When @GrpByLevel3 = 'State' Then [State] When @GrpByLevel3 = 'Area' Then [Area] When @GrpByLevel3 = 'Chain' Then [Chain] When @GrpByLevel3 = 'Channel' Then [Channel] When @GrpByLevel3 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel3 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel3 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel3 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel3 = 'SKU' Then [SKU] When @GrpByLevel3 = 'Agency' Then [Agency] When @GrpByLevel3 = 'Brand' Then [Brand] When @GrpByLevel3 = 'Category' Then [Category] When @GrpByLevel3 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel3 = 'Sub Category' Then [Sub Category] When @GrpByLevel3 = 'Type' Then [Type] When @GrpByLevel3 = 'Function' Then [Function] When @GrpByLevel3 = 'Size' Then [Size] When @GrpByLevel3 = 'Shade' Then [Shade] When @GrpByLevel3 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel3 = 'Sub Marketing Group' Then [Sub Marketing Group] End, TblBB.ITEM_CODE, TblBB.ITEM_DESCRIPTION,[UOM] )TableD Where TableD.Grouplevel1 = TableA.Grouplevel1 AND TableD.Grouplevel2 = TableA.Grouplevel2 AND TableD.Grouplevel3 = TableA.Grouplevel3 ),0) As 'NET_SALES_QTY' , ISNULL( (Select [FOC_AMT] From ( Select SUM([FOC_AMT]) As [FOC_AMT] , ITEM_CODE, ITEM_DESCRIPTION , '' AS [UOM] --, SUM([SALES_QTY]) As 'SALES_QTY' , Case When @GrpByLevel1 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel1 = 'Ship To' Then [Ship To] When @GrpByLevel1 = 'Zone' Then [Zone] When @GrpByLevel1 = 'Region' Then [Region] When @GrpByLevel1 = 'State' Then [State] When @GrpByLevel1 = 'Area' Then [Area] When @GrpByLevel1 = 'Chain' Then [Chain] When @GrpByLevel1 = 'Channel' Then [Channel] When @GrpByLevel1 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel1 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel1 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel1 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel1 = 'SKU' Then [SKU] When @GrpByLevel1 = 'Agency' Then [Agency] When @GrpByLevel1 = 'Brand' Then [Brand] When @GrpByLevel1 = 'Category' Then [Category] When @GrpByLevel1 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel1 = 'Sub Category' Then [Sub Category] When @GrpByLevel1 = 'Type' Then [Type] When @GrpByLevel1 = 'Function' Then [Function] When @GrpByLevel1 = 'Size' Then [Size] When @GrpByLevel1 = 'Shade' Then [Shade] When @GrpByLevel1 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel1 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End As [Grouplevel1], Case When @GrpByLevel2 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel2 = 'Ship To' Then [Ship To] When @GrpByLevel2 = 'Zone' Then [Zone] When @GrpByLevel2 = 'Region' Then [Region] When @GrpByLevel2 = 'State' Then [State] When @GrpByLevel2 = 'Area' Then [Area] When @GrpByLevel2 = 'Chain' Then [Chain] When @GrpByLevel2 = 'Channel' Then [Channel] When @GrpByLevel2 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel2 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel2 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel2 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel2 = 'SKU' Then [SKU] When @GrpByLevel2 = 'Agency' Then [Agency] When @GrpByLevel2 = 'Brand' Then [Brand] When @GrpByLevel2 = 'Category' Then [Category] When @GrpByLevel2 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel2 = 'Sub Category' Then [Sub Category] When @GrpByLevel2 = 'Type' Then [Type] When @GrpByLevel2 = 'Function' Then [Function] When @GrpByLevel2 = 'Size' Then [Size] When @GrpByLevel2 = 'Shade' Then [Shade] When @GrpByLevel2 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel2 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End As [Grouplevel2], Case When @GrpByLevel3 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel3 = 'Ship To' Then [Ship To] When @GrpByLevel3 = 'Zone' Then [Zone] When @GrpByLevel3 = 'Region' Then [Region] When @GrpByLevel3 = 'State' Then [State] When @GrpByLevel3 = 'Area' Then [Area] When @GrpByLevel3 = 'Chain' Then [Chain] When @GrpByLevel3 = 'Channel' Then [Channel] When @GrpByLevel3 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel3 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel3 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel3 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel3 = 'SKU' Then [SKU] When @GrpByLevel3 = 'Agency' Then [Agency] When @GrpByLevel3 = 'Brand' Then [Brand] When @GrpByLevel3 = 'Category' Then [Category] When @GrpByLevel3 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel3 = 'Sub Category' Then [Sub Category] When @GrpByLevel3 = 'Type' Then [Type] When @GrpByLevel3 = 'Function' Then [Function] When @GrpByLevel3 = 'Size' Then [Size] When @GrpByLevel3 = 'Shade' Then [Shade] When @GrpByLevel3 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel3 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End As [Grouplevel3] From ( Select ISNULL(a.Bill_Type_Description,'') 'Billing_Type' ,ISNULL(a.Bill_Type_Description,'') 'Bill_Type_Description' ,ISNULL(ml.[Name],'') 'BILL_TO_NAME' ,ISNULL(a.Sold_to_party,'') 'Bill_To_CustomerCode' ,ISNULL(a.Material,'') 'ITEM_CODE' ,ISNULL(mq.Quest_Desc,'') 'ITEM_DESCRIPTION' ,ISNULL(a.Sales_unit,'') 'UOM' ,ISNULL(a.Ship_to_party,'') 'Ship To' ,ISNULL(Z.[Name],'') 'Zone' ,ISNULL(RE.[Name],'') 'Region' ,ISNULL(ST.[Desc],'') 'State' ,ISNULL(AR.[Name],'') 'Area' ,ISNULL(CC.[Name],'') 'Chain' ,ISNULL(CH.[Name],'') 'Channel' ,ISNULL(subchain.[Name],'') 'Sub Chain' ,ISNULL(subch.[Name],'') 'Sub Channel' ,ISNULL(G.[Name],'') 'Grade' ,ISNULL(a.SALES_PERSON,'') 'Sales Rep' ,ISNULL(mq.Quest_Desc,'') 'SKU' ,ISNULL(mqf1.[Name],'') 'Agency' ,ISNULL(mqf2.[Name],'') 'Brand' ,ISNULL(mqf3.[Name],'') 'Category' ,ISNULL(mqf9.[Name],'') 'Sub Brand' ,ISNULL(mqf8.[Name],'') 'Sub Category' ,ISNULL(mqf4.[Name],'') 'Type' ,ISNULL(mqf5.[Name],'') 'Function' ,ISNULL(mqf6.[Name],'') 'Size' ,ISNULL(mqf7.[Name],'') 'Shade' ,ISNULL(mqf10.[Name],'')'Marketing Group' ,ISNULL(mqf11.[Name],'') 'Sub Marketing Group' ,convert(decimal(18,2) ,a.Price) 'FOC_AMT' --,convert(decimal(18,2) ,a.[Bill_Qty ]) 'RETURN_SALES_QTY' ,a.Billing_date 'INVOICE_DATE' -- YYYY-MM-DD ,DAY(CONVERT(DATETIME, a.Billing_date)) 'DAY' FROM dbo.DM_ORDER_SALES_REPORT a with (nolock) LEFT OUTER JOIN MAIN_QUESTION mq on mq.Quest_Code = a.Material -- SKU LEFT OUTER JOIN MAIN_LOCATION ml on ML.ML_NO = a.Sold_to_party LEFT JOIN Zone Z ON Z.Zone_ID = ml.Zone -- Zone LEFT JOIN Region RE ON RE.ID = ml.Region -- Region LEFT JOIN STATE ST ON ST.State_ID = ml.State -- State LEFT JOIN AREA AR ON AR.ID = ml.Area -- Area LEFT JOIN CHAIN CC ON CC.Chain_ID = ml.Chain -- Chain LEFT JOIN CHANNEL CH ON CH.Channel_ID = ml.Channel -- Channel LEFT JOIN GRADE G ON G.Grade_ID = ml.Grade -- Grade LEFT JOIN SUB_CHAIN subchain ON subchain.SubChain_ID = ml.SubChain_ID -- SubChain LEFT JOIN SUB_CHANNEL subch ON subch.SubChannel_ID = ml.SubChannel_ID -- SubChannel --LEFT OUTER JOIN MAIN_QUESTION mq on mq.Quest_ID = b.Quest_ID -- SKU LEFT JOIN dbo.MAIN_QUESTION_FILTER1 mqf1 ON mq.Filter_1 = mqf1.Code -- Manufacture LEFT JOIN dbo.MAIN_QUESTION_FILTER2 mqf2 ON mq.Filter_2 = mqf2.Code -- Brand LEFT JOIN dbo.MAIN_QUESTION_FILTER3 mqf3 ON mq.Filter_3 = mqf3.Code -- Category LEFT JOIN dbo.MAIN_QUESTION_FILTER4 mqf4 ON mq.Filter_4 = mqf4.Code -- Type LEFT JOIN dbo.MAIN_QUESTION_FILTER5 mqf5 ON mq.Filter_5 = mqf5.Code -- [Function] LEFT JOIN dbo.MAIN_QUESTION_FILTER6 mqf6 ON mq.Filter_6 = mqf6.Code -- Size LEFT JOIN dbo.MAIN_QUESTION_FILTER7 mqf7 ON mq.Filter_7 = mqf7.Code -- Shade LEFT JOIN dbo.MAIN_QUESTION_FILTER8 mqf8 ON mq.Filter_8 = mqf8.Code -- SubCatgory LEFT JOIN dbo.MAIN_QUESTION_FILTER9 mqf9 ON mq.Filter_9 = mqf9.Code -- SubBrand LEFT JOIN dbo.MAIN_QUESTION_FILTER10 mqf10 ON mq.Filter_10 = mqf10.Code -- MktGroup LEFT JOIN dbo.MAIN_QUESTION_FILTER11 mqf11 ON mq.Filter_11 = mqf11.Code --SubMktGroup --LEFT JOIN ROUTE_USER_ASSIGNMENT rua on rua.Route_ID = ml.ML_ID -- 'SalesRep' --LEFT JOIN USER_LOGIN ul ON ul.[User_ID] = rua.[User_ID] Where CONVERT(DATETIME, a.Billing_date) = @StartDate --CONVERT(Datetime, '2023-01-01') --@StartDate AND CONVERT(decimal(18,2), a.Price) = 0.00 AND (a.Sold_to_party IN (Select Value from STRING_SPLIT(@CustCode,',')) OR @CustCode = '') AND (a.Ship_to_party = @ShipToCode OR @ShipToCode = '') AND ( Z.Zone_ID = @ZoneID OR @ZoneID = -1) AND ( RE.ID = @RegionID OR @RegionID = -1) AND ( ST.State_ID = @StateID OR @StateID = -1) AND ( AR.ID = @AreaID OR @AreaID = -1) AND ( CC.Chain_ID = @ChainID OR @ChainID = -1) AND ( CH.Channel_ID = @ChannelID OR @ChannelID = -1) AND ( subchain.SubChain_ID = @SubChainID OR @SubChainID = -1) AND ( subch.SubChannel_ID = @SubChannelID OR @SubChannelID = -1) AND ( G.Grade_ID = @GradeID OR @GradeID = -1) AND ( a.USER_ID = @SalesRep OR @SalesRep = -1) AND ( mq.Quest_Code IN (Select Value from STRING_SPLIT(@SKU,',')) OR @SKU = '') AND ( mqf1.ID = @AgencyID OR @AgencyID = -1) AND ( mqf2.ID = @BrandID OR @BrandID = -1) AND ( mqf3.ID = @CategoryID OR @CategoryID = -1) AND ( mqf9.ID = @SubBrandID OR @SubBrandID = -1) AND ( mqf8.ID = @SubCategoryID OR @SubCategoryID = -1) AND ( mqf4.ID = @PackTypeID OR @PackTypeID = -1) AND ( mqf5.ID = @FunctionID OR @FunctionID = -1) AND ( mqf6.ID = @PackSizeID OR @PackSizeID = -1) AND ( mqf7.ID = @ShadeID OR @ShadeID = -1) AND ( mqf10.ID = @MarketingGrpID OR @MarketingGrpID = -1) AND ( mqf11.ID = @SubMarketingGrpID OR @SubMarketingGrpID = -1) ) TblAA --Where --TblAA.Billing_Type In ('ZBC1','ZCN2','ZCN4','ZCN5','ZCN6') group by Case When @GrpByLevel1 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel1 = 'Ship To' Then [Ship To] When @GrpByLevel1 = 'Zone' Then [Zone] When @GrpByLevel1 = 'Region' Then [Region] When @GrpByLevel1 = 'State' Then [State] When @GrpByLevel1 = 'Area' Then [Area] When @GrpByLevel1 = 'Chain' Then [Chain] When @GrpByLevel1 = 'Channel' Then [Channel] When @GrpByLevel1 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel1 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel1 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel1 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel1 = 'SKU' Then [SKU] When @GrpByLevel1 = 'Agency' Then [Agency] When @GrpByLevel1 = 'Brand' Then [Brand] When @GrpByLevel1 = 'Category' Then [Category] When @GrpByLevel1 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel1 = 'Sub Category' Then [Sub Category] When @GrpByLevel1 = 'Type' Then [Type] When @GrpByLevel1 = 'Function' Then [Function] When @GrpByLevel1 = 'Size' Then [Size] When @GrpByLevel1 = 'Shade' Then [Shade] When @GrpByLevel1 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel1 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End , Case When @GrpByLevel2 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel2 = 'Ship To' Then [Ship To] When @GrpByLevel2 = 'Zone' Then [Zone] When @GrpByLevel2 = 'Region' Then [Region] When @GrpByLevel2 = 'State' Then [State] When @GrpByLevel2 = 'Area' Then [Area] When @GrpByLevel2 = 'Chain' Then [Chain] When @GrpByLevel2 = 'Channel' Then [Channel] When @GrpByLevel2 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel2 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel2 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel2 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel2 = 'SKU' Then [SKU] When @GrpByLevel2 = 'Agency' Then [Agency] When @GrpByLevel2 = 'Brand' Then [Brand] When @GrpByLevel2 = 'Category' Then [Category] When @GrpByLevel2 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel2 = 'Sub Category' Then [Sub Category] When @GrpByLevel2 = 'Type' Then [Type] When @GrpByLevel2 = 'Function' Then [Function] When @GrpByLevel2 = 'Size' Then [Size] When @GrpByLevel2 = 'Shade' Then [Shade] When @GrpByLevel2 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel2 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End , Case When @GrpByLevel3 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel3 = 'Ship To' Then [Ship To] When @GrpByLevel3 = 'Zone' Then [Zone] When @GrpByLevel3 = 'Region' Then [Region] When @GrpByLevel3 = 'State' Then [State] When @GrpByLevel3 = 'Area' Then [Area] When @GrpByLevel3 = 'Chain' Then [Chain] When @GrpByLevel3 = 'Channel' Then [Channel] When @GrpByLevel3 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel3 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel3 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel3 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel3 = 'SKU' Then [SKU] When @GrpByLevel3 = 'Agency' Then [Agency] When @GrpByLevel3 = 'Brand' Then [Brand] When @GrpByLevel3 = 'Category' Then [Category] When @GrpByLevel3 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel3 = 'Sub Category' Then [Sub Category] When @GrpByLevel3 = 'Type' Then [Type] When @GrpByLevel3 = 'Function' Then [Function] When @GrpByLevel3 = 'Size' Then [Size] When @GrpByLevel3 = 'Shade' Then [Shade] When @GrpByLevel3 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel3 = 'Sub Marketing Group' Then [Sub Marketing Group] End, TblAA.ITEM_CODE, TblAA.ITEM_DESCRIPTION,[UOM] ) TableD Where TableD.Grouplevel1 = TableA.[Grouplevel1] AND TableD.Grouplevel2 = TableA.[Grouplevel2] AND TableD.Grouplevel3 = TableA.[Grouplevel3] ),0) As [FOC_AMT] , ISNULL( (Select [FOC_QTY] From ( Select SUM([FOC_QTY]) As [FOC_QTY] , ITEM_CODE, ITEM_DESCRIPTION , '' AS [UOM] --, SUM([SALES_QTY]) As 'SALES_QTY' , Case When @GrpByLevel1 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel1 = 'Ship To' Then [Ship To] When @GrpByLevel1 = 'Zone' Then [Zone] When @GrpByLevel1 = 'Region' Then [Region] When @GrpByLevel1 = 'State' Then [State] When @GrpByLevel1 = 'Area' Then [Area] When @GrpByLevel1 = 'Chain' Then [Chain] When @GrpByLevel1 = 'Channel' Then [Channel] When @GrpByLevel1 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel1 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel1 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel1 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel1 = 'SKU' Then [SKU] When @GrpByLevel1 = 'Agency' Then [Agency] When @GrpByLevel1 = 'Brand' Then [Brand] When @GrpByLevel1 = 'Category' Then [Category] When @GrpByLevel1 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel1 = 'Sub Category' Then [Sub Category] When @GrpByLevel1 = 'Type' Then [Type] When @GrpByLevel1 = 'Function' Then [Function] When @GrpByLevel1 = 'Size' Then [Size] When @GrpByLevel1 = 'Shade' Then [Shade] When @GrpByLevel1 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel1 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End As [Grouplevel1], Case When @GrpByLevel2 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel2 = 'Ship To' Then [Ship To] When @GrpByLevel2 = 'Zone' Then [Zone] When @GrpByLevel2 = 'Region' Then [Region] When @GrpByLevel2 = 'State' Then [State] When @GrpByLevel2 = 'Area' Then [Area] When @GrpByLevel2 = 'Chain' Then [Chain] When @GrpByLevel2 = 'Channel' Then [Channel] When @GrpByLevel2 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel2 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel2 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel2 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel2 = 'SKU' Then [SKU] When @GrpByLevel2 = 'Agency' Then [Agency] When @GrpByLevel2 = 'Brand' Then [Brand] When @GrpByLevel2 = 'Category' Then [Category] When @GrpByLevel2 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel2 = 'Sub Category' Then [Sub Category] When @GrpByLevel2 = 'Type' Then [Type] When @GrpByLevel2 = 'Function' Then [Function] When @GrpByLevel2 = 'Size' Then [Size] When @GrpByLevel2 = 'Shade' Then [Shade] When @GrpByLevel2 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel2 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End As [Grouplevel2], Case When @GrpByLevel3 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel3 = 'Ship To' Then [Ship To] When @GrpByLevel3 = 'Zone' Then [Zone] When @GrpByLevel3 = 'Region' Then [Region] When @GrpByLevel3 = 'State' Then [State] When @GrpByLevel3 = 'Area' Then [Area] When @GrpByLevel3 = 'Chain' Then [Chain] When @GrpByLevel3 = 'Channel' Then [Channel] When @GrpByLevel3 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel3 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel3 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel3 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel3 = 'SKU' Then [SKU] When @GrpByLevel3 = 'Agency' Then [Agency] When @GrpByLevel3 = 'Brand' Then [Brand] When @GrpByLevel3 = 'Category' Then [Category] When @GrpByLevel3 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel3 = 'Sub Category' Then [Sub Category] When @GrpByLevel3 = 'Type' Then [Type] When @GrpByLevel3 = 'Function' Then [Function] When @GrpByLevel3 = 'Size' Then [Size] When @GrpByLevel3 = 'Shade' Then [Shade] When @GrpByLevel3 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel3 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End As [Grouplevel3] From ( Select ISNULL(a.Bill_Type_Description,'') 'Billing_Type' ,ISNULL(a.Bill_Type_Description,'') 'Bill_Type_Description' ,ISNULL(ml.[Name],'') 'BILL_TO_NAME' ,ISNULL(a.Sold_to_party,'') 'Bill_To_CustomerCode' ,ISNULL(a.Material,'') 'ITEM_CODE' ,ISNULL(mq.Quest_Desc,'') 'ITEM_DESCRIPTION' ,ISNULL(a.Sales_unit,'') 'UOM' ,ISNULL(a.Ship_to_party,'') 'Ship To' ,ISNULL(Z.[Name],'') 'Zone' ,ISNULL(RE.[Name],'') 'Region' ,ISNULL(ST.[Desc],'') 'State' ,ISNULL(AR.[Name],'') 'Area' ,ISNULL(CC.[Name],'') 'Chain' ,ISNULL(CH.[Name],'') 'Channel' ,ISNULL(subchain.[Name],'') 'Sub Chain' ,ISNULL(subch.[Name],'') 'Sub Channel' ,ISNULL(G.[Name],'') 'Grade' ,ISNULL(a.SALES_PERSON,'') 'Sales Rep' ,ISNULL(mq.Quest_Desc,'') 'SKU' ,ISNULL(mqf1.[Name],'') 'Agency' ,ISNULL(mqf2.[Name],'') 'Brand' ,ISNULL(mqf3.[Name],'') 'Category' ,ISNULL(mqf9.[Name],'') 'Sub Brand' ,ISNULL(mqf8.[Name],'') 'Sub Category' ,ISNULL(mqf4.[Name],'') 'Type' ,ISNULL(mqf5.[Name],'') 'Function' ,ISNULL(mqf6.[Name],'') 'Size' ,ISNULL(mqf7.[Name],'') 'Shade' ,ISNULL(mqf10.[Name],'')'Marketing Group' ,ISNULL(mqf11.[Name],'') 'Sub Marketing Group' ,convert(decimal(18,2) ,a.[Bill_Qty]) 'FOC_QTY' --,convert(decimal(18,2) ,a.[Bill_Qty ]) 'RETURN_SALES_QTY' ,a.Billing_date 'INVOICE_DATE' -- YYYY-MM-DD ,DAY(CONVERT(DATETIME, a.Billing_date)) 'DAY' FROM dbo.DM_ORDER_SALES_REPORT a with (nolock) LEFT OUTER JOIN MAIN_QUESTION mq on mq.Quest_Code = a.Material -- SKU LEFT OUTER JOIN MAIN_LOCATION ml on ML.ML_NO = a.Sold_to_party LEFT JOIN Zone Z ON Z.Zone_ID = ml.Zone -- Zone LEFT JOIN Region RE ON RE.ID = ml.Region -- Region LEFT JOIN STATE ST ON ST.State_ID = ml.State -- State LEFT JOIN AREA AR ON AR.ID = ml.Area -- Area LEFT JOIN CHAIN CC ON CC.Chain_ID = ml.Chain -- Chain LEFT JOIN CHANNEL CH ON CH.Channel_ID = ml.Channel -- Channel LEFT JOIN GRADE G ON G.Grade_ID = ml.Grade -- Grade LEFT JOIN SUB_CHAIN subchain ON subchain.SubChain_ID = ml.SubChain_ID -- SubChain LEFT JOIN SUB_CHANNEL subch ON subch.SubChannel_ID = ml.SubChannel_ID -- SubChannel --LEFT OUTER JOIN MAIN_QUESTION mq on mq.Quest_ID = b.Quest_ID -- SKU LEFT JOIN dbo.MAIN_QUESTION_FILTER1 mqf1 ON mq.Filter_1 = mqf1.Code -- Manufacture LEFT JOIN dbo.MAIN_QUESTION_FILTER2 mqf2 ON mq.Filter_2 = mqf2.Code -- Brand LEFT JOIN dbo.MAIN_QUESTION_FILTER3 mqf3 ON mq.Filter_3 = mqf3.Code -- Category LEFT JOIN dbo.MAIN_QUESTION_FILTER4 mqf4 ON mq.Filter_4 = mqf4.Code -- Type LEFT JOIN dbo.MAIN_QUESTION_FILTER5 mqf5 ON mq.Filter_5 = mqf5.Code -- [Function] LEFT JOIN dbo.MAIN_QUESTION_FILTER6 mqf6 ON mq.Filter_6 = mqf6.Code -- Size LEFT JOIN dbo.MAIN_QUESTION_FILTER7 mqf7 ON mq.Filter_7 = mqf7.Code -- Shade LEFT JOIN dbo.MAIN_QUESTION_FILTER8 mqf8 ON mq.Filter_8 = mqf8.Code -- SubCatgory LEFT JOIN dbo.MAIN_QUESTION_FILTER9 mqf9 ON mq.Filter_9 = mqf9.Code -- SubBrand LEFT JOIN dbo.MAIN_QUESTION_FILTER10 mqf10 ON mq.Filter_10 = mqf10.Code -- MktGroup LEFT JOIN dbo.MAIN_QUESTION_FILTER11 mqf11 ON mq.Filter_11 = mqf11.Code --SubMktGroup --LEFT JOIN ROUTE_USER_ASSIGNMENT rua on rua.Route_ID = ml.ML_ID -- 'SalesRep' --LEFT JOIN USER_LOGIN ul ON ul.[User_ID] = rua.[User_ID] Where CONVERT(DATETIME, a.Billing_date) = @StartDate --CONVERT(Datetime, '2023-01-01') --@StartDate AND CONVERT(decimal(18,2), a.Price) = 0.00 AND (a.Sold_to_party IN (Select Value from STRING_SPLIT(@CustCode,',')) OR @CustCode = '') AND (a.Ship_to_party = @ShipToCode OR @ShipToCode = '') AND ( Z.Zone_ID = @ZoneID OR @ZoneID = -1) AND ( RE.ID = @RegionID OR @RegionID = -1) AND ( ST.State_ID = @StateID OR @StateID = -1) AND ( AR.ID = @AreaID OR @AreaID = -1) AND ( CC.Chain_ID = @ChainID OR @ChainID = -1) AND ( CH.Channel_ID = @ChannelID OR @ChannelID = -1) AND ( subchain.SubChain_ID = @SubChainID OR @SubChainID = -1) AND ( subch.SubChannel_ID = @SubChannelID OR @SubChannelID = -1) AND ( G.Grade_ID = @GradeID OR @GradeID = -1) AND ( a.USER_ID = @SalesRep OR @SalesRep = -1) AND ( mq.Quest_Code IN (Select Value from STRING_SPLIT(@SKU,',')) OR @SKU = '') AND ( mqf1.ID = @AgencyID OR @AgencyID = -1) AND ( mqf2.ID = @BrandID OR @BrandID = -1) AND ( mqf3.ID = @CategoryID OR @CategoryID = -1) AND ( mqf9.ID = @SubBrandID OR @SubBrandID = -1) AND ( mqf8.ID = @SubCategoryID OR @SubCategoryID = -1) AND ( mqf4.ID = @PackTypeID OR @PackTypeID = -1) AND ( mqf5.ID = @FunctionID OR @FunctionID = -1) AND ( mqf6.ID = @PackSizeID OR @PackSizeID = -1) AND ( mqf7.ID = @ShadeID OR @ShadeID = -1) AND ( mqf10.ID = @MarketingGrpID OR @MarketingGrpID = -1) AND ( mqf11.ID = @SubMarketingGrpID OR @SubMarketingGrpID = -1) ) TblAA --Where --TblAA.Billing_Type In ('ZBC1','ZCN2','ZCN4','ZCN5','ZCN6') group by Case When @GrpByLevel1 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel1 = 'Ship To' Then [Ship To] When @GrpByLevel1 = 'Zone' Then [Zone] When @GrpByLevel1 = 'Region' Then [Region] When @GrpByLevel1 = 'State' Then [State] When @GrpByLevel1 = 'Area' Then [Area] When @GrpByLevel1 = 'Chain' Then [Chain] When @GrpByLevel1 = 'Channel' Then [Channel] When @GrpByLevel1 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel1 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel1 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel1 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel1 = 'SKU' Then [SKU] When @GrpByLevel1 = 'Agency' Then [Agency] When @GrpByLevel1 = 'Brand' Then [Brand] When @GrpByLevel1 = 'Category' Then [Category] When @GrpByLevel1 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel1 = 'Sub Category' Then [Sub Category] When @GrpByLevel1 = 'Type' Then [Type] When @GrpByLevel1 = 'Function' Then [Function] When @GrpByLevel1 = 'Size' Then [Size] When @GrpByLevel1 = 'Shade' Then [Shade] When @GrpByLevel1 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel1 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End , Case When @GrpByLevel2 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel2 = 'Ship To' Then [Ship To] When @GrpByLevel2 = 'Zone' Then [Zone] When @GrpByLevel2 = 'Region' Then [Region] When @GrpByLevel2 = 'State' Then [State] When @GrpByLevel2 = 'Area' Then [Area] When @GrpByLevel2 = 'Chain' Then [Chain] When @GrpByLevel2 = 'Channel' Then [Channel] When @GrpByLevel2 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel2 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel2 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel2 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel2 = 'SKU' Then [SKU] When @GrpByLevel2 = 'Agency' Then [Agency] When @GrpByLevel2 = 'Brand' Then [Brand] When @GrpByLevel2 = 'Category' Then [Category] When @GrpByLevel2 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel2 = 'Sub Category' Then [Sub Category] When @GrpByLevel2 = 'Type' Then [Type] When @GrpByLevel2 = 'Function' Then [Function] When @GrpByLevel2 = 'Size' Then [Size] When @GrpByLevel2 = 'Shade' Then [Shade] When @GrpByLevel2 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel2 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End , Case When @GrpByLevel3 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel3 = 'Ship To' Then [Ship To] When @GrpByLevel3 = 'Zone' Then [Zone] When @GrpByLevel3 = 'Region' Then [Region] When @GrpByLevel3 = 'State' Then [State] When @GrpByLevel3 = 'Area' Then [Area] When @GrpByLevel3 = 'Chain' Then [Chain] When @GrpByLevel3 = 'Channel' Then [Channel] When @GrpByLevel3 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel3 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel3 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel3 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel3 = 'SKU' Then [SKU] When @GrpByLevel3 = 'Agency' Then [Agency] When @GrpByLevel3 = 'Brand' Then [Brand] When @GrpByLevel3 = 'Category' Then [Category] When @GrpByLevel3 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel3 = 'Sub Category' Then [Sub Category] When @GrpByLevel3 = 'Type' Then [Type] When @GrpByLevel3 = 'Function' Then [Function] When @GrpByLevel3 = 'Size' Then [Size] When @GrpByLevel3 = 'Shade' Then [Shade] When @GrpByLevel3 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel3 = 'Sub Marketing Group' Then [Sub Marketing Group] End, TblAA.ITEM_CODE, TblAA.ITEM_DESCRIPTION,[UOM] ) TableD Where TableD.Grouplevel1 = TableA.[Grouplevel1] AND TableD.Grouplevel2 = TableA.[Grouplevel2] AND TableD.Grouplevel3 = TableA.[Grouplevel3] ),0) As [FOC_QTY] FROM ( Select SUM([RETURN_SALES_AMT]) As 'RETURN_SALES_AMT' , SUM([RETURN_SALES_QTY]) As 'RETURN_SALES_QTY' , ITEM_CODE, ITEM_DESCRIPTION , '' AS [UOM] , Case When @GrpByLevel1 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel1 = 'Ship To' Then [Ship To] When @GrpByLevel1 = 'Bill-To' Then [Zone] When @GrpByLevel1 = 'Region' Then [Region] When @GrpByLevel1 = 'State' Then [State] When @GrpByLevel1 = 'Area' Then [Area] When @GrpByLevel1 = 'Chain' Then [Chain] When @GrpByLevel1 = 'Channel' Then [Channel] When @GrpByLevel1 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel1 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel1 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel1 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel1 = 'SKU' Then [SKU] When @GrpByLevel1 = 'Agency' Then [Agency] When @GrpByLevel1 = 'Brand' Then [Brand] When @GrpByLevel1 = 'Category' Then [Category] When @GrpByLevel1 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel1 = 'Sub Category' Then [Sub Category] When @GrpByLevel1 = 'Type' Then [Type] When @GrpByLevel1 = 'Function' Then [Function] When @GrpByLevel1 = 'Size' Then [Size] When @GrpByLevel1 = 'Shade' Then [Shade] When @GrpByLevel1 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel1 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End As [Grouplevel1], Case When @GrpByLevel2 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel2 = 'Ship To' Then [Ship To] When @GrpByLevel2 = 'Bill-To' Then [Zone] When @GrpByLevel2 = 'Region' Then [Region] When @GrpByLevel2 = 'State' Then [State] When @GrpByLevel2 = 'Area' Then [Area] When @GrpByLevel2 = 'Chain' Then [Chain] When @GrpByLevel2 = 'Channel' Then [Channel] When @GrpByLevel2 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel2 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel2 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel2 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel2 = 'SKU' Then [SKU] When @GrpByLevel2 = 'Agency' Then [Agency] When @GrpByLevel2 = 'Brand' Then [Brand] When @GrpByLevel2 = 'Category' Then [Category] When @GrpByLevel2 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel2 = 'Sub Category' Then [Sub Category] When @GrpByLevel2 = 'Type' Then [Type] When @GrpByLevel2 = 'Function' Then [Function] When @GrpByLevel2 = 'Size' Then [Size] When @GrpByLevel2 = 'Shade' Then [Shade] When @GrpByLevel2 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel2 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End As [Grouplevel2], Case When @GrpByLevel3 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel3 = 'Ship To' Then [Ship To] When @GrpByLevel3 = 'Bill-To' Then [Zone] When @GrpByLevel3 = 'Region' Then [Region] When @GrpByLevel3 = 'State' Then [State] When @GrpByLevel3 = 'Area' Then [Area] When @GrpByLevel3 = 'Chain' Then [Chain] When @GrpByLevel3 = 'Channel' Then [Channel] When @GrpByLevel3 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel3 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel3 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel3 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel3 = 'SKU' Then [SKU] When @GrpByLevel3 = 'Agency' Then [Agency] When @GrpByLevel3 = 'Brand' Then [Brand] When @GrpByLevel3 = 'Category' Then [Category] When @GrpByLevel3 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel3 = 'Sub Category' Then [Sub Category] When @GrpByLevel3 = 'Type' Then [Type] When @GrpByLevel3 = 'Function' Then [Function] When @GrpByLevel3 = 'Size' Then [Size] When @GrpByLevel3 = 'Shade' Then [Shade] When @GrpByLevel3 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel3 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End As [Grouplevel3] From ( Select ISNULL(a.Bill_Type_Description,'') 'Billing_Type' ,ISNULL(a.Bill_Type_Description,'') 'Bill_Type_Description' ,ISNULL(ml.[Name],'') 'BILL_TO_NAME' ,ISNULL(a.Sold_to_party,'') 'Bill_To_CustomerCode' ,ISNULL(a.Material,'') 'ITEM_CODE' ,ISNULL(mq.Quest_Desc,'') 'ITEM_DESCRIPTION' ,ISNULL(a.Sales_unit,'') 'UOM' ,ISNULL(a.Ship_to_party,'') 'Ship To' ,ISNULL(Z.[Name],'') 'Zone' ,ISNULL(RE.[Name],'') 'Region' ,ISNULL(ST.[Desc],'') 'State' ,ISNULL(AR.[Name],'') 'Area' ,ISNULL(CC.[Name],'') 'Chain' ,ISNULL(CH.[Name],'') 'Channel' ,ISNULL(subchain.[Name],'') 'Sub Chain' ,ISNULL(subch.[Name],'') 'Sub Channel' ,ISNULL(G.[Name],'') 'Grade' ,ISNULL(a.SALES_PERSON,'') 'Sales Rep' ,ISNULL(mq.Quest_Desc,'') 'SKU' ,ISNULL(mqf1.[Name],'') 'Agency' ,ISNULL(mqf2.[Name],'') 'Brand' ,ISNULL(mqf3.[Name],'') 'Category' ,ISNULL(mqf9.[Name],'') 'Sub Brand' ,ISNULL(mqf8.[Name],'') 'Sub Category' ,ISNULL(mqf4.[Name],'') 'Type' ,ISNULL(mqf5.[Name],'') 'Function' ,ISNULL(mqf6.[Name],'') 'Size' ,ISNULL(mqf7.[Name],'') 'Shade' ,ISNULL(mqf10.[Name],'')'Marketing Group' ,ISNULL(mqf11.[Name],'') 'Sub Marketing Group' --,ISNULL(SUM(a.FF_Loose + a.FF_Medium + a.FF_Whole),0) 'NET_SALES_QTY' --,ISNULL(convert(decimal(18,2) ,b.Total_Amt - isnull(b.Amt_Disc,0) + isnull(b.Tax_Amt,0)), 0) 'NET_SALES_AMT' ,convert(decimal(18,2) ,a.Price) 'RETURN_SALES_AMT' ,convert(decimal(18,2) ,a.[Bill_Qty]) 'RETURN_SALES_QTY' -- ,ISNULL(SUM(a.FF_Loose + a.FF_Medium + a.FF_Whole) --Over (PARTITION BY a.ItemCode, mq.Quest_Desc, a.InvoiceDate),0) 'NET_SALES_QTY' ,a.Billing_date 'INVOICE_DATE' -- YYYY-MM-DD ,DAY(CONVERT(DATETIME, a.Billing_date)) 'DAY' --,MONTH(CONVERT(DATETIME, a.Billing_date)) 'MONTHLY' FROM dbo.DM_ORDER_SALES_REPORT a with (nolock) --left outer join VW_INTEG_CUST#FILTER ml on ML.ML_NO = a.Sold_to_party --left outer join VW_INTEG_SKU#DMS mq on mq.Quest_Code = a.Material LEFT OUTER JOIN MAIN_QUESTION mq on mq.Quest_Code = a.Material -- SKU LEFT OUTER JOIN MAIN_LOCATION ml on ML.ML_NO = a.Sold_to_party --LEFT OUTER JOIN [dbo].[SFA_SO_RESULTS] b on b.Trans_ID = a.OrderNo_M1 AND b.Quest_ID = mq.Quest_ID LEFT JOIN Zone Z ON Z.Zone_ID = ml.Zone -- Zone LEFT JOIN Region RE ON RE.ID = ml.Region -- Region LEFT JOIN STATE ST ON ST.State_ID = ml.State -- State LEFT JOIN AREA AR ON AR.ID = ml.Area -- Area LEFT JOIN CHAIN CC ON CC.Chain_ID = ml.Chain -- Chain LEFT JOIN CHANNEL CH ON CH.Channel_ID = ml.Channel -- Channel LEFT JOIN GRADE G ON G.Grade_ID = ml.Grade -- Grade LEFT JOIN SUB_CHAIN subchain ON subchain.SubChain_ID = ml.SubChain_ID -- SubChain LEFT JOIN SUB_CHANNEL subch ON subch.SubChannel_ID = ml.SubChannel_ID -- SubChannel --LEFT OUTER JOIN MAIN_QUESTION mq on mq.Quest_ID = b.Quest_ID -- SKU LEFT JOIN dbo.MAIN_QUESTION_FILTER1 mqf1 ON mq.Filter_1 = mqf1.Code -- Manufacture LEFT JOIN dbo.MAIN_QUESTION_FILTER2 mqf2 ON mq.Filter_2 = mqf2.Code -- Brand LEFT JOIN dbo.MAIN_QUESTION_FILTER3 mqf3 ON mq.Filter_3 = mqf3.Code -- Category LEFT JOIN dbo.MAIN_QUESTION_FILTER4 mqf4 ON mq.Filter_4 = mqf4.Code -- Type LEFT JOIN dbo.MAIN_QUESTION_FILTER5 mqf5 ON mq.Filter_5 = mqf5.Code -- [Function] LEFT JOIN dbo.MAIN_QUESTION_FILTER6 mqf6 ON mq.Filter_6 = mqf6.Code -- Size LEFT JOIN dbo.MAIN_QUESTION_FILTER7 mqf7 ON mq.Filter_7 = mqf7.Code -- Shade LEFT JOIN dbo.MAIN_QUESTION_FILTER8 mqf8 ON mq.Filter_8 = mqf8.Code -- SubCatgory LEFT JOIN dbo.MAIN_QUESTION_FILTER9 mqf9 ON mq.Filter_9 = mqf9.Code -- SubBrand LEFT JOIN dbo.MAIN_QUESTION_FILTER10 mqf10 ON mq.Filter_10 = mqf10.Code -- MktGroup LEFT JOIN dbo.MAIN_QUESTION_FILTER11 mqf11 ON mq.Filter_11 = mqf11.Code --SubMktGroup --LEFT JOIN ROUTE_USER_ASSIGNMENT rua on rua.Route_ID = ml.ML_ID -- 'SalesRep' --LEFT JOIN USER_LOGIN ul ON ul.[User_ID] = rua.[User_ID] Where CONVERT(DATETIME, a.Billing_date) = @StartDate--CONVERT(Datetime, '2023-01-01') --@StartDate --AND CONVERT(DATETIME, a.Billing_date) <= @EndDate--CONVERT(Datetime, '2023-04-30')--@EndDate --AND b.Trans_Type = 'SOR' --AND a.OrderNo_M1 IS NOT NULL AND (a.Sold_to_party = @CustCode OR @CustCode = '') AND (a.Ship_to_party = @ShipToCode OR @ShipToCode = '') AND ( Z.Zone_ID = @ZoneID OR @ZoneID = -1) AND ( RE.ID = @RegionID OR @RegionID = -1) AND ( ST.State_ID = @StateID OR @StateID = -1) AND ( AR.ID = @AreaID OR @AreaID = -1) AND ( CC.Chain_ID = @ChainID OR @ChainID = -1) AND ( CH.Channel_ID = @ChannelID OR @ChannelID = -1) AND ( subchain.SubChain_ID = @SubChainID OR @SubChainID = -1) AND ( subch.SubChannel_ID = @SubChannelID OR @SubChannelID = -1) AND ( G.Grade_ID = @GradeID OR @GradeID = -1) AND ( a.USER_ID = @SalesRep OR @SalesRep = -1) AND ( mq.Quest_Code = @SKU OR @SKU = '') AND ( mqf1.ID = @AgencyID OR @AgencyID = -1) AND ( mqf2.ID = @BrandID OR @BrandID = -1) AND ( mqf3.ID = @CategoryID OR @CategoryID = -1) AND ( mqf9.ID = @SubBrandID OR @SubBrandID = -1) AND ( mqf8.ID = @SubCategoryID OR @SubCategoryID = -1) AND ( mqf4.ID = @PackTypeID OR @PackTypeID = -1) AND ( mqf5.ID = @FunctionID OR @FunctionID = -1) AND ( mqf6.ID = @PackSizeID OR @PackSizeID = -1) AND ( mqf7.ID = @ShadeID OR @ShadeID = -1) AND ( mqf10.ID = @MarketingGrpID OR @MarketingGrpID = -1) AND ( mqf11.ID = @SubMarketingGrpID OR @SubMarketingGrpID = -1) --AND (a.Product_hierarchy = @ParentSKUCode OR @ParentSKUCode = '') ) TblAA Where TblAA.Billing_Type In ('ZCC2','ZCN2','ZCN4','ZCN5','ZCN6') group by Case When @GrpByLevel1 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel1 = 'Ship To' Then [Ship To] When @GrpByLevel1 = 'Bill-To' Then [Zone] When @GrpByLevel1 = 'Region' Then [Region] When @GrpByLevel1 = 'State' Then [State] When @GrpByLevel1 = 'Area' Then [Area] When @GrpByLevel1 = 'Chain' Then [Chain] When @GrpByLevel1 = 'Channel' Then [Channel] When @GrpByLevel1 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel1 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel1 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel1 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel1 = 'SKU' Then [SKU] When @GrpByLevel1 = 'Agency' Then [Agency] When @GrpByLevel1 = 'Brand' Then [Brand] When @GrpByLevel1 = 'Category' Then [Category] When @GrpByLevel1 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel1 = 'Sub Category' Then [Sub Category] When @GrpByLevel1 = 'Type' Then [Type] When @GrpByLevel1 = 'Function' Then [Function] When @GrpByLevel1 = 'Size' Then [Size] When @GrpByLevel1 = 'Shade' Then [Shade] When @GrpByLevel1 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel1 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End , Case When @GrpByLevel2 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel2 = 'Ship To' Then [Ship To] When @GrpByLevel2 = 'Bill-To' Then [Zone] When @GrpByLevel2 = 'Region' Then [Region] When @GrpByLevel2 = 'State' Then [State] When @GrpByLevel2 = 'Area' Then [Area] When @GrpByLevel2 = 'Chain' Then [Chain] When @GrpByLevel2 = 'Channel' Then [Channel] When @GrpByLevel2 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel2 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel2 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel2 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel2 = 'SKU' Then [SKU] When @GrpByLevel2 = 'Agency' Then [Agency] When @GrpByLevel2 = 'Brand' Then [Brand] When @GrpByLevel2 = 'Category' Then [Category] When @GrpByLevel2 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel2 = 'Sub Category' Then [Sub Category] When @GrpByLevel2 = 'Type' Then [Type] When @GrpByLevel2 = 'Function' Then [Function] When @GrpByLevel2 = 'Size' Then [Size] When @GrpByLevel2 = 'Shade' Then [Shade] When @GrpByLevel2 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel2 = 'Sub Marketing Group' Then [Sub Marketing Group] --When @GrpByLevel1 = 'Parent SKU Code' Then ST.State_ID End , Case When @GrpByLevel3 = 'Customer' Then [BILL_TO_NAME] When @GrpByLevel3 = 'Ship To' Then [Ship To] When @GrpByLevel3 = 'Bill-To' Then [Zone] When @GrpByLevel3 = 'Region' Then [Region] When @GrpByLevel3 = 'State' Then [State] When @GrpByLevel3 = 'Area' Then [Area] When @GrpByLevel3 = 'Chain' Then [Chain] When @GrpByLevel3 = 'Channel' Then [Channel] When @GrpByLevel3 = 'Sub Chain' Then [Sub Chain] When @GrpByLevel3 = 'Sub Channel' Then [Sub Channel] When @GrpByLevel3 = 'Grade' Then [Grade] --When @GrpByLevel1 = 'Sales Route' Then ST.State_ID When @GrpByLevel3 = 'Sales Rep' Then [Sales Rep] When @GrpByLevel3 = 'SKU' Then [SKU] When @GrpByLevel3 = 'Agency' Then [Agency] When @GrpByLevel3 = 'Brand' Then [Brand] When @GrpByLevel3 = 'Category' Then [Category] When @GrpByLevel3 = 'Sub Brand' Then [Sub Brand] When @GrpByLevel3 = 'Sub Category' Then [Sub Category] When @GrpByLevel3 = 'Type' Then [Type] When @GrpByLevel3 = 'Function' Then [Function] When @GrpByLevel3 = 'Size' Then [Size] When @GrpByLevel3 = 'Shade' Then [Shade] When @GrpByLevel3 = 'Marketing Group' Then [Marketing Group] When @GrpByLevel3 = 'Sub Marketing Group' Then [Sub Marketing Group] End ,TblAA.ITEM_CODE, TblAA.ITEM_DESCRIPTION,[UOM] ) TableA )TableB End

Stuck with a problem? Got Error? Ask AI support!

Copy Clear