У меня есть эта хранимая процедура, которую я хочу использовать для моего отчета Crystal Crystal.Сохраненная процедура, которая не фильтрует, если переменная равна нулю
SELECT
t0.DocNum AS ReceiptNo, t2.DocEntry AS InvoiceNo,
t0.DocDate, t1.CheckAct,
t1.CheckNum, t3.AcctName,
CASE
WHEN (t0.CardName IS NULL) THEN t0.Address
ELSE t0.CardName
END AS CustName,
CASE
WHEN ((t1.CheckNum IS NULL OR t1.CheckNum = 0)
AND t0.TrsfrRef IS NULL) THEN 'Cash'
WHEN (t1.CheckNum > 0
AND t0.TrsfrRef IS NULL) THEN 'Cheque'
ELSE 'Transfer'
END AS PayType,
CASE
WHEN (t1.CheckNum > 0 AND t0.TrsfrRef IS NULL) THEN t1.CheckSum
ELSE t0.DocTotal
END AS DocTotal
FROM
ORCT t0
LEFT OUTER JOIN
RCT1 t1 ON t1.docnum = t0.docnum
LEFT OUTER JOIN
RCT2 t2 ON t0.DocEntry = t2.DocNum
LEFT OUTER JOIN
OACT t3 ON t1.CheckAct = t3.AcctCode
WHERE
t0.DocDate BETWEEN @BeginDate AND @EndDate
AND t0.Canceled = 'N'
AND t3.AcctCode = @Account
На последней строке я объявил переменную @Account
, который фильтрует результаты по номеру счета. Я хочу, чтобы мой отчет работал так, что если учетная запись не выбрана (null), будут возвращены результаты всех номеров счетов.
Как это достичь?
Любая помощь приветствуется.