UFN_DISBURSEMENTPROCESSFINALIZE_NUMBEROFCHECKS

Returns a string representing the check range for a given disbursement process.

Return

Return Type
nvarchar(max)

Parameters

Parameter Parameter Type Mode Description
@DISBURSEMENTPROCESSID uniqueidentifier IN

Definition

Copy


CREATE function dbo.UFN_DISBURSEMENTPROCESSFINALIZE_NUMBEROFCHECKS(@DISBURSEMENTPROCESSID uniqueidentifier)
returns nvarchar(max)
with execute as caller
as begin
  declare @NUMBER int;
    declare @NUMBEROFCHECKS nvarchar(max) = '';

  select 
    @NUMBER = COUNT(*
  from dbo.DISBURSEMENTPROCESSPRINTFINALIZERANGE
  where DISBURSEMENTPROCESSID = @DISBURSEMENTPROCESSID

  if @NUMBER=1
    begin
      select @NUMBEROFCHECKS = cast(RANGESTART as nvarchar(10)) + '-' + cast(case when RANGEEND<>0 then RANGEEND else RANGESTART+RANGECOUNT-1 end as nvarchar(10))
      from dbo.DISBURSEMENTPROCESSPRINTFINALIZERANGE
      where DISBURSEMENTPROCESSID = @DISBURSEMENTPROCESSID
    end
  else
    begin
      select @NUMBEROFCHECKS = @NUMBEROFCHECKS + cast(RANGESTART as nvarchar(10)) + '-' + case when RANGEEND<>0 then cast(RANGEEND as nvarchar(10)) + ', ' else cast(RANGESTART+RANGECOUNT-1 as nvarchar(10)) end
      from dbo.DISBURSEMENTPROCESSPRINTFINALIZERANGE
      where DISBURSEMENTPROCESSID = @DISBURSEMENTPROCESSID
      order by RANGESTART
    end

  return @NUMBEROFCHECKS
end