USP_SEARCHLIST_CREDITMEMO
Search for a credit memo.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@LASTNAME | nvarchar(100) | IN | Vendor last/Org name |
@FIRSTNAME | nvarchar(100) | IN | First name |
@LOOKUPID | nvarchar(100) | IN | Lookup ID |
@CREDITMEMONUMBER | nvarchar(100) | IN | Credit memo number |
@EXACTMATCHONLY | bit | IN | Match all criteria exactly |
@CHECKALIASES | bit | IN | Check aliases |
@CHECKALTERNATELOOKUPIDS | bit | IN | Check alternate lookup IDs |
@DATEFROM | date | IN | From credit memo date |
@DATETO | date | IN | To credit memo date |
@MAXROWS | smallint | IN | Input parameter indicating the maximum number of rows to return. |
Definition
Copy
CREATE procedure dbo.USP_SEARCHLIST_CREDITMEMO
(
@LASTNAME nvarchar(100) = null,
@FIRSTNAME nvarchar(100) = null,
@LOOKUPID nvarchar(100) = null,
@CREDITMEMONUMBER nvarchar(100) = null,
@EXACTMATCHONLY bit = null,
@CHECKALIASES bit = null,
@CHECKALTERNATELOOKUPIDS bit = null,
@DATEFROM date = null,
@DATETO date = null,
@MAXROWS smallint = 500
)
as
set @EXACTMATCHONLY = COALESCE(@EXACTMATCHONLY, 0)
set @CHECKALIASES = COALESCE(@CHECKALIASES, 0)
set @CHECKALTERNATELOOKUPIDS = COALESCE(@CHECKALTERNATELOOKUPIDS, 0)
if @EXACTMATCHONLY = 0
begin
set @CREDITMEMONUMBER = COALESCE(@CREDITMEMONUMBER,'') + '%';
set @FIRSTNAME = COALESCE(@FIRSTNAME,'') + '%';
set @LASTNAME = COALESCE(@LASTNAME,'') + '%';
set @LOOKUPID = COALESCE(@LOOKUPID,'') + '%';
select top(@MAXROWS)
CM.ID,
F.USERDEFINEDID as CREDITMEMONUMBER,
F.[DATE] as CREDITMEMODATE,
F.TRANSACTIONAMOUNT as CREDITMEMOTOTAL,
--C.LOOKUPID as LOOKUPID,
dbo.UFN_NAMEFORMAT_08(C.ID, C.KEYNAME, C.FIRSTNAME, C.MIDDLENAME, null, null, null, null, null, null, null) as VENDORNAME
from dbo.CREDITMEMO CM
inner join dbo.FINANCIALTRANSACTION F on F.ID = CM.ID and F.TYPECODE = 102
inner join dbo.CONSTITUENT C on F.CONSTITUENTID = C.ID
where
(F.USERDEFINEDID LIKE @CREDITMEMONUMBER) and
((C.LOOKUPID like @LOOKUPID) or ((C.ID in (select AL.CONSTITUENTID from dbo.ALTERNATELOOKUPID AL where AL.ALTERNATELOOKUPID like @LOOKUPID) and @CHECKALTERNATELOOKUPIDS <> 0))) and
((C.KEYNAME like @LASTNAME) or ((C.ID in (select A.CONSTITUENTID from dbo.ALIAS A where A.KEYNAME like @LASTNAME) and @CHECKALIASES <> 0))) and
((C.FIRSTNAME like @FIRSTNAME) or ((C.ID in (select A.CONSTITUENTID from dbo.ALIAS A where A.FIRSTNAME like @FIRSTNAME) and @CHECKALIASES <> 0))) and
(((@DATEFROM is null) or (F.DATE >= @DATEFROM)) and ((@DATETO is null) or (F.DATE <= @DATETO))) and
(F.DELETEDON IS NULL)
order by
C.KEYNAME asc, F.USERDEFINEDID asc, C.LOOKUPID asc
end
else
select top(@MAXROWS)
CM.ID,
F.USERDEFINEDID as CREDITMEMONUMBER,
F.[DATE] as CREDITMEMODATE,
F.TRANSACTIONAMOUNT as CREDITMEMOTOTAL,
--C.LOOKUPID as LOOKUPID,
dbo.UFN_NAMEFORMAT_08(C.ID, C.KEYNAME, C.FIRSTNAME, C.MIDDLENAME, null, null, null, null, null, null, null) as VENDORNAME
from dbo.CREDITMEMO CM
inner join dbo.FINANCIALTRANSACTION F on F.ID = CM.ID and F.TYPECODE = 102
inner join dbo.CONSTITUENT C on F.CONSTITUENTID = C.ID
where
((@CREDITMEMONUMBER is null) or (F.USERDEFINEDID = @CREDITMEMONUMBER)) and
((@LOOKUPID is null) or (C.LOOKUPID = @LOOKUPID) or ((C.ID in (select AL.CONSTITUENTID from dbo.ALTERNATELOOKUPID AL where AL.ALTERNATELOOKUPID = @LOOKUPID) and @CHECKALTERNATELOOKUPIDS <> 0))) and
((@LASTNAME is null) or (C.KEYNAME = @LASTNAME) or ((C.ID in (select A.CONSTITUENTID from dbo.ALIAS A where A.KEYNAME = @LASTNAME) and @CHECKALIASES <> 0))) and
((@FIRSTNAME is null) or (C.FIRSTNAME = @FIRSTNAME) or ((C.ID in (select A.CONSTITUENTID from dbo.ALIAS A where A.FIRSTNAME = @FIRSTNAME) and @CHECKALIASES <> 0))) and
(((@DATEFROM is null) or (F.DATE >= @DATEFROM)) and ((@DATETO is null) or (F.DATE <= @DATETO))) and
(F.DELETEDON IS NULL)
order by
C.KEYNAME asc, F.USERDEFINEDID asc, C.LOOKUPID asc