UFN_MONTHEND

Return

Return Type
datetime

Parameters

Parameter Parameter Type Mode Description
@CurrentDate datetime IN
@NoPeriods int IN

Definition

Copy

create function [BBDW].[UFN_MONTHEND]
               (@CurrentDate datetime,
                @NoPeriods   int  = 0)
returns datetime
as
  begin
    -- Arguments @PeriodRequired = 0 Current Fiscal Year Start, 1 Current Fiscal Year End
    -- Arguments @PeriodRequired = 2 Next Fiscal Year Start, 3 Next Fiscal Year End
    -- Arguments @PeriodRequired = 4 Prev Fiscal Year Start, 5 Prev Fiscal Year End
    declare  @CurrentMonth int
    declare  @CurrentYear varchar(4)
    declare  @PrevMonth int
    declare  @LastMonthEnd datetime
    set @CurrentYear = convert(varchar(4),year(@CurrentDate))
    set @CurrentMonth = month(@CurrentDate)
    set @PrevMonth = @CurrentMonth
                       - 1
    set @LastMonthEnd = dateadd(M,@NoPeriods,convert(datetime,convert(varchar(2),@CurrentMonth)
                                                                + '/01/'
                                                                + @CurrentYear)
                                               - 1)
    return (@LastMonthEnd)
  end;