USP_DATALIST_CREDIT_BYPATRON

Returns all refunds for a patron.

Parameters

Parameter Parameter Type Mode Description
@CONSTITUENTID uniqueidentifier IN Input parameter indicating the context ID for the data list.
@SHOWDATERANGE tinyint IN Show

Definition

Copy


                CREATE procedure dbo.USP_DATALIST_CREDIT_BYPATRON
                (
                    @CONSTITUENTID uniqueidentifier,
                    @SHOWDATERANGE tinyint = 0
                )
                as
                    set nocount on;

                    declare @CURRENTDATE datetime = null;
                    declare @STARTDATE datetime = null;

                    set @CURRENTDATE = getdate();

                    if @SHOWDATERANGE = 1
                        set @STARTDATE = dbo.UFN_DATE_GETEARLIESTTIME(dateadd(day, -29, @CURRENTDATE));
                    else if @SHOWDATERANGE = 2
                        set @STARTDATE = dbo.UFN_DATE_GETEARLIESTTIME(dateadd(day, -89, @CURRENTDATE))
                    else if @SHOWDATERANGE = 3
                        set @STARTDATE = dbo.UFN_DATE_GETEARLIESTTIME(dateadd(day, 1, dateadd(month, -12, @CURRENTDATE)))

                    select
                        CREDIT.ID as ID,
                        SALESORDER.ID as SALESORDERID,
                        CREDIT.DATEADDED as REFUNDDATE,
                        CREDIT.AMOUNT as REFUNDTOTAL,
                        (
                            select dbo.UDA_BUILDLIST(CREDITITEM.DESCRIPTION)
                            from dbo.CREDITITEM
                            where CREDITITEM.CREDITID = CREDIT.ID
                        ) as REFUNDITEMS,
                        SALESORDER.TRANSACTIONDATE,
                        convert(nvarchar(20),SALESORDER.SEQUENCEID) as ORDERNUMBER,
                        SALESORDER.AMOUNT as ORDERTOTAL
                    from dbo.CREDIT
                    left join dbo.SALESORDER
                        on CREDIT.SALESORDERID = SALESORDER.ID
                    where
                        CREDIT.CONSTITUENTID = @CONSTITUENTID and
                        (CREDIT.DATEADDED >= @STARTDATE or @SHOWDATERANGE = 0) and
                        CREDIT.TYPECODE = 0 -- Only get refund

                    order by
                        CREDIT.DATEADDED desc