I am trying to SELECT
a particular record from SQL Server 2008, this is the code I am using
ALTER PROCEDURE [dbo].[usp_GetTotalSalesReport]
(@FROM_DATE nchar(20),
@TO_DATE nchar(20),
@SALESMANCODE nchar(8)
)
AS
BEGIN
DECLARE @CONDITION TEXT
IF (@FROM_DATE IS NULL AND @TO_DATE IS NULL AND @SALESMANCODE = 'ALL') BEGIN
SET @CONDITION = NULL
END
IF (@FROM_DATE IS NULL AND @TO_DATE IS NULL AND @SALESMANCODE != 'ALL') BEGIN
SET @CONDITION = ' WHERE SalesManCode= @SALESMANCODE'
END
IF @FROM_DATE IS NOT NULL AND @SALESMANCODE = 'ALL' BEGIN
SET @CONDITION = ' WHERE TransactionDateTime >= @FROM_DATE AND TransactionDateTime <= @TO_DATE'
END
IF @FROM_DATE IS NOT NULL AND @SALESMANCODE != 'ALL' BEGIN
SET @CONDITION = ' WHERE TransactionDateTime >= @FROM_DATE AND TransactionDateTime <= @TO_DATE AND SalesManCode = @SALESMANCODE'
END
IF @FROM_DATE IS NOT NULL AND @TO_DATE IS NOT NULL AND @SALESMANCODE = 'ALL' BEGIN
SET @CONDITION = ' WHERE TransactionDateTime >= @FROM_DATE AND TransactionDateTime <= @TO_DATE'
END
IF @FROM_DATE IS NOT NULL AND @TO_DATE IS NOT NULL AND @SALESMANCODE != 'ALL' BEGIN
SET @CONDITION =' WHERE TransactionDateTime >= @FROM_DATE AND TransactionDateTime <= @TO_DATE AND SalesManCode = @SALESMANCODE'
END
SELECT RouteName
,SalesManCode
,SalesManName
,CustomerCode
,CustomerNameEng
,TransactionDateTime
,DocumentPrefix
,DocumentNumber
,BalanceDueAmount
,RouteID
,PaymentType FROM v_DCS_Rpt_Total_Sales @CONDITION
END
If I try to add @CONDITION
variable at the end of the query like
PaymentType FROM v_DCS_Rpt_Total_Sales @CONDITION
I am getting this error
Incorrect syntax near '@CONDITION'
What I have tried so far is:
PaymentType FROM v_DCS_Rpt_Total_Sales +" "+ @CONDITION`
but its giving me this error
Incorrect syntax near '+'.