SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[sp_ExpenseDetails] @FromDate datetime, @ToDate datetime , @AccountCode varchar(150), @PayMode nvarchar(500), @BranchCode nvarchar(500) AS begin --SELECT CashEntry.DocNo,CashEntry.EntryDate,CashEntryDetails.Narration,CashEntryDetails.Receipt,CashEntry.TotalPaymnt,CashEntry.Type FROM --CashEntry --INNER JOIN CashEntryDetails ON CashEntry.DocNo = CashEntryDetails.DocNo --where CashEntry.EntryDate between @FromDate AND @ToDate ----SELECT s.EntryDate,s.VoucherNo AS DocNo,ISNULL(S.Narration,'') AS Narration, ------,CASHENTRYDETAILS.Narration, ---- ISNULL(S.Amount,0) as Receipt,c.code as AcCode ----,c.Account AS AcName FROM Accounts C INNER JOIN CBLedger S ON C.Code = S.AcCode ------INNER JOIN CASHENTRYDETAILS ON CASHENTRYDETAILS.DOCNO=S.VOUCHERNO AND C.CODE=CASHENTRYDETAILS.ACCODE ----where S.EntryDate BETWEEN @FromDate AND @ToDate and C.Type='Expense' ----order by S.EntryDate,s.VoucherNo SELECT s.EntryDate,s.VoucherNo AS DocNo,ISNULL(S.Narration,'') AS Narration, --,CASHENTRYDETAILS.Narration, ISNULL(S.Amount,0) as Receipt,c.code as AcCode ,(isnull(c.Account,'') + ' ' + isnull(c.namear,'')) AS AcName,c.Account AS Account,isnull(c.namear,'') As AccountAr,CASHENTRYDETAILS.vatamt FROM Accounts C INNER JOIN tblaccounting S ON C.Code = S.AcCode INNER JOIN CASHENTRYDETAILS ON CASHENTRYDETAILS.DOCNO=S.VOUCHERNO AND C.CODE=CASHENTRYDETAILS.ACCODE left join CashEntry on CashEntry.Id=CASHENTRYDETAILS.SubId where CONVERT(DATE, S.EntryDate) BETWEEN @FromDate AND @ToDate AND (@AccountCode IS NULL OR @AccountCode = '' OR ISNULL(CASHENTRYDETAILS.ACCode, '') = @AccountCode) AND (@BranchCode IS NULL OR @BranchCode = '' OR @BranchCode = '1' OR ISNULL(CASHENTRYDETAILS.BranchCode, '') = @BranchCode) AND (@PayMode IS NULL OR @PayMode = '' OR @paymode = '4' OR ISNULL(CashEntry.Type, '') = @PayMode) and c.code<>'95200' and C.Type='Expense' order by S.EntryDate,s.VoucherNo END