(1)、将字符串格式的日期转为日期格式
@TextToTime 例:@TextToTime("1987-05-18")
(2)、查询日期
假如被搜索文档中没有日期域。用@Created.
searchStr =searchStr+ { & @Created <= @TextToTime("}+webdoc.ToTime(0)+{")}
(3)、公式中日期的比较
@Date(@Today)>@Date(@Adjust(Created;0;0;1;0;0;0))
(4)、记录文档修改日期
@Modified
(5)、日期转化
2009-2-2 19:43:34转化为2009-02-02
Msgbox Format(“2009-2-2 19:43:34”,"yyyy-mm-dd")
cdat的使用
AdjustMonth的使用
NotesDateTime的使用
(6)、日期比较
1、lastrectime=“2011-3-22 10:43:41”
lastrecarray=Split(lastrectime," ")
datestr=lastrecarray(0)
timestr=lastrecarray(1)
datearray=Split(datestr,"-")
timearray=Split(timestr,":")
'获取新的待办文档数量
searchstr={Form="Memo"& PostedDate>@Time(}+datearray(0)+{;}+datearray(1)+{;}+datearray(2)+{;}+timearray(0)+{;}+timearray(1)+{;}+timearray(2)+{) & (Message_Type="PENDING" | Form_Type="PENDING") & !@IsAvailable($Conflict) & (!@IsAvailable(Message_Status) | Message_Status="0")}
2、
startime=Strleft(Strright(curdoc.Query_String_Decoded(0),"&startime="),"&")
endtime=Strright(curdoc.Query_String_Decoded(0),"&endtime=")
Set startdate=New NotesDateTime(startime)
Set endate=New NotesDateTime(endtime)
Call startdate.AdjustMonth(1)
If startdate.DateOnly>endate.DateOnly Then
(7)、根据创建日期选择文档
SELECT @Created > @TextToTime(“07/23/2001”)
(8)、日期相减
@TextToTime(“2000-09-09”)- @TextToTime(“2000-09-08”) 得到的是以秒为单位的数值
JS: var sdate = new Date(s1);//拼起始时间
var edate = new Date(s2); //拼结束时间
lsdate = sdate.getTime();//获取起始时间的毫秒数
ledate = edate.getTime();//获取结束时间的毫秒数
(9)、JS时间日期
var myDate = new Date();
myDate.getYear(); //获取当前年份(2位)
myDate.getFullYear(); //获取完整的年份(4位,1970-????)
myDate.getMonth(); //获取当前月份(0-11,0代表1月)
myDate.getDate(); //获取当前日(1-31)
myDate.getDay(); //获取当前星期X(0-6,0代表星期天)
myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
myDate.getHours(); //获取当前小时数(0-23)
myDate.getMinutes(); //获取当前分钟数(0-59)
myDate.getSeconds(); //获取当前秒数(0-59)
myDate.getMilliseconds(); //获取当前毫秒数(0-999)
myDate.toLocaleDateString(); //获取当前日期
var mytime=myDate.toLocaleTimeString(); //获取当前时间
myDate.toLocaleString( ); //获取日期与时间
if (mytime<"23:30:00"){
alert(mytime);
}
(10)、JS日期操作
var a = new Date("2012",parseInt("03")-1,"31");
a.setDate(a.getDate() + 1)
alert(a.toLocaleDateString())
(11)、JS格式化日期
Date.prototype.format = function(format)
{
var o =
{
"M+" : this.getMonth()+1, //month
"d+" : this.getDate(), //day
"h+" : this.getHours(), //hour
"m+" : this.getMinutes(), //minute
"s+" : this.getSeconds(), //second
"q+" : Math.floor((this.getMonth()+3)/3), //quarter
"S" : this.getMilliseconds() //millisecond
}
if(/(y+)/.test(format))
format=format.replace(RegExp.$1,(this.getFullYear()+"").substr(4 - RegExp.$1.length));
for(var k in o)
if(new RegExp("("+ k +")").test(format))
format = format.replace(RegExp.$1,RegExp.$1.length==1 ? o[k] : ("00"+ o[k]).substr((""+ o[k]).length));
return format;
}
var endtime = new Date(“2012”, “03”, “23”);
endtime.format("yyyy-MM-dd" )
(12)、JS日期注意事项
var begintime = new Date(begintimearray[0], parseInt(begintimearray[1]) - 1, begintimearray[2]);
var tempdate = begintime;
tempdate.setDate(tempdate.getDate()+1);这样改了后,begintime也会跟着改变。
应该为下面的样子:
begintime = new Date(begintimearray[0], parseInt(begintimearray[1]) - 1, begintimearray[2]);
tempdate = new Date(begintime);
tempdate.setDate(tempdate.getDate()+1);
(13)JS时间比较
function checktime()
{
itime=document.forms[0].I_Time.value;
if(itime=="")
{
AlertMsgBox( "请先选择补写时间!" );
return false;
}
var datarray=itime.split("-");
var datetime=new Date(datarray[0],datarray[1]-1, datarray[2]);
var todaytime=new Date();
var comparetimes1=datetime.getTime();
var comparetimes2=todaytime.getTime();
//alert(datetime.toLocaleDateString()+" "+todaytime.toLocaleDateString())
if(comparetimes1>comparetimes2)
{
AlertMsgBox( "补写时间要小于当前时间!" );
return false;
}
return true;
}
子程序:
function CheckTime(startTime_S,endTime_S)
{
var startTime_Array=startTime_S.split("-");
var endTime_Array=endTime_S.split("-");
var startTime=new Date(startTime_Array[0],startTime_Array[1]-1,startTime_Array[2])
var endTime=new Date(endTime_Array[0],endTime_Array[1]-1,endTime_Array[2])
var startTime_C=startTime.getTime();
var endTime_C=endTime.getTime();
if(startTime_C>endTime_C)
{
alert("开始时间不能大于结束时间!")
return false
}
}
调用:
var startTime_S=document.forms[0].PStartTime.value;
var endTime_S=document.forms[0].PEndTime.value;
if(CheckTime(startTime_S,endTime_S)==false)
{
return false;
}