USP_DATALIST_RECENTLARGEGIFTS

Returns a list of recent, large revenue records.

Parameters

Parameter Parameter Type Mode Description
@MAXROWS int IN Input parameter indicating the maximum number of rows to return.
@SELECTIONID uniqueidentifier IN Constituent selection
@DATAWINDOWOPEN date IN Beginning
@DATAWINDOWCLOSE date IN Ending
@LARGEAMOUNT money IN Show gifts larger than

Definition

Copy


                CREATE procedure dbo.USP_DATALIST_RECENTLARGEGIFTS
                (
                    @MAXROWS int = null,
                    @SELECTIONID uniqueidentifier,
                    @DATAWINDOWOPEN date = null,
                    @DATAWINDOWCLOSE date = null,
                    @LARGEAMOUNT money
                )
                as
                set nocount on;

                if @SELECTIONID is null
                begin
                    select top(coalesce(@MAXROWS,500))
                        FINANCIALTRANSACTION.ID,
                        FINANCIALTRANSACTION.ORGAMOUNT as ORGANIZATIONAMOUNT,
                        FINANCIALTRANSACTION.DATE,
                        FINANCIALTRANSACTION.TYPE as TRANSACTIONTYPE,
                        CONSTITUENT.NAME
                    from dbo.FINANCIALTRANSACTION
                    inner join dbo.CONSTITUENT on CONSTITUENT.ID = FINANCIALTRANSACTION.CONSTITUENTID
                    where FINANCIALTRANSACTION.ORGAMOUNT >= @LARGEAMOUNT
                        and ((@DATAWINDOWOPEN is null or @DATAWINDOWCLOSE is null) or (FINANCIALTRANSACTION.DATE between @DATAWINDOWOPEN and @DATAWINDOWCLOSE))
                    order by CONSTITUENT.KEYNAME, CONSTITUENT.FIRSTNAME, FINANCIALTRANSACTION.ORGAMOUNT, FINANCIALTRANSACTION.DATE
                end
                else
                begin
                    select top(coalesce(@MAXROWS,500))
                        FINANCIALTRANSACTION.ID,
                        FINANCIALTRANSACTION.ORGAMOUNT as ORGANIZATIONAMOUNT,
                        FINANCIALTRANSACTION.DATE,
                        FINANCIALTRANSACTION.TYPE as TRANSACTIONTYPE,
                        CONSTITUENT.NAME
                    from dbo.FINANCIALTRANSACTION
                    inner join dbo.CONSTITUENT on CONSTITUENT.ID = FINANCIALTRANSACTION.CONSTITUENTID
                    inner join dbo.UFN_IDSETREADER_GETRESULTS(@SELECTIONID) as [SELECTION] on [SELECTION].ID = CONSTITUENT.ID
                    where FINANCIALTRANSACTION.ORGAMOUNT >= @LARGEAMOUNT
                        and ((@DATAWINDOWOPEN is null or @DATAWINDOWCLOSE is null) or (FINANCIALTRANSACTION.DATE between @DATAWINDOWOPEN and @DATAWINDOWCLOSE))
                    order by CONSTITUENT.KEYNAME, CONSTITUENT.FIRSTNAME, FINANCIALTRANSACTION.ORGAMOUNT, FINANCIALTRANSACTION.DATE
                end