CFLib.org – Common Function Library Project

GetLastOccOfDayInMonth(TheDayOfWeek, TheMonth, TheYear)

Last updated August 22, 2001

Version: 1 | Requires: ColdFusion 5 | Library: DateLib

 
Rated 0 time(s). Average Rating: 0

Description:
Returns the day of the month(1-31) of Last Occurrence of a day (1-sunday,2-monday etc.) in a given month. Can be used to determine holidays or special events that occur on the last occurrence of a day in a month.

Return Values:
Returns a numeric value.

Example:

view plain print about
<CFOUTPUT>
The last Monday in May of 2001 is on May #GetLastOccOfDayInMonth(2,5,2001)#.
</CFOUTPUT>

Parameters:

Name Description Required
TheDayOfWeek Ordinal value representing the desired day of the week (1-sunday,2-monday etc.) Yes
TheMonth Ordinal value representing the month (1-January, 2-February, etc.) Yes
TheYear The year. Yes

Full UDF Source:

view plain print about
<cfscript>
/**
 * Returns the day of the month(1-31) of Last Occurrence of a day (1-sunday,2-monday etc.)
in a given month.
 * 
 * @param TheDayOfWeek      Ordinal value representing the desired day of the week (1-sunday,2-monday etc.) 
 * @param TheMonth      Ordinal value representing the month (1-January, 2-February, etc.) 
 * @param TheYear      The year. 
 * @return Returns a numeric value. 
 * @author Ken McCafferty (mccjdk@yahoo.com) 
 * @version 1.0, August 22, 2001 
 */

function GetLastOccOfDayInMonth(TheDayOfWeek,TheMonth,TheYear) 
{
  //Find The Number of Days in Month
  Var TheDaysInMonth=DaysInMonth(CreateDate(TheYear,TheMonth,1));
  //find the day of week of Last Day
  Var DayOfWeekOfLastDay=DayOfWeek(CreateDate(TheYear,TheMonth,TheDaysInMonth));
  //subtract DayOfWeek
  Var DaysDifference=DayOfWeekOfLastDay - TheDayOfWeek;
  //Add a week if it is negative
  if(DaysDifference lt 0){
    DaysDifference=DaysDifference + 7;
  }
  return TheDaysInMonth-DaysDifference;
}
</cfscript>
blog comments powered by Disqus

Search CFLib.org


Latest Additions

Troy Pullis Troy Pullis added
firstXDayOfMonth
a while ago

Henry Ho Henry Ho added
arrayMap
a while ago

Henry Ho Henry Ho added
queryGetRow
a while ago

Tony Felice Tony Felice added
getRowFromQuery
a while ago

Top Rated

Darwan Leonardo Sitepu backupDatabase
Rated 5.0, 44 time(s)

Barney Boisvert indentXml
Rated 5.0, 12 time(s)

Rachel Lehman deAccent
Rated 5.0, 9 time(s)

Markus Schneebeli                                 ListRemoveByStri...
Rated 5.0, 4 time(s)

Created by Raymond Camden / Design by Justin Johnson