Un exemple d'utilisation
Sub Click(Source As Button)
Dim hSession As NotesSession
Dim hWS As NotesUIWorkspace
Dim hUIDOC As NotesUIDocument
Dim hDoc As NotesDocument
' Objet pour travailler sur deux dates
Dim hDRM As DateRangeManagement
' Objet pour utiliser les dates du jour par défaut
Dim hDRMNow As DateRangeManagement
On Error Goto HANDLE_ERROR
Set hSession=New NotesSession
Set hWS=New NotesUIWorkspace
Set hUIDOC=hWS.CurrentDocument
Set hDoc=hUIDOC.Document
'//============================================================================
'// Déclaration de l'objet
'//============================================================================
Set hDRM=New DateRangeManagement(hDoc.DateDebut1(0),hDoc.DateFin1(0))
'//============================================================================
'// On se récupère le nombre de jours entre les deux dates
'// en valeur absolue
'//============================================================================
hDoc.DaysDifference=hDRM.DaysDifference()
hDoc.getDaysDifference=hDRM.getDaysDifference()
'//============================================================================
'// On jongle avec la date du jour par défaut
'// Date de début et de fin sont à la date du jour (@Now)
'//============================================================================
Set hDRMNow=New DateRangeManagement("","")
'//============================================================================
'// Date de début
'// type string
'//============================================================================
hDoc.DayOfYear= hDRM.DayOfYear(hDRM.START_DATE)
hDoc.DayOfMonth=hDRM.DayOfMonth(hDRM.START_DATE)
hDoc.WeekOfDay=hDRM.WeekOfDay(hDRM.START_DATE)
hDoc.JulianDate=hDRM.JulianDate(hDRM.START_DATE)
hDoc.WeekNumber=hDRM.WeekNumber(hDRM.START_DATE)
hDoc.DayWeekNumber=hDRM.DayWeekNumber(hDRM.START_DATE)
hDoc.MonthNumber=hDRM.MonthNumber(hDRM.START_DATE)
hDoc.ShortYear=hDRM.ShortYear(hDRM.START_DATE)
hDoc.LongYear=hDRM.LongYear(hDRM.START_DATE)
'//============================================================================
'// Tester l'égalité des dates, plus grand, plus petit
'//============================================================================
If hDRM.isEqual Then
hDoc.Equal="Oui"
Else
hDoc.Equal="Non"
End If
If hDRM.isGreater Then
hDoc.Greater="Oui"
Else
hDoc.Greater="Non"
End If
If hDRM.isLess Then
hDoc.Less="Oui"
Else
hDoc.Less="Non"
End If
'//=============================================================================
'// Autre manière de tester les dates
'//=============================================================================
'// Récupère
'// hDRM.EQUAL soit "0"
'// hDRM.GREATER soit "1"
'// hDRM.LESS soit "-1"
hDoc.DateCompare=hDRM.CompareDate()
'// On peut aussi s'appuyer sur les constantes renvoyées par la classe
If hDRM.CompareDate()=hDRM.GREATER Then
Msgbox "Date 1 > Date 2"
End If
If hDRM.CompareDate()=hDRM.EQUAL Then
Msgbox "Date 1 = Date 2"
End If
If hDRM.CompareDate()=hDRM.LESS Then
Msgbox "Date 1 < Date 2"
End If
'//============================================================================
'// Tester les années bissextiles
'//============================================================================
If hDRM.Bissextile(hDRM.START_DATE) Then
hDoc.Bissextile="Oui"
Else
hDoc.Bissextile="Non"
End If
If hDRM.Bissextile(hDRM.END_DATE) Then
hDoc.Bissextile_1="Oui"
Else
hDoc.Bissextile_1="Non"
End If
'//==============================================================================
'// Bon.... les british avec leur Tout à l'envers on ne va pas les oublier dans la bagarrrrrre !!!
'// toujours autrement que les autres...

(
'//==============================================================================
hDoc.BritishShortDate=hDRM.BritishShortDate(hDRM.START_DATE)
hDoc.BritishShortDate_1=hDRM.BritishShortDate(hDRM.END_DATE)
hDoc.BritishLongDate=hDRM.BritishLongDate(hDRM.START_DATE)
hDoc.BritishLongDate_1=hDRM.BritishLongDate(hDRM.END_DATE)
'//============================================================================
'// type integer - Long
'//============================================================================
hDoc.DayValue=hDRM.DayValue(hDRM.START_DATE)
hDoc.MonthValue=hDRM.MonthValue(hDRM.START_DATE)
hDoc.YearValue=hDRM.YearValue(hDRM.START_DATE)
hDoc.JulianDateValue=hDRM.JulianDateValue(hDRM.START_DATE)
hDoc.DayOfYearValue=hDRM.DayOfYearValue(hDRM.START_DATE)
hDoc.DateOnly=hDRM.DateOnly(hDRM.START_DATE)
hDoc.TimeOnly=hDRM.TimeOnly(hDRM.START_DATE)
hDoc.TimeOnly=hDRM.TimeOnly(hDRM.START_DATE)
hDoc.LocalTime=hDRM.LocalTime(hDRM.START_DATE)
'//============================================================================
'// Date de fin
'//============================================================================
hDoc.DayOfYear_1= hDRM.DayOfYear(hDRM.END_DATE)
hDoc.DayOfMonth_1=hDRM.DayOfMonth(hDRM.END_DATE)
hDoc.WeekOfDay_1=hDRM.WeekOfDay(hDRM.END_DATE)
hDoc.JulianDate_1=hDRM.JulianDate(hDRM.END_DATE)
hDoc.WeekNumber_1=hDRM.WeekNumber(hDRM.END_DATE)
hDoc.DayWeekNumber_1=hDRM.DayWeekNumber(hDRM.END_DATE)
hDoc.MonthNumber_1=hDRM.MonthNumber(hDRM.END_DATE)
hDoc.ShortYear_1=hDRM.ShortYear(hDRM.END_DATE)
hDoc.LongYear_1=hDRM.LongYear(hDRM.END_DATE)
hDoc.DateOnly_1=hDRM.DateOnly(hDRM.END_DATE)
hDoc.TimeOnly_1=hDRM.TimeOnly(hDRM.END_DATE)
hDoc.LocalTime_1=hDRM.LocalTime(hDRM.END_DATE)
'//============================================================================
'// Type integer - Long
'//============================================================================
hDoc.DayValue_1=hDRM.DayValue(hDRM.END_DATE)
hDoc.MonthValue_1=hDRM.MonthValue(hDRM.END_DATE)
hDoc.YearValue_1=hDRM.YearValue(hDRM.END_DATE)
hDoc.JulianDateValue_1=hDRM.JulianDateValue(hDRM.END_DATE)
hDoc.DayOfYearValue_1=hDRM.DayOfYearValue(hDRM.END_DATE)
'//============================================================================
'// Exemples de formatages
'//============================================================================
hDoc.textRange=hDRM.TextRange(" Du : " , " Au : ","ddd dd mmm yyyy")
hDoc.Text=hDRM.Text(hDRM.START_DATE,"dddd dd mmm yyyy")
hDoc.Text_1=hDRM.Text(hDRM.END_DATE,"ddd dd mmm yyyy")
hDoc.StartDate=hDRM.StartDate.DateOnly & " " & hDRM.StartDate.TimeOnly
hDoc.EndDate=hDRM.EndDate.DateOnly & " " & hDRM.EndDate.TimeOnly
'//============================================================================
'// On fait varier le temps
'//============================================================================
hDoc.Adjust=hDRM.Adjust(hDRM.START_DATE,2,1,5,0,0,0).DateOnly
hDoc.Adjust_1=hDRM.Adjust(hDRM.END_DATE,7,5,4,0,0,0).DateOnly
'//============================================================================
'// On joue NOW valeur par défaut hDRMNow
'//============================================================================
hDoc.NowDate=hDRMNow.Text(hDRMNow.START_DATE,"dddd dd mmm yyyy")
'//============================================================================
'// On va changer les bornes date de début et fin
'//============================================================================
Call hDRM.SetDate(hDRM.START_DATE,"12/09/1962")
Call hDRM.SetDate(hDRM.END_DATE,"03/02/60")
hDoc.Borne1=hDRM.StartDate.DateOnly & " " & hDRM.StartDate.TimeOnly
hDoc.Borne2=hDRM.EndDate.DateOnly & " " & hDRM.EndDate.TimeOnly
FIN:
Exit Sub
HANDLE_ERROR:
Msgbox "erreur n° " & Err & " : " & Error$ & " ligne " & Erl
Resume FIN
End Sub