今天之前我正在做一個代理髮送遲了2天的通知,週日是非工作日。因此,如果今天是星期一,那麼代理人將在上週五發送遲到,如果是星期二,它將發送上週六,如果是星期三,它將發送星期一等。我已經知道如何獲得今天的日期。我如何在今天前兩天獲得?如何在LotusScript中獲得今天的日期前兩天?
Dim tdy, dayToUse
Dim intl As NotesInternational
Set intl = ss.International
tdy=intl.Today
今天之前我正在做一個代理髮送遲了2天的通知,週日是非工作日。因此,如果今天是星期一,那麼代理人將在上週五發送遲到,如果是星期二,它將發送上週六,如果是星期三,它將發送星期一等。我已經知道如何獲得今天的日期。我如何在今天前兩天獲得?如何在LotusScript中獲得今天的日期前兩天?
Dim tdy, dayToUse
Dim intl As NotesInternational
Set intl = ss.International
tdy=intl.Today
你可以做以下簡單的操作來獲得一個特定的日期:
dayToUse = DateNumber(Year(Now), Month(Now), Day(Now) - 2)
您還可以使用與NotesDateTime對象:
Dim dateTime As New NotesDateTime("Today")
Call dateTime.AdjustDay(-2)
希望這可以幫助你。
大廈@Per亨裏克Lausten的迴應:
爲了排除週日,您可以用平日的功能。它是LotusScript語言的內置函數,而不是NotesDateTime類的一種方法。它將LotusScript日期作爲輸入,而不是NotesDateTime。所以你可能想這樣做:
Dim dateTime As New NotesDateTime("Today")
Dim day as variant
dim adjustment as integer
day = CDat(dateTime.dateOnly)
if Weekday(day) = 2 or Weekday(day) = 3 then ' Monday or Tuesday
adjustment = -3
else
adjustment = -2 ' any other day
end if
Call dateTime.AdjustDay(adjustment)
上面的代碼沒有特殊的情況下今天=星期日。我不清楚你是否可以忽略這種情況或做一些特別的事情。