USP_DATALIST_DISBURSEMENTPROCESS

A list of all disbursement processes.

Parameters

Parameter Parameter Type Mode Description
@DATEFILTERCODE int IN Date range

Definition

Copy


CREATE procedure dbo.USP_DATALIST_DISBURSEMENTPROCESS
  (
    @DATEFILTERCODE int = NULL
   )
as
    set nocount on;

  declare @numDays as int;
  select @numDays = case @DATEFILTERCODE
    when 1 then 7 
    when 2 then 30 
    when 3 then 60 
    when 4 then 90 
    else NULL
  end;    

    select ID
        ,T.NAME
    ,T.DESCRIPTION
        ,T.[STATUS]
    ,T.[STATUSCODE]
        ,T.DATEADDED
    ,(select COUNT(FT.ID)
            from dbo.FINANCIALTRANSACTION FT
            left outer join dbo.DISBURSEMENTPROCESSDISBURSEMENT DPD on DPD.ID = FT.ID and DPD.DISBURSEMENTPROCESSID = T.ID
      left outer join dbo.BANKACCOUNTTRANSACTION_EXT BATE on BATE.ID = FT.ID and BATE.DISBURSEMENTPROCESSID = T.ID
            inner join dbo.DISBURSEMENTPROCESS DP on DP.ID = DPD.DISBURSEMENTPROCESSID or DP.ID = BATE.DISBURSEMENTPROCESSID
            where DP.ID = T.ID and (FT.DELETEDON is null)) as RECORDSPROCESSED
    from DISBURSEMENTPROCESS as T
  where
    @numDays is null or (
      convert(date,T.DATEADDED) >= dateadd(dd,-@numDays, convert(date,getdate())) and convert(date, T.DATEADDED) <= convert(date,getdate()))
  order by T.DATEADDED DESC